/* styles/fonts.css */
@font-face{
font-family:'Yuji Boku Fire';
src:url('../assets/fonts/yuji-boku-fire.woff2?v=e9813114054b') format('woff2');
font-style:normal;
font-weight:400;
font-display:swap;
unicode-range:U+706B}

/* styles/base.css */
:root{
--ink:#111713;
--deep:#0b100e;
--paper:#eeece4;
--cream:#f2f0e8;
--muted:#a5ada4;
--accent:#cb7349;
--line:#ffffff26;
--frame:28px;
--heading:'Noto Sans','Noto Sans KR','Noto Sans JP','Noto Sans SC',sans-serif;
--body:var(--heading)}
*{
box-sizing:border-box}
html{
font-size:16px;
scroll-behavior:smooth;
scroll-padding-top:24px}
body{
margin:0;
background:var(--deep);
color:var(--cream);
font:1rem/1.7 var(--body);
-webkit-font-smoothing:antialiased}
body.dialog-open,body.nav-open{
overflow:hidden}
button,a{
-webkit-tap-highlight-color:transparent}
button{
font:inherit;
color:inherit;
cursor:pointer;
border:0}
a{
color:inherit;
text-decoration:none}
img{
display:block;
max-width:100%}
button:focus-visible,a:focus-visible{
outline:2px solid #eeaa79;
outline-offset:5px}
h1,h2,h3,p{
margin:0}
em{
font-style:normal}
::selection{
background:#a5502b;
color:#fff}
.skip-link{
position:fixed;
z-index:100;
top:-80px;
left:20px;
background:var(--paper);
color:var(--ink);
padding:15px}
.skip-link:focus{
top:10px}
.micro-label,.section-top>span{
font:500 0.625rem/1.5 var(--heading);
letter-spacing:0.1rem}

/* components/header.css */
.site-header{
position:absolute;
z-index:30;
top:calc(var(--frame) + 24px);
left:calc(var(--frame) + 36px);
right:calc(var(--frame) + 36px);
height:35px;
display:flex;
align-items:center;
justify-content:space-between;
gap:24px}
.wordmark{
font-size:1.1875rem;
font-weight:800;
letter-spacing:-0.0625rem;
line-height:1.15;
white-space:nowrap}
.wordmark>span{
display:block;
font:500 0.4375rem/1.2 var(--heading);
letter-spacing:0.1125rem;
margin-top:7px}
.desktop-nav{
display:flex;
gap:33px;
font:500 0.6875rem var(--heading)}
.desktop-nav a,.header-link{
transition:opacity .2s}
.desktop-nav a:hover,.header-link:hover{
opacity:.6}
.header-link{
font:500 0.625rem var(--heading);
border-bottom:1px solid #ffffff70;
padding:7px 0}
.header-link span{
margin-left:16px;
font-size:1.0625rem}
.nav-toggle,.mobile-nav{
display:none}

/* modules/hero-video/hero-base.css */
.cinema-shell{
position:relative;
padding:var(--frame);
isolation:isolate;
overflow:hidden}
.cinema-shell:before{
content:'';
position:absolute;
inset:-15px;
z-index:-1;
background:linear-gradient(#0b100e55,#0b100e44),url('../assets/images/hero/kitchen-atmosphere.jpg?v=e9813114054b') center/cover;
filter:blur(5px)}
.hero{
position:relative;
isolation:isolate;
min-height:790px;
height:calc(100svh - var(--frame)*2);
max-height:1100px;
background:#0b100e;
overflow:hidden}
.kitchen-backdrop{
position:absolute;
inset:0;
background:linear-gradient(90deg,#07100ce0 0%,#0a100e30 36%,#09100b30 67%,#070c09dd 100%),url('../assets/images/hero/kitchen-atmosphere.jpg?v=e9813114054b') center/cover;
opacity:.9}
.chef-stage{
position:absolute;
inset:0;
pointer-events:none}
.chef-stage canvas{
position:absolute;
inset:0;
width:100%;
height:100%}
.chef-stage [data-chef-fire]{
z-index:0}
.chef-poster{
position:absolute;
z-index:1;
width:min(80%,155vh);
height:auto;
max-width:none;
bottom:2%;
left:50%;
transform:translateX(-50%)}
.chef-stage [data-chef-figure]{
z-index:2}
.chef-stage [data-chef-front]{
z-index:3}
.chef-stage.is-ready .chef-poster{
visibility:hidden}
.cinema-shade{
position:absolute;
z-index:4;
inset:0;
background:linear-gradient(180deg,#070b0990 0%,transparent 27%,transparent 74%,#070c09e8 100%),linear-gradient(90deg,#060c0955,transparent 30%,transparent 75%,#060c0944);
pointer-events:none}
.hero h1{
position:absolute;
z-index:7;
top:96px;
left:32px;
right:32px;
display:flex;
justify-content:space-between;
gap:12px;
font:300 clamp(4.0625rem,8.8vw,10rem)/.98 var(--heading);
letter-spacing:-.075em;
white-space:nowrap;
pointer-events:none}
.hero h1>span{
font-weight:300}
.hero h1>strong{
font-weight:700;
letter-spacing:-.08em}
.hero-editorial{
position:absolute;
z-index:6;
top:29%;
right:3%;
max-width:218px}
.hero-editorial>.micro-label{
font-size:0.5rem;
letter-spacing:0.06875rem;
color:#b6bdb5}
.hero-editorial h2{
font-size:1.1875rem;
font-weight:400;
line-height:1.5;
letter-spacing:-0.04375rem;
margin:17px 0 13px}
.hero-editorial>p:last-child{
font-size:0.625rem;
line-height:1.9;
color:#c5cbc3}
.chef-identity{
position:absolute;
z-index:6;
top:32%;
left:3%;
display:flex;
align-items:center;
gap:8px;
font:400 0.5625rem var(--body);
color:#d7ddd5}
.chef-identity i{
font-style:normal;
opacity:.4;
margin:0 7px}
.status-dot{
width:4px;
height:4px;
background:#e2b783;
border-radius:50%;
box-shadow:0 0 9px #deab6f}
.hero-bottom{
position:absolute;
z-index:6;
left:3%;
right:3%;
bottom:85px;
display:flex;
align-items:flex-end;
justify-content:space-between;
gap:20px}
.hero-note>.micro-label{
font-size:0.5rem;
letter-spacing:0.0625rem;
color:#aab4aa}
.hero-note>p{
font-size:0.75rem;
line-height:1.9;
margin-top:11px}
.button{
min-height:48px;
display:inline-flex;
align-items:center;
justify-content:space-between;
gap:45px;
padding:0 20px;
font-size:0.6875rem;
transition:background .2s,color .2s}
.button span{
font:1.4375rem/1 var(--heading)}
.button-outline{
border:1px solid #ffffffa0;
background:#07100d38}
.button-outline:hover{
background:var(--cream);
color:var(--ink)}
.button-red{
background:var(--ink);
color:var(--cream)}
.hero-footer{
position:absolute;
z-index:7;
left:3%;
right:3%;
bottom:23px;
display:flex;
justify-content:space-between;
align-items:center;
color:#c3cac2}
.scroll-cue{
font:500 0.5rem var(--heading);
letter-spacing:0.09375rem;
display:flex;
gap:16px;
align-items:center}
.scroll-cue>span{
font-size:1.0625rem}
.hero-location{
font:0.75rem var(--heading);
letter-spacing:0.375rem;
color:#8b958a}
.motion-toggle{
background:transparent;
display:flex;
align-items:center;
gap:8px;
font-size:0.5625rem;
color:#c3cac2;
padding:10px 0}
.motion-symbol{
font:0.9375rem var(--heading);
width:12px}
.motion-toggle:disabled{
cursor:default;
opacity:.7}

/* pages/home/intro.css */
.section-pad{
padding:84px 6%}
.kitchen-intro{
display:grid;
grid-template-columns:.7fr 1.6fr 1fr;
gap:36px;
align-items:start;
border-bottom:1px solid var(--line);
padding-top:81px;
padding-bottom:84px;
background:var(--ink)}
.kitchen-intro>.micro-label{
color:#b2bcb0;
margin-top:8px}
.intro-headline{
font-size:clamp(1.625rem,3vw,2.875rem);
line-height:1.4;
letter-spacing:-0.14375rem;
font-weight:400}
.intro-headline>span{
color:#a7b2a6}
.kitchen-intro>div>p{
font-size:0.6875rem;
color:#b5bfb3;
line-height:2}
.text-link{
display:inline-flex;
align-items:center;
justify-content:space-between;
gap:45px;
font-size:0.6875rem;
min-height:44px;
border-bottom:1px solid currentColor;
margin-top:22px}
.text-link>span{
font:1.25rem var(--heading)}

/* modules/menu/menu.css */
.menu-section{
background:var(--paper);
color:var(--ink)}
.section-top{
display:flex;
align-items:center;
justify-content:space-between;
border-top:1px solid #23312742;
padding-top:18px}
.section-top>span{
font-size:0.5rem;
letter-spacing:0.0625rem}
.menu-heading{
display:flex;
align-items:flex-end;
justify-content:space-between;
margin:41px 0 38px;
gap:30px}
.menu-heading h2{
font:300 clamp(2.1875rem,5.8vw,5.625rem)/1 var(--heading);
letter-spacing:-.065em}
.menu-heading h2 em{
font-weight:700}
.menu-heading>p{
font-size:0.9375rem;
letter-spacing:-0.03125rem;
line-height:1.6}
.menu-heading>p span{
font-size:0.625rem;
color:#596457;
letter-spacing:0}
.menu-controls{
display:flex;
align-items:center;
justify-content:space-between;
margin-bottom:24px;
gap:20px}
.menu-filters{
display:flex;
gap:22px}
.filter{
padding:10px 0;
background:transparent;
font-size:0.6875rem;
border-bottom:1px solid transparent;
color:#687062}
.filter.active{
color:var(--ink);
border-color:var(--ink)}
.filter span{
margin-left:7px;
font:0.5625rem var(--heading)}
.menu-hint{
font-size:0.5625rem;
color:#687062}
.menu-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:42px 24px}
.menu-card{
padding:0;
text-align:left;
background:transparent;
min-width:0}
.menu-photo{
position:relative;
aspect-ratio:1.55;
overflow:hidden;
background:#151b15;
isolation:isolate}
.menu-photo>img{
width:100%;
height:100%;
object-fit:cover;
transition:transform .7s cubic-bezier(.2,.6,.2,1)}
.menu-photo.crop-kkanpung>img,.menu-photo.crop-mala>img{
width:auto;
height:200%;
aspect-ratio:3/2;
object-fit:fill;
position:absolute;
left:50%;
max-width:none}
.menu-photo.crop-kkanpung>img{
top:0;
translate:-75% 0}
.menu-photo.crop-mala>img{
top:-100%;
translate:-25% 0}
.menu-card:hover .menu-photo>img{
transform:scale(1.04)}
.menu-tag{
position:absolute;
top:19px;
left:20px;
font:500 0.5rem var(--heading);
letter-spacing:0.0875rem;
color:#fff;
background:#07100c77;
padding:5px 7px}
.menu-number{
position:absolute;
bottom:17px;
left:20px;
color:#fff;
font:300 1.625rem var(--heading)}
.menu-plus{
position:absolute;
bottom:18px;
right:20px;
font:1.625rem var(--heading);
color:#fff}
.menu-card-copy{
padding:20px 0 0;
position:relative}
.menu-en{
font:500 0.5rem var(--heading);
letter-spacing:0.0875rem;
color:#65715e}
.menu-card h3{
font-size:1.4375rem;
font-weight:500;
letter-spacing:-0.06875rem;
margin-top:8px}
.menu-card p{
font-size:0.6875rem;
color:#65715e;
margin-top:5px}
.menu-foot{
border-top:1px solid #23312742;
display:flex;
justify-content:space-between;
gap:20px;
margin-top:38px;
padding-top:17px;
color:#687062;
font-size:0.5625rem}

/* pages/home/craft.css */
.wok-section{
display:grid;
grid-template-columns:1.25fr 1fr;
background:#0e1510}
.wok-visual{
min-height:680px;
position:relative;
overflow:hidden}
.wok-visual>img{
width:100%;
height:100%;
object-fit:cover;
object-position:76% center}
.wok-vignette{
position:absolute;
inset:0;
background:linear-gradient(0deg,#030a06b3,transparent 50%)}
.wok-caption{
position:absolute;
left:8%;
right:8%;
bottom:39px;
display:flex;
align-items:center;
justify-content:space-between;
font:400 0.625rem var(--heading);
letter-spacing:0.125rem}
.wok-caption>span{
font:2.625rem var(--heading);
letter-spacing:0.5rem}
.wok-copy{
padding:72px 14% 50px 12%}
.wok-copy>.micro-label{
color:#a1b09f}
.wok-copy h2{
font-size:clamp(1.9375rem,3.3vw,3.25rem);
font-weight:400;
line-height:1.4;
letter-spacing:-0.1625rem;
margin:35px 0 27px}
.wok-copy h2 em{
color:#b3bcae}
.body-copy{
color:#acb7a9;
font-size:0.75rem;
line-height:2.1}
.craft-steps{
list-style:none;
margin:33px 0 0;
padding:0}
.craft-steps>li{
border-top:1px solid var(--line);
display:flex;
gap:24px;
padding:18px 0}
.craft-steps>li>span{
font:0.625rem var(--heading);
color:#8b9b87;
margin-top:4px}
.craft-steps strong{
font:500 1.0625rem var(--heading);
letter-spacing:0.0625rem}
.craft-steps p{
font-size:0.625rem;
color:#9eac99;
margin-top:5px}

/* pages/home/story.css */
.story-section{
background:#172018;
padding-top:78px;
padding-bottom:90px}
.story-section .section-top{
border-color:#ffffff30;
color:#bac5b6}
.story-layout{
display:grid;
grid-template-columns:1fr 1.65fr;
gap:60px;
margin-top:65px}
.story-character{
font:14.375rem/.9 'Yuji Boku Fire',serif;
font-synthesis:none;
color:#c1c8b5;
opacity:.75;
text-align:center}
.story-layout h2{
font-weight:400;
font-size:clamp(1.875rem,4vw,3.6875rem);
line-height:1.42;
letter-spacing:-0.175rem}
.story-layout h2 span{
color:#b3bfaa}
.story-layout p{
font-size:0.75rem;
color:#b0bda7;
line-height:2;
margin-top:30px}
.story-layout .text-link{
color:#cbd4c3;
margin-top:28px}

/* pages/home/visit.css */
.visit-section{
background:#d6dacb;
color:#1b271b;
padding:65px 6% 30px}
.visit-line{
display:flex;
align-items:center;
justify-content:space-between;
gap:30px;
margin:27px 0 48px}
.visit-line h2{
font-weight:300;
font-size:clamp(2.5rem,6.8vw,6.5rem);
letter-spacing:-0.3125rem;
line-height:1.25}
.visit-line h2 em{
font-weight:600}
.mobile-break{
display:none}
.visit-circle{
width:98px;
height:98px;
min-width:98px;
border:1px solid #223322;
border-radius:50%;
display:grid;
place-items:center;
font:3.0625rem var(--heading);
transition:background .2s,color .2s}
.visit-circle:hover{
background:#223322;
color:#e9ebdf}
.visit-bottom{
display:flex;
justify-content:space-between;
gap:20px;
align-items:center;
border-top:1px solid #273b273d;
padding-top:20px}
.visit-bottom>span{
font:600 0.625rem var(--heading);
letter-spacing:0.0875rem}
.visit-bottom>p{
font-size:0.625rem}

/* components/footer.css */
.site-footer{
padding:42px 6% 24px;
background:var(--deep)}
.footer-top{
display:flex;
align-items:center;
justify-content:space-between;
gap:24px;
padding-bottom:35px}
.footer-top>div{
display:flex;
gap:28px;
font-size:0.625rem;
color:#bcc6b8}
.footer-bottom{
border-top:1px solid var(--line);
padding-top:21px;
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
color:#8c9a87;
font-size:0.5rem}
.footer-bottom>span,.footer-bottom>a{
font:500 0.5rem var(--heading);
letter-spacing:0.0625rem}
.footer-bottom>p{
font-size:0.5rem}

/* components/dialog.css */
.reveal{
opacity:1}
dialog{
padding:0;
border:0;
background:var(--paper);
color:var(--ink);
width:calc(100% - 40px);
max-width:880px;
max-height:90svh;
overflow:auto}
dialog::backdrop{
background:#030906cc;
backdrop-filter:blur(5px)}
.dialog-close{
position:absolute;
z-index:2;
top:14px;
right:14px;
background:var(--paper);
color:var(--ink);
border:1px solid #778575;
width:40px;
height:40px;
font-size:1.625rem}
.dialog-photo{
aspect-ratio:auto;
min-height:470px}
#dialog-content{
display:grid;
grid-template-columns:1fr 1fr}
.dialog-copy{
padding:55px 36px 38px}
.eyebrow{
font:500 0.625rem var(--heading);
letter-spacing:0.09375rem}
.dialog-copy h2{
font-size:1.625rem;
line-height:1.4;
letter-spacing:-0.09375rem;
margin:15px 0 6px;
font-weight:500}
.dialog-copy>p:not(.eyebrow){
font-size:0.8125rem;
line-height:1.9;
color:#56614f;
margin:25px 0 20px}
.taste-tags{
display:flex;
flex-wrap:wrap;
gap:8px;
margin-bottom:27px}
.taste-tags>span{
border:1px solid #87927d;
padding:5px 9px;
font-size:0.625rem}
.dialog-copy .button{
width:100%;
gap:15px}
.dialog-copy small{
display:block;
font-size:0.5625rem;
line-height:1.7;
margin-top:18px;
color:#6a7563}
.motion-paused{
scroll-behavior:auto}
.motion-paused *{
animation-play-state:paused!important}

/* styles/responsive-base.css */
@media(min-width:1700px){
.hero h1{
font-size:9vw}
.hero-editorial{
right:5%;
max-width:245px}
.hero-editorial h2{
font-size:1.5rem}
}
@media(max-width:1100px){
:root{
--frame:20px}
.site-header{
left:50px;
right:50px}
.desktop-nav{
gap:20px}
.hero{
min-height:740px}
.hero h1{
left:25px;
right:25px;
top:101px;
font-size:8.6vw}
.hero-editorial{
max-width:170px;
top:28%}
.hero-editorial h2{
font-size:1rem}
.hero-editorial>p:last-child{
font-size:0.5625rem}
.hero-editorial>.micro-label{
font-size:0.4375rem}
.hero-note>p{
font-size:0.6875rem}
.kitchen-intro{
grid-template-columns:.6fr 1.4fr 1fr;
gap:22px}
.intro-headline{
letter-spacing:-0.1rem}
.menu-heading h2{
font-size:6vw}
.wok-copy{
padding:55px 9% 40px}
.wok-visual{
min-height:650px}
.story-character{
font-size:11.5625rem}
}
@media(max-width:760px){
:root{
--frame:12px}
.site-header{
top:32px;
left:30px;
right:26px;
height:36px}
.wordmark{
font-size:1.125rem}
.wordmark>span{
font-size:0.375rem;
letter-spacing:0.09375rem;
margin-top:6px}
.desktop-nav,.header-link{
display:none}
.nav-toggle{
display:flex;
flex-direction:column;
justify-content:center;
gap:6px;
width:44px;
height:44px;
background:transparent;
padding:11px}
.nav-toggle>span{
height:1px;
width:22px;
background:#e5eade;
transition:transform .2s}
.nav-toggle[aria-expanded=true]>span:first-child{
transform:translateY(3.5px) rotate(45deg)}
.nav-toggle[aria-expanded=true]>span:last-child{
transform:translateY(-3.5px) rotate(-45deg)}
.mobile-nav:not([hidden]){
position:absolute;
left:-18px;
right:-14px;
top:53px;
background:#101912f5;
display:flex;
flex-direction:column;
padding:15px 24px 25px;
box-shadow:0 25px 35px #0008;
border-top:1px solid var(--line)}
.mobile-nav a{
display:flex;
align-items:center;
justify-content:space-between;
font-size:1.1875rem;
font-weight:400;
padding:17px 0;
border-bottom:1px solid var(--line)}
.mobile-nav a span{
font:0.625rem var(--heading);
color:#84967c}
.hero{
height:820px;
min-height:0;
max-height:none}
.kitchen-backdrop{
background-position:center;
opacity:.7}
.hero h1{
top:82px;
left:17px;
right:17px;
display:block;
white-space:normal;
font-size:clamp(2.5rem,11.4vw,5.3125rem);
letter-spacing:-.06em;
line-height:.98}
.hero h1>span,.hero h1>strong{
display:block}
.hero h1>strong{
font-size:1.22em;
letter-spacing:-.065em;
margin-top:2px}
.hero-editorial{
top:204px;
left:21px;
right:auto;
max-width:220px}
.hero-editorial>.micro-label{
font-size:0.4375rem;
letter-spacing:0.0625rem}
.hero-editorial h2{
font-size:0.875rem;
font-weight:400;
line-height:1.5;
margin-top:9px}
.hero-editorial h2 br{
display:none}
.hero-editorial>p:last-child{
display:none}
.chef-identity{
left:auto;
right:20px;
top:298px;
font-size:0.4375rem;
display:flex;
flex-direction:column;
align-items:flex-end;
gap:7px;
max-width:94px;
text-align:right;
line-height:1.7}
.chef-identity i{
margin:0 2px}
.chef-poster{
width:153%;
bottom:13%;
}
.cinema-shade{
background:linear-gradient(180deg,#07100a50 0%,transparent 35%,transparent 70%,#070d09 93%),linear-gradient(90deg,#07100a20,transparent 33%,transparent 75%,#07100a20)}
.hero-bottom{
left:21px;
right:21px;
bottom:63px;
display:block}
.hero-note>.micro-label{
font-size:0.4375rem;
letter-spacing:0.05625rem}
.hero-note>p{
font-size:0.6875rem;
line-height:1.7;
margin-top:7px}
.hero-note>p br{
display:none}
.hero-bottom>.button{
width:100%;
margin-top:17px;
min-height:48px;
font-size:0.6875rem;
background:#07100d66}
.hero-footer{
left:21px;
right:21px;
bottom:12px}
.hero-location{
display:none}
.scroll-cue{
font-size:0.4375rem;
letter-spacing:0.06875rem;
gap:12px}
.motion-toggle{
font-size:0.5rem}
.kitchen-intro{
display:block;
padding:45px 7% 46px}
.kitchen-intro>.micro-label{
font-size:0.5625rem;
margin-top:0}
.intro-headline{
margin:22px 0;
font-size:1.9375rem;
letter-spacing:-0.10625rem}
.kitchen-intro>div>p{
font-size:0.6875rem;
line-height:1.9}
.text-link{
margin-top:18px;
font-size:0.6875rem}
.section-pad{
padding-left:7%;
padding-right:7%}
.menu-section{
padding-top:44px;
padding-bottom:40px}
.section-top{
padding-top:15px}
.section-top>span{
font-size:0.375rem;
letter-spacing:0.0375rem}
.micro-label{
font-size:0.5rem;
letter-spacing:0.0625rem}
.menu-heading{
display:block;
margin:31px 0 24px}
.menu-heading h2{
font-size:9.6vw;
letter-spacing:-.06em}
.menu-heading>p{
font-size:0.9375rem;
margin-top:22px}
.menu-heading>p span{
font-size:0.625rem}
.menu-controls{
margin-bottom:22px}
.menu-filters{
gap:20px}
.filter{
font-size:0.625rem}
.menu-hint{
display:none}
.menu-grid{
grid-template-columns:none;
grid-auto-flow:column;
grid-auto-columns:89%;
gap:17px;
overflow-x:auto;
scroll-snap-type:x mandatory;
scrollbar-width:none;
margin-right:-8.15%;
padding-right:8.15%;
padding-bottom:10px}
.menu-grid::-webkit-scrollbar{
display:none}
.menu-card{
scroll-snap-align:start}
.menu-photo{
aspect-ratio:1.12}
.menu-tag{
left:15px;
top:15px;
font-size:0.4375rem}
.menu-number{
left:16px;
bottom:15px;
font-size:1.5rem}
.menu-plus{
right:15px;
bottom:15px}
.menu-card h3{
font-size:1.3125rem}
.menu-card p{
font-size:0.625rem}
.menu-en{
font-size:0.4375rem;
letter-spacing:0.0625rem}
.menu-foot{
margin-top:23px;
font-size:0.5rem;
line-height:1.8}
.menu-foot>span{
display:none}
.wok-section{
display:flex;
flex-direction:column}
.wok-visual{
height:420px;
min-height:0}
.wok-visual>img{
object-position:76% center}
.wok-caption{
left:7%;
right:7%;
bottom:29px;
font-size:0.5rem}
.wok-caption>span{
font-size:2.0625rem}
.wok-copy{
padding:42px 8% 36px}
.wok-copy h2{
font-size:2.375rem;
letter-spacing:-0.125rem;
margin:25px 0 22px}
.body-copy{
font-size:0.6875rem}
.craft-steps{
margin-top:27px}
.craft-steps>li{
padding:17px 0}
.craft-steps strong{
font-size:1rem}
.story-section{
padding-top:44px;
padding-bottom:49px}
.story-layout{
display:block;
margin-top:32px}
.story-character{
display:none}
.story-layout h2{
font-size:1.9375rem;
letter-spacing:-0.1125rem}
.story-layout p{
font-size:0.6875rem;
margin-top:24px}
.story-layout .text-link{
margin-top:20px}
.visit-section{
padding:43px 7% 25px}
.visit-line{
margin:25px 0 30px;
align-items:flex-end;
gap:10px}
.visit-line h2{
font-size:2.5625rem;
letter-spacing:-0.15625rem;
line-height:1.3}
.mobile-break{
display:block}
.visit-circle{
width:62px;
height:62px;
min-width:62px;
font-size:2rem;
margin-bottom:7px}
.visit-bottom{
display:block;
padding-top:17px}
.visit-bottom>span{
font-size:0.5rem}
.visit-bottom>p{
font-size:0.5625rem;
line-height:1.8;
margin-top:10px}
.site-footer{
padding:32px 7% 22px}
.footer-top{
flex-direction:column;
align-items:flex-start;
gap:25px;
padding-bottom:25px}
.footer-top>div{
font-size:0.5625rem;
gap:22px}
.footer-bottom{
flex-wrap:wrap;
gap:16px}
.footer-bottom>p{
order:3;
flex-basis:100%;
font-size:0.4375rem;
line-height:1.9}
.footer-bottom>a{
margin-left:auto}
dialog{
width:calc(100% - 28px);
max-height:88svh}
#dialog-content{
display:block}
.dialog-photo{
min-height:0;
height:270px;
aspect-ratio:1.2}
.dialog-copy{
padding:27px}
.dialog-copy h2{
font-size:1.5625rem}
.dialog-copy>p:not(.eyebrow){
font-size:0.75rem}
.dialog-close{
position:fixed;
right:calc(14px + 14px);
top:auto;
margin-top:14px}
.dialog-copy .button{
min-height:48px}
}
@media(max-width:370px){
.hero{
height:790px}
.hero-editorial{
top:192px;
left:18px}
.hero h1{
font-size:11.1vw}
.chef-identity{
top:280px}
.hero-bottom{
left:18px;
right:18px}
.hero-note>p{
font-size:0.625rem}
.visit-line h2{
font-size:2.3125rem}
}
@media(prefers-reduced-motion:reduce){
html{
scroll-behavior:auto}
*,*:before,*:after{
animation:none!important;
transition:none!important}
}

/* modules/hero-video/hero-layout.css */
/* Edge-to-edge kitchen scene; centered chef and independent brush lettering. */
:root{
--frame:0px;
--hero-title-offset:4.375rem;
--title-pair-height:195px}
.cinema-shell{
padding:0}
.cinema-shell:before{
content:none;
display:none}
.hero{
width:100%;
height:100svh;
min-height:780px;
max-height:1100px;
background:#0b100e}
.hero-picture{
position:absolute;
inset:0;
display:block}
.hero-photo{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:cover;
object-position:50% 50%}
.site-header{
top:30px;
left:4%;
right:4%;
height:44px}
.cinema-shade{
background:linear-gradient(180deg,#07100a60 0%,transparent 34%,transparent 69%,#080d09bd 100%),linear-gradient(90deg,#07100a30,transparent 28%,transparent 72%,#07100a30)}
.hero-editorial{
top:36%;
right:4%;
max-width:224px}
.hero-editorial h2{
font-weight:600}
.hero-editorial>p:last-child{
font-size:0.625rem;
text-shadow:0 0.0625rem 0.25rem #000}
.chef-identity{
top:37%;
left:4%}
.hero-bottom,.hero-footer{
left:4%;
right:4%}
.hero-bottom{
bottom:87px}
.hero-footer{
bottom:28px}
.hero-signature{
font:500 0.5rem var(--heading);
letter-spacing:0.06875rem;
color:#c7c7bb}
.visually-hidden{
position:absolute!important;
width:1px!important;
height:1px!important;
padding:0!important;
margin:-1px!important;
overflow:hidden!important;
clip:rect(0,0,0,0)!important;
white-space:nowrap!important;
border:0!important}
.title-options{
display:flex;
align-items:center;
gap:1px;
margin-left:auto;
color:#fff8;
font:500 0.625rem var(--heading)}
.title-options button{
min-width:40px;
min-height:44px;
padding:7px;
background:transparent;
color:#fff7;
font:600 0.6875rem var(--heading)}
.title-options button[aria-pressed=true]{
color:var(--cream);
text-decoration:underline;
text-underline-offset:0.4375rem;
text-decoration-thickness:0.0625rem}
.title-options>span{
opacity:.5}
.hero h1.brush-title{
display:block;
top:calc(85px + var(--hero-title-offset));
left:5%;
right:5%;
height:var(--title-pair-height);
pointer-events:none}
.brush-title>img{
display:block;
width:100%;
height:100%;
object-fit:contain;
filter:drop-shadow(0 3px 10px #0004)}
.brush-title>.title-pair{
display:none}
.brush-title[data-language=en]>img{
display:none}
.brush-title[data-language=en]>.title-pair{
display:flex;
width:100%;
height:100%;
justify-content:center;
column-gap:max(0px,calc((100% - var(--title-pair-height)*5.510309278)*.75));
filter:drop-shadow(0 3px 10px #0004)}
.title-word{
display:block;
height:100%;
background-image:url('../assets/images/brand/title-english.png?v=e9813114054b');
background-repeat:no-repeat}
.title-word-first{
aspect-ratio:1169/388;
background-size:185.80% auto;
background-position:2.09% 52.68%}
.title-word-second{
aspect-ratio:969/388;
background-size:224.15% auto;
background-position:98.92% 52.68%}
.hero h1.brush-title[data-language=zh]{
left:8%;
right:8%;
height:195px;
top:55px}
@media(max-width:1100px){
:root{--title-pair-height:135px;}
.site-header{
gap:18px}
.desktop-nav{
gap:19px}
.hero h1.brush-title{
top:calc(96px + var(--hero-title-offset));
height:135px}
.hero h1.brush-title[data-language=zh]{
height:200px;
top:97px;
left:7%;
right:7%}
.hero-editorial{
max-width:175px}
.hero-editorial h2{
font-size:1rem}
.hero-editorial>p:last-child{
font-size:0.5625rem}
}
/* Keep the complete mobile hero inside the browser's visible small viewport. */
@media(max-width:760px){
:root{
--hero-gutter:clamp(16px,6vw,24px);
--hero-safe-top:env(safe-area-inset-top,0px);
--hero-safe-bottom:env(safe-area-inset-bottom,0px);
--hero-title-top:calc(clamp(68px,10svh,85px) + var(--hero-safe-top) + var(--hero-title-offset));
--hero-title-width:min(calc(74vw - var(--hero-gutter)*1.48),clamp(160px,29svh,250px));
--hero-title-gap:calc(clamp(6px,1svh,10px)*.75);
/* The two existing English word images retain their original aspect ratios. */
--hero-title-height:calc(var(--hero-title-width)*.732321 + var(--hero-title-gap));
--hero-copy-top:calc(var(--hero-title-top) + var(--hero-title-height) + 12px);
}
.hero{
height:100svh;
min-height:0;
max-height:none}
.site-header{
top:calc(clamp(12px,2.6svh,22px) + var(--hero-safe-top));
left:max(var(--hero-gutter),env(safe-area-inset-left,0px));
right:max(var(--hero-gutter),env(safe-area-inset-right,0px));
gap:clamp(4px,1.6vw,10px)}
.site-header .wordmark{
flex:1;
min-width:0;
white-space:normal;
font-size:clamp(0.875rem,4.5vw,1.125rem)}
.site-header .wordmark>span{
white-space:nowrap;
margin-top:4px}
html:not([lang=ko]) .site-header .wordmark{
font-size:clamp(0.75rem,3.5vw,0.9375rem);
letter-spacing:-0.03125rem;
line-height:1.1}
.title-options{
margin-left:auto;
flex-shrink:0}
.title-options button{
min-width:36px}
.nav-toggle{
flex-shrink:0}
.hero h1.brush-title[data-language=en]{
top:var(--hero-title-top);
left:var(--hero-gutter);
right:var(--hero-gutter);
height:auto;
width:auto}
.brush-title[data-language=en]>.title-pair{
flex-direction:column;
align-items:center;
height:auto;
gap:var(--hero-title-gap)}
.title-word{
height:auto;
width:var(--hero-title-width)}
.hero h1.brush-title[data-language=zh]{
top:var(--hero-title-top);
left:var(--hero-gutter);
right:var(--hero-gutter);
height:min(154px,23svh)}
.hero-editorial{
top:var(--hero-copy-top);
left:var(--hero-gutter);
right:var(--hero-gutter);
max-width:none}
.hero-editorial>.micro-label,.hero-editorial>p:last-child{
display:none}
.hero-editorial h2{
font-size:0.8125rem;
font-weight:500;
margin:0;
text-shadow:0 0.0625rem 0.4375rem #000}
.chef-identity{
top:calc(var(--hero-copy-top) + clamp(30px,4.7svh,38px));
left:var(--hero-gutter);
right:var(--hero-gutter);
flex-direction:row;
align-items:center;
max-width:none;
text-align:left;
font-size:0.375rem}
.cinema-shade{
background:linear-gradient(180deg,#07100a55 0%,transparent 35%,transparent 67%,#07100a80 86%,#07100acc 100%)}
.hero-bottom{
left:max(var(--hero-gutter),env(safe-area-inset-left,0px));
right:max(var(--hero-gutter),env(safe-area-inset-right,0px));
bottom:calc(58px + var(--hero-safe-bottom))}
.hero-note{
padding-right:58px}
.hero-note>p{
font-size:0.625rem;
text-shadow:0 0.0625rem 0.25rem #000}
.hero-bottom>.button{
min-height:44px;
margin-top:12px}
.hero-footer{
left:max(var(--hero-gutter),env(safe-area-inset-left,0px));
right:max(var(--hero-gutter),env(safe-area-inset-right,0px));
bottom:calc(8px + var(--hero-safe-bottom));
min-height:44px}
.scroll-cue{
min-height:44px}
.hero-signature{
font-size:0.375rem;
letter-spacing:0.03125rem;
max-width:110px;
text-align:right;
line-height:1.7}
.mobile-nav:not([hidden]){
max-height:calc(100svh - 85px - var(--hero-safe-top) - var(--hero-safe-bottom));
overflow-y:auto;
overscroll-behavior:contain}
}

/* styles/typography.css */
/* Noto Sans hierarchy: body 1rem, supporting copy .875rem, labels .75rem. */
html[lang=ko]{
--heading:'Noto Sans KR','Noto Sans','Noto Sans JP','Noto Sans SC',sans-serif}
html[lang=ja]{
--heading:'Noto Sans JP','Noto Sans','Noto Sans KR','Noto Sans SC',sans-serif}
html[lang=zh-Hans]{
--heading:'Noto Sans SC','Noto Sans','Noto Sans KR','Noto Sans JP',sans-serif}
.micro-label,.section-top>span,.eyebrow,.menu-en,.menu-tag{
font-size:.75rem;
line-height:1.5}
.desktop-nav,.header-link{
font-size:.875rem;
line-height:1.4}
.hero-editorial>.micro-label,.hero-note>.micro-label{
font-size:.75rem;
line-height:1.5}
.hero-editorial h2{
font-size:1.25rem;
line-height:1.5}
.hero-editorial>p:last-child{
font-size:.875rem;
line-height:1.75}
.chef-identity{
font-size:.75rem;
line-height:1.5}
.hero-note>p{
font-size:1rem;
line-height:1.65}
.button,.text-link{
font-size:.875rem;
line-height:1.4}
.scroll-cue,.hero-signature,.motion-toggle{
font-size:.75rem;
line-height:1.5}
.kitchen-intro>div>p,.body-copy,.story-layout p{
font-size:1rem;
line-height:1.8}
.section-top{
flex-wrap:wrap;
gap:8px 24px}
.menu-heading>p{
font-size:1.125rem;
line-height:1.5}
.menu-heading>p span,.menu-card p,.craft-steps p{
font-size:.875rem;
line-height:1.7}
.menu-filters{
flex-wrap:wrap}
.filter{
font-size:.875rem;
line-height:1.4}
.filter span,.menu-hint,.menu-foot{
font-size:.75rem;
line-height:1.6}
.menu-card h3{
font-size:1.5rem;
line-height:1.4}
.wok-caption{
font-size:.875rem;
line-height:1.5}
.craft-steps>li>span{
font-size:.75rem;
line-height:1.5}
.craft-steps strong{
font-size:1.125rem;
line-height:1.4}
.visit-bottom>span{
font-size:.75rem;
line-height:1.5}
.visit-bottom>p{
font-size:1rem;
line-height:1.7}
.footer-top .wordmark>span{
font-size:.75rem;
letter-spacing:.04rem;
line-height:1.4}
.footer-top>div{
font-size:.875rem;
line-height:1.5;
flex-wrap:wrap}
.footer-bottom{
flex-wrap:wrap;
font-size:.75rem;
line-height:1.7}
.footer-bottom>span,.footer-bottom>a,.footer-bottom>p{
font-size:.75rem;
line-height:1.7}
.dialog-copy>p:not(.eyebrow){
font-size:1rem;
line-height:1.8}
.taste-tags>span{
font-size:.8125rem;
line-height:1.5}
.dialog-copy small{
font-size:.75rem;
line-height:1.7}

/* components/brand.css */
/* Keep the official brand at the left edge; site-language controls remain separate. */
.site-header{
justify-content:flex-start}
.site-header>.desktop-nav{
order:1;
margin-left:auto}
.site-header>.site-language{
order:2}
.site-header>.header-link{
order:3}
.site-header>.wordmark{
order:0;
margin-left:0;
flex:0 0 auto}
.site-header>.nav-toggle{
order:4}
.official-brand{
display:flex;
align-items:center;
gap:10px;
min-height:44px}
.official-brand>.official-brand-symbol,.official-brand>.official-brand-type{
display:block;
flex-shrink:0;
margin:0;
padding:0;
background:var(--cream);
mask-image:linear-gradient(#fff,#fff),url('../assets/images/brand/logo-official.png?v=e9813114054b');
mask-mode:luminance,luminance;
mask-composite:exclude;
mask-repeat:no-repeat;
/* Hide the antialiased mask boundary without altering the official artwork. */
clip-path:inset(.125rem)}
.official-brand>.official-brand-symbol{
width:44px;
height:42px;
mask-size:100% 100%,173.0769% 190.4762%;
mask-position:0 0,46.4115% 16.1943%}
.official-brand>.official-brand-type{
width:120px;
height:42.0822px;
mask-size:100% 100%,135.6164% 406.25%;
mask-position:0 0,53.8462% 84.1837%}
.site-header .official-brand>.official-brand-symbol,.site-header .official-brand>.official-brand-type{
margin:0}

/* styles/responsive-refinements.css */
@media(max-width:1100px) and (min-width:761px){
.hero-editorial{
max-width:205px}
.hero-editorial h2{
font-size:1.125rem}
.hero-editorial>p:last-child{
font-size:.8125rem}
.desktop-nav,.header-link{
font-size:.8125rem}
}
@media(max-width:760px){
.site-header>.site-language{margin-left:auto;}
.site-header .wordmark{
flex:0 0 auto;
margin-left:0}
.mobile-nav a{
font-size:1.125rem;
line-height:1.5}
.mobile-nav a span{
font-size:.75rem;
line-height:1.5}
.hero-editorial h2{
font-size:1rem;
line-height:1.4;
letter-spacing:-.025rem}
.chef-identity{
top:calc(var(--hero-copy-top) + 54px);
font-size:.75rem;
line-height:1.4}
.hero-note>.micro-label{
font-size:.6875rem;
line-height:1.5;
letter-spacing:.04rem}
.hero-note>p{
font-size:.875rem;
line-height:1.45;
margin-top:6px}
.hero-bottom>.button{
font-size:.875rem;
line-height:1.4;
margin-top:10px}
.hero-footer{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px}
.scroll-cue{
font-size:.6875rem;
line-height:1.3;
letter-spacing:.025rem;
gap:8px}
.hero-signature{
font-size:.6875rem;
line-height:1.4;
letter-spacing:.0125rem;
max-width:none}
.hero-signature:last-child{
justify-self:end;
text-align:right}
.micro-label,.section-top>span,.menu-en,.menu-tag{
font-size:.75rem}
.kitchen-intro>.micro-label,.visit-bottom>span{
font-size:.75rem}
.menu-filters{
gap:8px 16px}
.menu-heading>p{
font-size:1.125rem}
.menu-heading>p span,.menu-card p{
font-size:.875rem}
.menu-foot{
font-size:.75rem}
.kitchen-intro>div>p,.body-copy,.story-layout p{
font-size:1rem;
line-height:1.8}
.visit-bottom>p{
font-size:.875rem}
.footer-top>div{
font-size:.875rem;
gap:14px 22px}
.footer-bottom>p{
font-size:.75rem;
line-height:1.7}
.dialog-copy>p:not(.eyebrow){
font-size:1rem;
line-height:1.75}
}

/* modules/i18n/i18n.css */
.site-language{
position:relative;
flex-shrink:0}
.site-language[hidden],.language-options[hidden]{
display:none}
.language-trigger{
display:flex;
align-items:center;
justify-content:center;
gap:6px;
min-width:44px;
min-height:44px;
padding:0;
background:transparent;
font:500 0.8125rem var(--heading);
color:var(--cream)}
.language-options{
position:absolute;
top:calc(100% + 8px);
right:0;
min-width:196px;
padding:16px;
background:#101912f5;
border:1px solid var(--line);
box-shadow:0 12px 35px #0006}
.language-options>p{
font-size:0.75rem;
letter-spacing:0.0625rem;
color:#a5ada4;
margin-bottom:10px}
.language-options button{
display:block;
width:100%;
padding:11px 26px 11px 10px;
min-height:44px;
text-align:left;
background:transparent;
font-size:0.875rem;
position:relative;
white-space:nowrap}
.language-options button:hover,.language-options button:focus-visible{
background:#ffffff0d}
.language-options button[aria-pressed=true]{
color:#e2b783}
.language-options button[aria-pressed=true]:after{
content:'✓';
position:absolute;
right:8px}
/* Let translated copy wrap within the existing layout; approved Korean styling stays intact. */
html:not([lang=ko]) .intro-headline,html:not([lang=ko]) .story-layout h2,html:not([lang=ko]) .visit-line h2{
overflow-wrap:anywhere}
html:not([lang=ko]) .visit-line h2{
font-size:clamp(2.25rem,5vw,4.75rem);
letter-spacing:-.04em}
html:not([lang=ko]) .menu-card h3{
line-height:1.4;
letter-spacing:-.04em}
html[lang=ja] .menu-heading h2{
font-size:clamp(1.75rem,3.4vw,3.25rem);
line-height:1.35;
letter-spacing:-.04em}
html[lang=zh-Hans] .menu-heading h2{
letter-spacing:0}
@media(max-width:760px){
.language-trigger{
gap:4px;
font-size:0.75rem}
.language-trigger svg{
width:12px;
height:12px}
.language-options{
right:auto;
left:0}
html:not([lang=ko]) .visit-line h2{
font-size:2.125rem}
html:not([lang=ko]) .footer-top>div{
flex-wrap:wrap;
row-gap:12px}
html[lang=ja] .menu-heading h2{
font-size:1.8125rem}
}
@media(max-width:360px){
.site-header:has(.site-language){
column-gap:5px}
}

/* modules/hero-video/hero-video.css */
/* Video is a media layer only; the approved composition and title stay intact. */
.hero-video{
position:absolute;
inset:0;
z-index:1;
width:100%;
height:100%;
max-width:none;
object-fit:cover;
object-position:50% 50%;
opacity:0;
pointer-events:none;
transition:opacity .35s ease;
}
.hero-video.is-visible{
opacity:1}
.hero-video-toggle{
position:absolute;
z-index:8;
right:4%;
bottom:151px;
display:grid;
place-items:center;
width:44px;
height:44px;
padding:11px;
border:1px solid #ffffff45;
border-radius:50%;
color:var(--cream);
background:#07100d50;
transition:background .2s ease,border-color .2s ease;
}
.hero-video-toggle[hidden]{
display:none}
.hero-video-toggle:hover{
background:#07100d99;
border-color:#ffffffa0}
.hero-video-toggle svg{
width:20px;
height:20px;
grid-area:1/1}
.hero-video-toggle[data-state=paused] .hero-video-pause,
.hero-video-toggle[data-state=playing] .hero-video-play{
display:none}
@media(max-width:760px){
.hero-video-toggle{
right:max(var(--hero-gutter),env(safe-area-inset-right,0px));
bottom:calc(112px + var(--hero-safe-bottom))}
}
@media(prefers-reduced-motion:reduce){
.hero-video,.hero-video-toggle{
transition:none}
}

/* styles/device-balance.css */
/* Device proportions: keep the image primary and give text a readable floor. */
:root {
  --title-pair-height: min(12.1875rem, 21.7svh, calc((90vw - 2.5rem) / 5.510309278));
  --hero-title-position: calc(5.3125rem + var(--hero-title-offset));
}

.hero {
  height: 100svh;
  min-height: 0;
  max-height: none;
}

.hero h1.brush-title[data-language=en] {
  top: var(--hero-title-position);
  height: var(--title-pair-height);
}

.brush-title[data-language=en] > .title-pair {
  column-gap: max(1.875rem, calc((100% - var(--title-pair-height) * 5.510309278) * .75));
}

.hero-editorial {
  top: max(36%, calc(var(--hero-title-position) + var(--title-pair-height) + 1.5rem));
  max-width: clamp(12.5rem, 16vw, 16rem);
}

.hero-editorial h2 { font-size: clamp(1.0625rem, 1.4vw, 1.25rem); }
.hero-editorial > p:last-child { font-size: clamp(.8125rem, .98vw, .875rem); }
.desktop-nav, .header-link { font-size: clamp(.75rem, .98vw, .875rem); }
.micro-label, .section-top > span, .eyebrow { font-size: clamp(.6875rem, .84vw, .75rem); }
.intro-headline { font-size: clamp(1.875rem, 3.2vw, 2.875rem); }
.menu-heading h2 { font-size: clamp(2.25rem, 5.8vw, 5.625rem); }
.menu-card h3 { font-size: clamp(1.25rem, 1.8vw, 1.5rem); }
.wok-copy h2 { font-size: clamp(2rem, 3.3vw, 3.25rem); }
.story-layout h2 { font-size: clamp(1.9375rem, 4vw, 3.6875rem); }
.kitchen-intro > div > p, .body-copy, .story-layout p {
  font-size: clamp(.9375rem, 1.12vw, 1rem);
}

@media (min-width:761px) and (max-width:1100px) {
  :root {
    --title-pair-height: min(8.4375rem, 19svh, calc((90vw - 2.5rem) / 5.510309278));
    --hero-title-position: calc(6rem + var(--hero-title-offset));
  }
  .site-header { gap: clamp(.625rem, 1.7vw, 1.125rem); }
  .desktop-nav { gap: clamp(.625rem, 1.6vw, 1.1875rem); }
  .official-brand { gap: .5rem; }
  .official-brand > .official-brand-symbol { width: 2.375rem; height: 2.267rem; }
  .official-brand > .official-brand-type { width: 6.5rem; height: 2.279rem; }
  .hero-editorial { max-width: clamp(11.5rem, 23vw, 13rem); }
  .hero-editorial > .micro-label { font-size: .6875rem; letter-spacing: .04rem; }
  .hero-note > p { font-size: .9375rem; }
  .chef-identity, .hero-signature, .scroll-cue { font-size: .6875rem; }
  .section-pad { padding-top: 4rem; padding-bottom: 4rem; }
}

@media (max-width:760px) {
  :root {
    /* Mobile keeps an 8px minimum instead of shrinking an already tight gap. */
    --hero-title-gap: clamp(.5rem, 1.2svh, .75rem);
    --hero-title-width: min(calc(74vw - var(--hero-gutter) * 1.48), clamp(10rem, 29svh, 15.625rem));
  }
  .hero h1.brush-title[data-language=en] {
    top: var(--hero-title-top);
    height: auto;
  }
  .brush-title[data-language=en] > .title-pair { gap: var(--hero-title-gap); }
  .hero-editorial {
    top: var(--hero-copy-top);
    max-width: none;
  }
  .hero-editorial h2 { font-size: clamp(.9375rem, 4.1vw, 1.0625rem); line-height: 1.45; }
  .chef-identity { font-size: clamp(.6875rem, 2.9vw, .75rem); }
  .hero-note > .micro-label { font-size: clamp(.625rem, 2.7vw, .6875rem); }
  .hero-note > p { font-size: clamp(.8125rem, 3.45vw, .9375rem); line-height: 1.5; }
  .hero-bottom > .button { font-size: clamp(.8125rem, 3.5vw, .9375rem); }
  .hero-signature, .scroll-cue { font-size: clamp(.625rem, 2.7vw, .6875rem); }
  .language-trigger { font-size: clamp(.6875rem, 3vw, .8125rem); }
  .site-header .language-options {
    left: auto;
    right: 0;
    min-width: min(12.25rem, calc(100vw - 2 * var(--hero-gutter)));
  }
  .official-brand { gap: .5rem; }
  .official-brand > .official-brand-symbol { width: clamp(2rem, 10vw, 2.75rem); height: clamp(1.909rem, 9.545vw, 2.625rem); }
  .official-brand > .official-brand-type { width: clamp(6rem, 29vw, 7.5rem); height: clamp(2.104rem, 10.17vw, 2.63rem); }
  .intro-headline { font-size: clamp(1.75rem, 7.9vw, 2.125rem); }
  .menu-heading h2 { font-size: clamp(1.875rem, 9.3vw, 2.75rem); }
  .menu-card h3 { font-size: clamp(1.1875rem, 5.2vw, 1.4375rem); }
  .wok-copy h2, .story-layout h2 { font-size: clamp(1.75rem, 7.9vw, 2.1875rem); }
  .kitchen-intro > div > p, .body-copy, .story-layout p { font-size: clamp(.875rem, 3.85vw, 1rem); }
  .visit-line h2 { font-size: clamp(2.125rem, 10.5vw, 2.875rem); }
}

@media (max-width:760px) and (max-height:620px) {
  .hero-note > p { margin-top: .25rem; }
  .hero-bottom > .button { margin-top: .5rem; }
}

/* styles/link-treatment.css */
/* Text links have no underline; button outlines and section dividers stay distinct. */
a, a:hover, a:focus, a:visited,
.title-options button[aria-pressed=true] {
  text-decoration: none;
}

.header-link, .text-link, .filter, .mobile-nav a {
  border-bottom: 0;
}

.filter.active { font-weight: 700; }

/* styles/content-width.css */
/* Limit content, while section backgrounds and the hero media stay full bleed. */
:root {
  --content-max: 88.75rem;
}

/* Existing phone, tablet and narrower desktop spacing is unchanged. */
@media (min-width: 1421px) {
  .site-header,
  .hero-bottom,
  .hero-footer {
    left: max(4%, calc((100% - var(--content-max)) / 2));
    right: max(4%, calc((100% - var(--content-max)) / 2));
  }

  .hero h1.brush-title[data-language=en] {
    left: max(5%, calc((100% - var(--content-max)) / 2));
    right: max(5%, calc((100% - var(--content-max)) / 2));
  }

  .hero-editorial,
  .hero-video-toggle {
    right: max(4%, calc((100% - var(--content-max)) / 2));
  }

  .chef-identity {
    left: max(4%, calc((100% - var(--content-max)) / 2));
  }

  .section-pad,
  .visit-section,
  .site-footer {
    padding-inline: max(6%, calc((100% - var(--content-max)) / 2));
  }

  .wok-section {
    padding-inline: max(0px, calc((100% - var(--content-max)) / 2));
  }
}

