/* Final art direction: quiet typography, consistent spacing and purposeful navigation. */
:root{--gold:#c8ad79;--line:#c8ad7930;--editorial:"Yu Mincho","Hiragino Mincho ProN",serif}
.news h2,.craft-title,.section-title h2,.noodles-story-copy h3,.info-intro{font-family:var(--editorial)!important;font-weight:500!important;letter-spacing:.13em}
.news h2,.craft-title,.section-title h2{color:#f0e6d2}
.news h2:after,.craft-title:after,.section-title h2:after{background:#b99e69;width:24px;height:1px;margin-top:12px}
.header nav a{font-family:var(--editorial)!important;font-weight:500!important}
.header nav{border-bottom:0}
.header nav a:last-child{border:1px solid #c8ad7980;padding-inline:14px;background:#11110d44}
.news{margin-top:28px}
.news-editorial{background:linear-gradient(130deg,#1a1a16f5,#10110ff5);border-color:#c8ad7928;padding:8px 28px 24px}
.news-editorial:before{left:28px;width:36px}
.news-item{min-height:86px;padding:16px 0}
.news-item time{font-size:11px;letter-spacing:.14em}
.news-item span{color:#ede8dd}
.news-editorial .store-intro{padding-top:24px}
.news-editorial .store-intro p:first-child{font-size:18px;line-height:1.8;max-width:23em}
.news-editorial .store-intro p+p{font-size:14px;line-height:1.85;color:#c9c5bb}
.facebook-timeline{background:#10110ef5;border-color:#c8ad7928;padding:10px;align-self:start}
.craft-stories{padding-top:40px}
.noodles-story{max-width:960px;padding-top:18px;padding-bottom:18px;column-gap:26px}
.noodles-story-photo{padding:0;outline:0;border:1px solid #c8ad7950;box-shadow:0 14px 35px #0006}
.noodles-story-photo:after{inset:-6px;background-size:20px 1px,1px 20px,20px 1px,1px 20px;opacity:.75}
body.has-art-background .noodles-story-copy{background:#090a09cf;box-shadow:0 0 24px 12px #090a0980}
.noodles-story-copy h3{font-size:23px;line-height:1.55;margin-bottom:13px}
.noodles-story-copy p{font-size:16px;line-height:1.9;color:#e1dbce}
.noodles-story-copy h3:before{height:1px;width:28px;background:#bb6650}
#menu{padding-top:30px}
.ramen-cards{gap:22px 26px}
.ramen-card{border:1px solid #c8ad7945;padding:4px;background:#151611}
.menu-text-grid{padding:28px 32px;gap:28px 36px}
.menu-text-grid .menu-category h3{font-size:21px;color:#dfc795;letter-spacing:.06em;border-bottom:1px solid #c8ad7950;padding-bottom:12px;margin-bottom:8px}
.menu-text-grid .menu-category dt,.menu-text-grid .menu-category dd{font-size:15px;line-height:1.7}
.menu-text-grid .menu-category dt small{color:#aaa99e;font-size:11px}
.menu-text-grid .menu-category dl>div{border-bottom:1px solid #ffffff0f;padding:7px 0}
.menu-text-grid .menu-category dd{color:#f0e6d2}
body.has-art-background .menu-text-grid{background:#12130ff2}
#place{padding-top:36px;gap:28px 40px}
body.has-art-background #place .info{padding:26px;background:#13140ff2;border-color:#c8ad7928}
#place .info-intro{font-size:26px;color:#f0e6d2}
#place .info dt{font-size:12px;letter-spacing:.08em}
#place .info dd{font-size:15px;line-height:1.8}
#place .map-link{background:#cbb27e;color:#151611;letter-spacing:.06em}
#franchise{margin-top:18px;margin-bottom:16px;padding:28px;background:linear-gradient(110deg,#272217eb,#12130fec)}
#franchise .franchise-copy p{color:#c9c5bb;font-size:13px}
.franchise-copy .phone-link{font-size:26px;color:#f0e6d2;text-decoration:none}
footer small{font-family:var(--reading)!important;font-weight:400!important;font-size:11px;color:#aca89e}
.mobile-actions{display:none}
@media(max-width:1000px){.header nav a:last-child{padding-inline:6px}}
@media(max-width:760px){
 .header nav{gap:1.6vw}
 .header nav a:last-child{padding-inline:4px}
 .news{margin-top:18px}
 .news-editorial{padding:4px 18px 20px}
 .news-item{min-height:74px;padding:13px 0}
 .news-editorial .store-intro{padding-top:20px}
 .news-editorial .store-intro p:first-child{font-size:16px;line-height:1.75}
 .news-editorial .store-intro p+p{font-size:13px;line-height:1.8}
 .facebook-timeline{padding:8px}
 .craft-stories{padding-top:30px}
 .noodles-story{padding-top:14px;padding-bottom:14px;gap:15px}
 body.has-art-background .noodles-story-copy{box-shadow:none;padding:8px 0;background:#090a09b8}
 .noodles-story-copy h3{font-size:19px;margin-bottom:10px}
 .noodles-story-copy p{font-size:14px;line-height:1.85}
 .ramen-cards{gap:16px}
 .ramen-card{padding:3px}
 .menu-text-grid{padding:20px;gap:24px}
 .menu-text-grid .menu-category h3{font-size:20px}
 .menu-text-grid .menu-category dt,.menu-text-grid .menu-category dd{font-size:14px}
 #place{padding-top:26px;gap:20px}
 body.has-art-background #place .info{padding:20px}
 #place .info-intro{font-size:23px}
 #place .info dd{font-size:14px}
 #franchise{padding:22px 16px}
 footer{padding-bottom:88px}
 .mobile-actions{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));z-index:20;border:1px solid #b89c65a0;box-shadow:0 8px 28px #0009;background:#10120ff5;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
 .mobile-actions.is-visible{opacity:1;visibility:visible;transform:none}
 .mobile-actions a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;font-family:var(--editorial)!important;font-weight:500!important;font-size:13px;line-height:1.4;color:#ece3d1;border-right:1px solid #c8ad7938}
 .mobile-actions a:last-child{border:0;background:#c8ad79;color:#151611}
 .mobile-actions small{font-family:var(--reading)!important;font-weight:400!important;font-size:8px;letter-spacing:.1em;line-height:1.3}
 .mobile-actions a:focus-visible{outline-offset:-4px}
 html{scroll-padding-bottom:85px}
}
@media(prefers-reduced-motion:reduce){.mobile-actions{transition:none}}/* Brushed brass frame with an inset hairline and architectural corners. */
.noodles-story-photo,.ramen-card,#place .place-photo{
 position:relative;isolation:isolate;border:1px solid transparent;outline:0;
 background:linear-gradient(145deg,#191a15,#0b0d0a 60%,#1d1b13) padding-box,linear-gradient(130deg,#68502d 0%,#e4cc96 18%,#8b7041 36%,#403622 52%,#c7a768 76%,#eedbb2 90%,#715734) border-box;
 box-shadow:0 14px 30px #0006,inset 0 0 0 1px #f6e2b00d;
}
.noodles-story-photo{padding:9px}
.ramen-card{padding:7px}
#place .place-photo{padding:14px}
.noodles-story-photo:before,.ramen-card:before,#place .place-photo:before{
 content:"";position:absolute;inset:4px;border:1px solid #c5a66c38;pointer-events:none;z-index:1;
}
.noodles-story-photo:after,.ramen-card:after,#place .place-photo:after{
 content:"";position:absolute;inset:2px;opacity:1;pointer-events:none;z-index:2;
 background:linear-gradient(90deg,#ecd5a2,#b18b4b) left top/23px 2px,linear-gradient(#ecd5a2,#b18b4b) left top/2px 23px,linear-gradient(90deg,#b18b4b,#ecd5a2) right top/23px 2px,linear-gradient(#ecd5a2,#b18b4b) right top/2px 23px,linear-gradient(90deg,#b18b4b,#ecd5a2) left bottom/23px 2px,linear-gradient(#b18b4b,#ecd5a2) left bottom/2px 23px,linear-gradient(90deg,#ecd5a2,#b18b4b) right bottom/23px 2px,linear-gradient(#b18b4b,#ecd5a2) right bottom/2px 23px;
 background-repeat:no-repeat;
}
#place .place-photo figcaption{color:#d9c08e;letter-spacing:.22em;padding-top:10px}
@media(hover:hover){.ramen-card:hover{border-color:transparent;box-shadow:0 16px 32px #0008,inset 0 0 0 1px #ecd5a22b}}
@media(max-width:760px){
 .noodles-story-photo{padding:7px}
 .ramen-card{padding:6px}
 #place .place-photo{padding:11px}
 .noodles-story-photo:before,.ramen-card:before,#place .place-photo:before{inset:3px}
 .noodles-story-photo:after,.ramen-card:after,#place .place-photo:after{background-size:17px 1px,1px 17px,17px 1px,1px 17px,17px 1px,1px 17px,17px 1px,1px 17px}
}
/* Keep craft copy comfortably inset from its dark background edge. */
body.has-art-background .noodles-story-copy{padding:20px 24px}
@media(max-width:760px){body.has-art-background .noodles-story-copy{padding:16px 18px}}
/* Two-line signature copy in the open lower-left of the hero photograph. */
.header .hero-tagline{position:absolute;left:6%;bottom:9%;margin:0;z-index:1;color:#f6efe0;font-family:"Noto Serif CJK JP","Yu Mincho",serif!important;font-weight:900!important;font-size:clamp(14px,3.1vw,46px);line-height:1.8;letter-spacing:.1em;white-space:nowrap;text-shadow:0 2px 12px #000b,0 1px 2px #0008}
.header .hero-tagline span{font-family:inherit!important;font-weight:inherit!important;color:#e0c48b}
@media(max-width:760px){.header .hero-tagline{left:6%;bottom:8%;font-size:clamp(12px,3.3vw,25px);line-height:1.85;letter-spacing:.07em;text-shadow:0 1px 6px #000d}}
