/* A living kitchen journal. All content remains visible without JavaScript. */
.commitment-cinema{--cc-ink:#30271f;--cc-paper:#f5efe4;--cc-gold:#b89865;--cc-line:#beaa893d;background:var(--cc-paper);color:var(--cc-ink)}
.cc-hero{position:relative;isolation:isolate;overflow:hidden;min-height:690px;padding:calc(var(--kve-nav-height) + 72px) max(6%,calc((100% - 1220px)/2)) 80px;background:#211b16;color:#f5edde;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:9%}
.cc-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 40%,#8c633e38,transparent 58%)}
.cc-eyebrow{display:block;font:500 10px/1.7 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#c9ac7e}
.cc-hero h1{font-family:'Bodoni Moda',Georgia,serif;font-weight:400;font-size:clamp(62px,7.5vw,108px);line-height:1.02;letter-spacing:-.05em;margin:28px 0;max-width:650px;text-wrap:balance}
.cc-lead{font:400 16px/1.9 'DM Sans',sans-serif;color:#d0c4b2;max-width:385px;margin:0 0 30px}
.cc-enter{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:8px 0;border-bottom:1px solid #b89865;color:#f5edde;font:400 13px/1.5 'DM Sans',sans-serif;text-decoration:none}
.cc-enter svg{width:18px;height:24px;fill:none;stroke:currentColor;stroke-width:1.3;transition:transform .3s}
.cc-enter:hover svg{transform:translateY(5px)}
.cc-hero-art{position:relative;max-width:345px;width:100%;justify-self:end;padding:17px}
.cc-hero-art:before{content:'';position:absolute;inset:0;border:1px solid #b8986570;transform:rotate(5deg)}
.cc-hero-image{position:relative;overflow:hidden;aspect-ratio:3/4;background:#30271f}
.cc-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.cc-hero-art figcaption{padding-top:19px;color:#cdbb9f;font:400 10px/1.6 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.cc-seal{position:absolute;z-index:2;right:-28px;bottom:46px;width:112px;height:112px;border-radius:50%;background:#d7c29e;color:#3c2d20;display:grid;align-content:center;justify-items:center;box-shadow:0 10px 35px #100b0740;outline:1px solid #665036;outline-offset:-9px;transform:rotate(-12deg)}
.cc-seal strong{font:400 31px/1.2 'Bodoni Moda',Georgia,serif}.cc-seal span{font:400 9px/1.5 'DM Sans',sans-serif;letter-spacing:.12em}
.cc-chapter-nav{position:sticky;top:var(--kve-nav-height);z-index:40;display:flex;justify-content:center;gap:4%;padding:0 5%;background:#f5efe4f7;border-bottom:1px solid #b5a18450;backdrop-filter:blur(12px)}
.cc-chapter-nav a{position:relative;display:flex;align-items:center;gap:12px;min-height:62px;padding:12px 6px;color:#776958;text-decoration:none;font:400 12px/1.5 'DM Sans',sans-serif;border-bottom:2px solid transparent;transition:color .3s,border-color .3s}
.cc-chapter-nav a.is-active{color:#38291c;border-bottom-color:#937042}.cc-chapter-nav a>span:first-child{font-family:'Bodoni Moda',Georgia,serif;font-size:16px;font-style:italic;color:#98774a}
.cc-chapter{position:relative;max-width:1240px;margin:auto;padding:96px 6%;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:10%;scroll-margin-top:calc(var(--kve-nav-height) + 78px)}
.cc-chapter+.cc-chapter{border-top:1px solid #b5a18450}
.cc-chapter-visual{align-self:start;position:sticky;top:calc(var(--kve-nav-height) + 92px);min-width:0}
.cc-chapter-heading{font:400 clamp(27px,3vw,40px)/1.2 'Bodoni Moda',Georgia,serif;letter-spacing:-.025em;margin:10px 0 28px;text-wrap:balance}
.cc-chapter .cc-eyebrow{color:#8b6c43}
.cc-media{position:relative;margin:0;background:#e9dfcf;padding:12px;box-shadow:10px 12px 0 #d5c5ab35;transform-origin:center}
.cc-media img,.cc-media video{display:block;width:100%;height:auto;object-fit:contain}
.cc-film{max-width:260px;margin-inline:auto}.cc-film video{aspect-ratio:9/16;background:#211b16}
.cc-archive{margin-top:50px;transform:rotate(-3deg);border:1px solid #c4b399;padding:16px 16px 28px;background:#faf6ee}
.cc-archive:before{content:'';position:absolute;width:74px;height:22px;background:#b4a07870;left:calc(50% - 37px);top:-10px;transform:rotate(5deg)}
.cc-media figcaption{font:400 11px/1.6 'DM Sans',sans-serif;padding-top:14px;color:#685a47}
.cc-date{display:block;font:400 clamp(85px,11vw,150px)/1 'Bodoni Moda',Georgia,serif;color:#b29a7545;margin-top:40px;letter-spacing:-.08em}
.cc-list{padding:0;margin:0;list-style:none;min-width:0}
.cc-item{position:relative;min-height:250px;padding:35px 0 48px;scroll-margin-top:calc(var(--kve-nav-height) + 90px)}
.cc-item:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#b39b7855;transform-origin:left;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.cc-number{display:block;font:italic 400 51px/1 'Bodoni Moda',Georgia,serif;color:#ab8b59;margin-bottom:22px}
.cc-item h3{font:400 clamp(26px,2.8vw,37px)/1.23 'Bodoni Moda',Georgia,serif;letter-spacing:-.025em;color:#33281e;margin:0 0 17px;text-wrap:pretty}
.cc-item p{font:400 15px/1.85 'DM Sans',sans-serif;color:#746452;margin:0;max-width:440px}
.cc-closing{position:relative;padding:86px 7% 92px;text-align:center;background:#e8ddcd;overflow:hidden}
.cc-closing:before{content:'';display:block;width:1px;height:62px;background:#a38559;margin:0 auto 30px}
.cc-closing p{max-width:650px;margin:0 auto 28px;font:400 clamp(29px,3.8vw,48px)/1.3 'Bodoni Moda',Georgia,serif;text-wrap:balance}
.cc-closing a{display:inline-flex;align-items:center;min-height:48px;padding:7px 0;color:#4d3923;border-bottom:1px solid #8f7047;font:400 13px/1.5 'DM Sans',sans-serif;text-decoration:none}
.commitment-cinema a:focus-visible{outline:2px solid #ad844a;outline-offset:5px}
.cc-ready .cc-hero-copy>*{animation:cc-rise 1s cubic-bezier(.16,1,.3,1) both}.cc-ready .cc-hero-copy h1{animation-delay:.12s}.cc-ready .cc-hero-copy p{animation-delay:.24s}.cc-ready .cc-enter{animation-delay:.36s}
.cc-ready .cc-hero-image{animation:cc-unveil 1.6s cubic-bezier(.16,1,.3,1) both}.cc-ready .cc-hero-image img{animation:cc-settle 2s cubic-bezier(.16,1,.3,1) both}.cc-ready .cc-hero-art:before{animation:cc-frame 1.8s cubic-bezier(.16,1,.3,1) both}.cc-ready .cc-seal{animation:cc-seal-in 1.3s .5s both}
.cc-ready [data-cc-reveal]{transition:opacity .9s,transform .9s cubic-bezier(.16,1,.3,1)}
.cc-ready [data-cc-reveal]:not(.is-visible){opacity:0;transform:translateY(35px)}
.cc-ready .cc-item:not(.is-visible):after{transform:scaleX(0)}
.cc-ready .cc-item.is-active .cc-number{color:#79552d;transform:translateX(6px)}.cc-number{transition:color .6s,transform .6s}
@keyframes cc-rise{from{opacity:0;transform:translateY(24px);clip-path:inset(100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes cc-unveil{from{clip-path:inset(0 50%)}to{clip-path:inset(0)}}
@keyframes cc-settle{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes cc-frame{from{transform:rotate(0deg) scale(.85);opacity:0}to{transform:rotate(5deg) scale(1);opacity:1}}
@keyframes cc-seal-in{from{opacity:0;transform:rotate(18deg) scale(1.3)}to{opacity:1;transform:rotate(-12deg) scale(1)}}
@media(min-width:900px){.cc-ready .cc-chapter-visual .cc-media{translate:0 var(--cc-drift,0px)}.cc-film{width:clamp(160px,calc((100svh - var(--kve-nav-height) - 300px)*.5625),260px)}}
@media(max-width:899px){
 .cc-hero{min-height:0;padding:calc(var(--kve-nav-height) + 45px) 7% 64px;gap:6%;grid-template-columns:1.2fr .8fr}.cc-hero h1{font-size:clamp(44px,8vw,72px)}.cc-lead{font-size:14px}.cc-seal{width:84px;height:84px;right:-10px;bottom:37px}.cc-seal strong{font-size:25px}.cc-seal span{font-size:8px}
 .cc-chapter{gap:7%;padding:65px 6%}.cc-chapter-visual{top:calc(var(--kve-nav-height) + 85px)}.cc-item{min-height:230px}.cc-item h3{font-size:27px}.cc-item p{font-size:14px}.cc-chapter-nav a{font-size:11px;gap:8px}.cc-film{max-width:220px}
}
@media(max-width:600px){
 .cc-hero{grid-template-columns:1fr;padding:calc(var(--kve-nav-height) + 38px) 7% 50px;gap:36px}.cc-hero h1{font-size:clamp(49px,14vw,75px);line-height:1.04;max-width:100%;margin:23px 0}.cc-lead{max-width:100%;font-size:15px;line-height:1.8;margin-bottom:18px}.cc-eyebrow{font-size:9px;letter-spacing:.12em}.cc-hero-art{max-width:230px;justify-self:center;padding:12px}.cc-hero-image{aspect-ratio:3/4}.cc-hero-art figcaption{font-size:9px;padding-top:13px}.cc-seal{right:-20px}
 .cc-chapter-nav{padding:0 4%;gap:0;justify-content:space-between}.cc-chapter-nav a{min-height:62px;flex:1;gap:3px;flex-direction:column;justify-content:center;text-align:center;font-size:10px;line-height:1.35;padding:8px 3px}.cc-chapter-nav a>span:first-child{font-size:14px}
 .cc-chapter{display:block;padding:52px 7% 20px}.cc-chapter-visual{position:relative;top:auto;margin-bottom:34px}.cc-chapter-heading{font-size:34px;margin:10px 0 25px}.cc-archive{max-width:310px;margin:35px auto 25px}.cc-date{font-size:80px;position:absolute;right:0;bottom:-35px;pointer-events:none}.cc-film{max-width:205px}.cc-media figcaption{font-size:10px}.cc-item{min-height:0;padding:25px 0 32px;margin-bottom:12px}.cc-number{font-size:39px;margin-bottom:14px}.cc-item h3{font-size:28px;line-height:1.25;margin-bottom:14px}.cc-item p{font-size:15px;line-height:1.8}.cc-closing{padding:50px 7% 58px}.cc-closing:before{height:40px}
}
html:is(:lang(zh),:lang(ko),:lang(ja)) .cc-hero h1,html:is(:lang(zh),:lang(ko),:lang(ja)) :is(.cc-chapter-heading,.cc-item h3,.cc-closing p){font-family:var(--kve-cjk-serif);letter-spacing:0;line-height:1.4}
html:is(:lang(zh),:lang(ko),:lang(ja)) .cc-hero h1{font-size:clamp(40px,6.5vw,82px)}
html:is(:lang(zh),:lang(ko),:lang(ja)) .cc-chapter-nav a{font-family:var(--kve-cjk-sans)}
@media(prefers-reduced-motion:reduce){.cc-ready *{animation:none!important;transition:none!important}.cc-ready [data-cc-reveal]{opacity:1!important;transform:none!important}.cc-ready .cc-item:after{transform:none!important}.cc-ready .cc-chapter-visual .cc-media{translate:none!important}}

/* Distinct family archive, kitchen and house images; no repeated plating film. */
.cc-house-photo{max-width:245px;margin-inline:auto}
.cc-house-photo img{aspect-ratio:640/1136;object-fit:contain}
.cc-archive{max-width:330px;margin-inline:auto}
.cc-date{font-size:clamp(65px,7vw,90px);margin-top:25px}
@media(min-width:900px){.cc-house-photo{width:clamp(160px,calc((100svh - var(--kve-nav-height) - 300px)*.5625),245px)}}
@media(max-width:600px){.cc-house-photo{max-width:205px}.cc-archive{max-width:265px}.cc-date{margin-top:25px}}
