/* White menu, charcoal film journal, a continuous restaurant identity. */
.menu-page{--paper:#fff;--coal:#23231f;background:#fff;color:#23231f}
.menu-page .inner-header{background:#fff;color:#23231f;border-color:#23231f22}.menu-page .menu-intro h1{color:#23231f}.menu-page .menu-category{background:#fff;color:#23231f;border-color:#23231f33}.menu-page .menu-category a:hover,.menu-page .menu-category a.is-active{color:#23231f;border-color:#23231f}.menu-page #category-0 .category-heading{color:#23231f}.menu-page .is-carousel .signature-description p{color:#555}.menu-page .signature-controls>button{color:#23231f;border-color:#23231f55}.menu-page .signature-controls>button:hover{background:#23231f;color:#fff}.menu-page .signature-dots button::after{background:#23231f}.menu-page .is-carousel .signature-photo{box-shadow:0 22px 25px -25px #23231f66}.menu-ledger{background:#fff}.menu-page .signature-controls button:focus-visible{outline-color:#23231f}
.menu-page .course-feature{max-width:1280px;margin:0 auto;padding:65px 40px 100px;border:0;position:relative}.course-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:50px;border-top:1px solid #23231f;padding-top:32px}.course-heading p{grid-column:1/-1;font-size:12px;letter-spacing:.12em}.course-heading h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(70px,9vw,130px);line-height:1;margin:10px 0 0;letter-spacing:-.025em}.course-heading>span{font-size:16px;padding-bottom:10px}.course-feature .course-list{gap:0}.course-feature .course-list article{position:relative;border:0;border-right:1px solid #23231f33;padding:25px 34px 25px 0;display:flex;flex-direction:column;min-height:340px}.course-feature .course-list article+article{padding-left:34px}.course-feature .course-list article:last-child{border-right:0}.course-index{font-family:Impact,sans-serif;font-size:72px;line-height:1;color:#23231f;margin-bottom:35px}.course-feature .course-list h3{font-size:24px;line-height:1.5;letter-spacing:-.04em;margin:0 0 20px}.course-feature .course-list p{font-size:14px;line-height:2;min-height:0;margin:0 0 35px;color:#555}.course-feature .course-list strong{margin-top:auto;font-size:42px;letter-spacing:-.035em;font-weight:700}.course-feature .course-list small{font-size:12px;letter-spacing:0}.course-feature .menu-note{border-top:1px solid #23231f33;padding-top:22px;margin-top:30px}
.menu-ledger .menu-group{align-items:start}.menu-ledger .category-heading{align-items:start;margin-top:15px}.section-rise{opacity:0;transform:translateY(55px);transition:opacity .9s ease,transform 1.1s cubic-bezier(.22,.61,.36,1)}.section-rise.is-visible{opacity:1;transform:none}
/* Photographs occupy the full width of a single film strip. */
.journal-film{background:#23231f;color:#eee8dc;clip-path:none;margin:0;padding:95px 0 100px;overflow:hidden}.taste-stage::after{display:none}.film-heading{display:flex;justify-content:space-between;align-items:end;padding:0 6vw 45px;gap:25px}.film-heading p{font-size:12px;letter-spacing:.15em;margin:0 0 20px}.contents .film-heading h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(80px,12vw,170px);font-weight:900;line-height:.9;margin:0;letter-spacing:-.025em}.film-heading a{font-size:14px;text-decoration:none;border-bottom:1px solid #eee8dc66;padding-bottom:12px;white-space:nowrap}.film-reel{position:relative;padding:37px 0;border-block:1px solid #eee8dc33}.film-reel::before,.film-reel::after{content:'';position:absolute;left:0;right:0;height:11px;background:repeating-linear-gradient(90deg,transparent 0 13px,#eee8dc66 13px 27px,transparent 27px 46px);pointer-events:none}.film-reel::before{top:12px}.film-reel::after{bottom:12px}.journal-film .journal-posts{display:flex;gap:22px;overflow-x:auto;padding:0 22px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.journal-film .journal-posts::-webkit-scrollbar{display:none}.journal-film .journal-post,.journal-film .journal-post:first-child{display:block;flex:0 0 calc((100vw - 110px)/4);padding:0;border:0;min-width:240px;scroll-snap-align:start;transform:none;opacity:1}.journal-film .journal-image,.journal-film .journal-post:first-child .journal-image{aspect-ratio:1.06;background:#111;transform:none;box-shadow:none;clip-path:none}.journal-film .journal-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.88);transition:transform 1s,filter .5s}.journal-film .journal-post:hover img{transform:scale(1.045);filter:brightness(1)}.journal-film .journal-post>div:last-child{position:relative;padding:0 30px 0 2px;margin-top:18px}.journal-film .journal-post time{font:11px Arial,sans-serif;letter-spacing:.12em;color:#b9b4a9;margin:0 0 12px}.journal-film .journal-post h3,.journal-film .journal-post:first-child h3{font-size:16px;line-height:1.65;font-weight:700;letter-spacing:0;margin:0}.journal-film .article-arrow{position:absolute;right:0;top:14px;font-size:23px;margin:0}.film-footer{display:flex;justify-content:space-between;align-items:center;margin:28px 6vw 0}.film-footer>span{font:10px Arial,sans-serif;letter-spacing:.15em;opacity:.5}.film-footer>div{display:flex;gap:20px}.film-footer button{background:none;border:0;border-bottom:1px solid #eee8dc77;color:inherit;font-size:28px;padding:8px 18px;cursor:pointer}.film-footer button:disabled{opacity:.2;cursor:default}
/* Shop information uses the same scale and charcoal as MENU and JOURNAL. */
.shop-stage{background:#23231f;color:#eee8dc;padding:60px 6vw 110px}.shop-heading{display:flex;align-items:end;justify-content:space-between;border-top:1px solid #eee8dc44;padding-top:55px;margin-bottom:55px}.contents .shop-heading h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(80px,12vw,170px);line-height:.9;letter-spacing:-.025em;margin:0}.shop-heading p{font-size:14px;letter-spacing:.1em}.shop-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:center}.shop-photo{width:100%;height:auto;aspect-ratio:1.1;object-fit:cover;filter:brightness(.82);border-radius:0}.shop-info .visit-store{border-color:#eee8dc44;padding:30px 0}.shop-info .visit-store:first-child{padding-top:0}.shop-label{font:11px Arial,sans-serif;letter-spacing:.2em;opacity:.55}.shop-info .visit-store h3{font-size:clamp(22px,2.2vw,34px);margin:18px 0;letter-spacing:-.03em}.shop-info .visit-store p{font-size:14px}.shop-info .visit-store a{font-size:18px}.shop-info .visit-store a.map{font-size:12px}.shop-info .visit-hours{font-size:12px;line-height:1.8}.contents .site-footer{border-top:1px solid #eee8dc33}
/* WordPress archive continues the film language without paper or tilted cards. */
body.blog,body.archive,body.search,body.single{background:#23231f;color:#eee8dc}.blog-shell.blog-shell{max-width:none;padding:75px 0 100px}.blog-shell .blog-lead{padding:0 6vw;margin-bottom:45px;align-items:end}.blog-shell .blog-lead h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(85px,12vw,170px);font-weight:900;letter-spacing:-.025em;line-height:1;margin:20px 0 0}.blog-shell .blog-lead p{font-size:12px;letter-spacing:.06em}.blog-shell .blog-search{margin:0 6vw 55px;color:#eee8dc;border-color:#eee8dc66}.blog-shell .blog-search input{color:inherit}.blog-shell .blog-search button{color:inherit}.blog-shell .blog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:60px 22px;padding:37px 22px;position:relative;border-block:1px solid #eee8dc44}.blog-shell .blog-grid::before,.blog-shell .blog-grid::after{content:'';position:absolute;left:0;right:0;height:11px;background:repeating-linear-gradient(90deg,transparent 0 13px,#eee8dc66 13px 27px,transparent 27px 46px)}.blog-shell .blog-grid::before{top:12px}.blog-shell .blog-grid::after{bottom:12px}.blog-shell .blog-story,.blog-shell .blog-story:nth-child(even){display:flex;flex-direction:column;margin:0;padding:0;transform:none}.blog-shell .blog-story figure,.blog-shell .blog-story:nth-child(odd) figure,.blog-shell .blog-story:nth-child(even) figure{order:0;transform:none;aspect-ratio:1.06;clip-path:none;background:#111;box-shadow:none;margin:0}.blog-shell .blog-story time{order:1;margin:20px 0 12px;font-size:11px;opacity:.65}.blog-shell .blog-story h2{order:2;font-family:'Zen Kaku Gothic New',sans-serif;font-size:17px;line-height:1.65;letter-spacing:0;margin:0 0 20px}.blog-shell .blog-story .read{order:3;display:flex;margin-top:auto;border-color:#eee8dc33;font-size:11px}.blog-shell .pagination .current{background:none;color:#eee8dc;border-bottom:1px solid #eee8dc}.blog-shell~footer{background:#23231f;color:#eee8dc}.post-shell.post-shell{max-width:860px;background:#23231f;color:#eee8dc}.post-shell .post-body a{color:inherit}.post-shell .post-body{line-height:2.1}.blog-shell~.follow-contact{color:#23231f}
@media(max-width:900px){.blog-shell .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-layout{gap:40px}.course-feature .course-list h3{font-size:20px}}
@media(max-width:800px){.menu-page .course-feature{padding:35px 24px 65px}.course-heading{margin-bottom:20px;padding-top:25px}.course-heading h2{font-size:78px}.course-feature .course-list{display:block}.course-feature .course-list article,.course-feature .course-list article+article{display:grid;grid-template-columns:55px 1fr;gap:0 17px;min-height:0;padding:30px 0;border-right:0;border-bottom:1px solid #23231f33}.course-index{grid-row:1/4;font-size:45px;margin:0}.course-feature .course-list h3{font-size:21px;margin:0 0 15px}.course-feature .course-list p{margin:0 0 20px;font-size:13px}.course-feature .course-list strong{grid-column:2;font-size:34px}.course-feature .menu-note{border:0;font-size:11px;margin-top:20px;padding:0}.journal-film{padding:70px 0}.film-heading{display:block;padding:0 24px 35px}.contents .film-heading h2{font-size:88px}.film-heading a{display:inline-block;margin-top:28px;font-size:12px}.journal-film .journal-posts{gap:14px;padding:0 16px 8px}.journal-film .journal-post,.journal-film .journal-post:first-child{flex-basis:74vw;min-width:0}.journal-film .journal-post h3,.journal-film .journal-post:first-child h3{font-size:16px}.film-footer{margin:20px 24px 0}.film-footer>span{font-size:8px;letter-spacing:.1em}.film-footer button{padding:6px 13px}.shop-stage{padding:25px 24px 65px}.shop-heading{padding-top:40px;margin-bottom:35px}.contents .shop-heading h2{font-size:95px}.shop-heading p{font-size:12px}.shop-layout{grid-template-columns:1fr;gap:35px}.shop-photo{aspect-ratio:1.3}.shop-info .visit-store h3{font-size:25px}.shop-info .visit-store a{font-size:17px}.shop-info .visit-store .map{margin-right:0}.blog-shell.blog-shell{padding:50px 0 90px}.blog-shell .blog-lead{display:block;padding:0 24px}.blog-shell .blog-lead h1{font-size:88px;white-space:nowrap}.blog-shell .blog-lead>p{margin-top:25px}.blog-shell .blog-search{margin:0 24px 35px;width:auto}.blog-shell .blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 16px;padding-inline:16px}.blog-shell .blog-story h2{font-size:14px}.blog-shell .blog-story time{font-size:10px}.blog-shell .blog-story .read{font-size:10px}.blog-shell .pagination .page-numbers{padding:10px}.post-shell.post-shell{padding:45px 24px 100px}}
@media(prefers-reduced-motion:reduce){.section-rise{opacity:1;transform:none;transition:none}.journal-film .journal-image img{transition:none}}
.journal-film .journal-posts{scroll-padding-inline:22px}.blog-shell .blog-story,.blog-shell .blog-story:first-child,.blog-shell .blog-story:nth-child(even){grid-column:auto;grid-row:auto}
@media(max-width:800px){.journal-film .journal-posts{scroll-padding-inline:16px}}

/* Stronger rounded menu typography; only signature dishes are charcoal. */
.menu-page{font-family:'Zen Maru Gothic','Meiryo',sans-serif;font-weight:500}
.menu-page h2,.menu-page h3,.menu-page .menu-price-list dt,.menu-page .menu-category a{font-weight:900}
.menu-page .menu-price-list dt{font-size:18px;letter-spacing:.015em;line-height:1.65}
.menu-page .menu-price-list dt small{font-weight:500;font-size:13px}
.menu-page .menu-price-list dd{font-size:20px;font-weight:700;letter-spacing:-.03em}
.menu-page .category-heading h2{font-family:'Zen Maru Gothic','Meiryo',sans-serif;font-weight:900}
.menu-page .is-carousel .signature-description h3{font-family:'Zen Maru Gothic','Meiryo',sans-serif;font-weight:900}
.menu-page .signature-description strong,.menu-page .course-list strong{font-family:'Zen Maru Gothic','Meiryo',sans-serif;font-weight:900}
.menu-page #category-0{background:#23231f;color:#eee8dc;max-width:none;margin:0;padding:65px max(40px,calc((100vw - 1200px)/2)) 85px;overflow:hidden}
.menu-page #category-0 .category-heading{color:#eee8dc}
.menu-page #category-0 .signature-description p{color:#d0c9bc;font-weight:500}
.menu-page #category-0 .signature-controls>button{color:#eee8dc;border-color:#eee8dc88}
.menu-page #category-0 .signature-controls>button:hover{background:#eee8dc;color:#23231f}
.menu-page #category-0 .signature-dots button::after{background:#eee8dc}
.menu-page #category-0 .signature-controls button:focus-visible{outline-color:#eee8dc}
.menu-page #category-0 .signature-photo{box-shadow:0 20px 0 -8px #534b3c}
/* One-shot entrances, with readable stationary content afterwards. */
.editorial-motion .film-heading h2,.editorial-motion .shop-heading h2{opacity:0;transform:translateY(65px);transition:opacity .55s,transform .75s cubic-bezier(.2,.8,.2,1)}
.editorial-motion.is-in-view .film-heading h2,.editorial-motion.is-in-view .shop-heading h2{opacity:1;transform:none}
.editorial-motion .film-reel{opacity:0;transform:translateX(65px);transition:opacity .7s .15s,transform 1.15s .15s cubic-bezier(.16,1,.3,1)}
.editorial-motion.is-in-view .film-reel{opacity:1;transform:none}
.journal-film.editorial-motion .journal-post,.journal-film.editorial-motion .journal-post:first-child{opacity:0;transform:translateY(15px);transition:opacity .65s var(--entry-delay,0s),transform .8s var(--entry-delay,0s) cubic-bezier(.2,.8,.2,1)}
.journal-film.editorial-motion.is-in-view .journal-post,.journal-film.editorial-motion.is-in-view .journal-post:first-child{opacity:1;transform:none}
.shop-photo-window{overflow:hidden;position:relative;aspect-ratio:1.1}
.shop-photo-window .shop-photo{width:100%;height:100%;aspect-ratio:auto;transform:translateY(var(--shop-parallax,0px)) scale(1.12)}
.editorial-motion .shop-photo-window{clip-path:inset(100% 0 0);opacity:.5;transition:clip-path 1.1s .12s cubic-bezier(.16,1,.3,1),opacity 1s}
.editorial-motion.is-in-view .shop-photo-window{clip-path:inset(0);opacity:1}
.editorial-motion .shop-info h3,.editorial-motion .shop-info p,.editorial-motion .shop-info a,.editorial-motion .shop-label{opacity:0;transform:translateY(20px);transition:opacity .6s var(--entry-delay,.3s),transform .8s var(--entry-delay,.3s) cubic-bezier(.2,.8,.2,1)}
.editorial-motion .shop-label{display:block}
.editorial-motion.is-in-view .shop-info h3,.editorial-motion.is-in-view .shop-info p,.editorial-motion.is-in-view .shop-info a,.editorial-motion.is-in-view .shop-label{opacity:1;transform:none}
@media(max-width:800px){.menu-page #category-0{margin:0;padding:40px 24px 65px}.menu-page .menu-price-list dt{font-size:16px}.menu-page .menu-price-list dd{font-size:18px}.shop-photo-window{aspect-ratio:1.3}.shop-photo-window .shop-photo{transform:none}.editorial-motion .film-reel{transform:translateX(35px)}.editorial-motion.is-in-view .film-reel{transform:none}}
@media(prefers-reduced-motion:reduce){.editorial-motion *{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}}

.menu-page #category-0 .signature-description h3,.menu-page #category-0 .signature-description strong{font-family:"Zen Maru Gothic","Meiryo",sans-serif;font-weight:900}
.menu-page .course-feature .course-list h3{font-weight:900}
/* Moving film and a tactile shop photograph. */
.film-running .journal-posts{scroll-snap-type:none;scroll-behavior:auto}
.film-running::before,.film-running::after{background-position-x:var(--film-offset,0px)}
.film-frame-number{display:inline-block;font:10px Arial,sans-serif;letter-spacing:.12em;opacity:.45;margin-right:14px}
.shop-layout{grid-template-columns:1fr 1fr;gap:9vw;padding:15px 2vw 25px}
.shop-photo-window{overflow:visible;aspect-ratio:auto;padding:13px 13px 46px;background:#eee8dc;transform:translateY(40px) rotate(-7deg);isolation:isolate;box-shadow:0 18px 35px #0003}
.shop-photo-window::before{content:'';position:absolute;inset:0;border:1px solid #eee8dc66;transform:translate(20px,15px) rotate(5deg);z-index:-1}
.shop-photo-window::after{content:'MINAMISUNAMACHI / NAKAJI';position:absolute;bottom:16px;left:16px;color:#23231f;font:10px Arial,sans-serif;letter-spacing:.16em}
.shop-photo-window .shop-photo{display:block;height:auto;aspect-ratio:1.1;transform:none;filter:brightness(.95)}
.editorial-motion .shop-photo-window{clip-path:none;opacity:0;transition:transform 1.3s .1s cubic-bezier(.16,1,.3,1),opacity .8s}
.editorial-motion.is-in-view .shop-photo-window{clip-path:none;opacity:1;transform:rotate(-3deg)}
.shop-photo-window .shop-neighborhood{position:absolute;right:-48px;top:8%;writing-mode:vertical-rl;font-size:15px;font-weight:700;letter-spacing:.28em;color:#eee8dc}
.shop-info .visit-store h3{font-size:clamp(27px,2.7vw,42px);line-height:1.5}
@media(max-width:800px){.shop-layout{grid-template-columns:1fr;gap:55px;padding:5px 13px 10px}.shop-photo-window{padding:10px 10px 38px;margin-right:15px}.shop-photo-window .shop-photo{aspect-ratio:1.2}.shop-photo-window::before{transform:translate(13px,10px) rotate(4deg)}.shop-photo-window::after{font-size:8px;bottom:13px}.shop-photo-window .shop-neighborhood{right:-33px;font-size:12px}.shop-info .visit-store h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.shop-photo-window{transform:rotate(-3deg)!important}}
/* The storefront is held in the silhouette of a cow. */
.journal-film .film-running .journal-posts{scroll-snap-type:none!important;scroll-behavior:auto!important}
.shop-photo-window,.editorial-motion.is-in-view .shop-photo-window{background:none;padding:0;box-shadow:none;transform:none;aspect-ratio:8/5}
.shop-photo-window::before,.shop-photo-window::after,.shop-neighborhood{display:none}
.shop-photo-window .shop-photo{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 52%;mask:url('assets/shop-cow-mask.svg') center/contain no-repeat;-webkit-mask:url('assets/shop-cow-mask.svg') center/contain no-repeat;filter:none}
.editorial-motion .shop-photo-window{transform:translateY(35px);opacity:0}
.shop-layout{grid-template-columns:1.2fr 1fr;gap:5vw;padding:10px 0 25px;align-items:center}
@media(max-width:800px){.shop-layout{grid-template-columns:1fr;gap:30px;padding:0}.shop-photo-window{margin:0 -12px;width:calc(100% + 24px)}.shop-photo-window .shop-photo{aspect-ratio:auto}.shop-info .visit-store h3{font-size:28px}}
/* A large, quiet bull head behind the shop information. */
.shop-stage{position:relative;isolation:isolate;overflow:hidden}
.shop-stage::before{content:'';position:absolute;z-index:-1;width:min(82vw,1050px);aspect-ratio:1;right:-12%;top:80px;background:url('assets/shop-bull-head.svg') center/contain no-repeat;pointer-events:none}
.shop-heading,.shop-layout{position:relative;z-index:1}
.shop-photo-window,.editorial-motion.is-in-view .shop-photo-window{aspect-ratio:1.12;transform:none;margin:0;width:100%;overflow:hidden}
.shop-photo-window .shop-photo{mask:none;-webkit-mask:none;object-position:50% 50%;filter:brightness(.9)}
.shop-layout{grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
@media(max-width:800px){.shop-stage::before{width:150vw;right:-49vw;top:280px}.shop-layout{grid-template-columns:1fr;gap:35px}.shop-photo-window{aspect-ratio:1.3}}
@media(prefers-reduced-motion:reduce){.shop-photo-window{transform:none!important}}
