/* Local refinements: compact news area and supplied transparent hero seal. */
.header .hero-red-logo{position:absolute;right:24px;bottom:24px;display:block;width:110px;height:auto;z-index:1}
.news{width:85%;max-width:1190px;margin:32px auto 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:24px}
.news h2{margin:0;font-size:20px;line-height:1.6;font-weight:700;letter-spacing:.12em}
@media(max-width:760px){.header .hero-red-logo{width:70px;right:16px;bottom:16px}.news{margin-top:24px;padding:12px 0}.news h2{font-size:18px}.header nav{gap:6px;font-size:clamp(11px,3.15vw,16.5px)}}

/* Match the MENU and other section heading sizes. */
.craft-title{font-size:35px}
@media(max-width:760px){.craft-title{font-size:29px}}
/* Reference-inspired news rows; placeholders until articles are supplied. */
.news{max-width:1000px;padding:24px 0 0;border:0}
.news h2{text-align:center;margin:0 0 24px;font-size:35px}
.news-list{list-style:none;margin:0;padding:0;background:rgba(8,9,8,.72)}
.news-item{position:relative;display:flex;align-items:center;gap:14px;min-height:68px;margin:0;padding:18px 20px;border-bottom:1px solid rgba(250,246,232,.28);font-size:15px;line-height:1.8;letter-spacing:.04em}
.news-item:after{content:"";position:absolute;bottom:-1px;left:0;width:12px;height:3px;background:#e87537}
.news-status{flex-shrink:0;display:inline-block;padding:1px 6px;border:1px solid #e87537;color:#efab80;font-size:11px;line-height:1.5;letter-spacing:.05em}
@media(max-width:760px){.news{padding-top:16px}.news h2{font-size:29px;margin-bottom:18px}.news-item{padding:16px 12px;gap:10px;font-size:13px;min-height:64px}.news-status{font-size:10px}}
/* News and Facebook share the row evenly on desktop. */
.news-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.news-columns>*{min-width:0}
.facebook-timeline{width:100%;max-width:500px;justify-self:center}
.facebook-timeline iframe{display:block;max-width:100%;background:#fff}
.facebook-page-link{display:block;padding:12px 0;color:var(--gold);font-size:12px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.news-columns{grid-template-columns:minmax(0,1fr);gap:24px}}
/* Fine gold frame sized to the actual storefront photo. */
#place .place-photo{width:fit-content;max-width:100%;padding:10px;border:1px solid #b59a64;background:linear-gradient(135deg,#272116,#0c0d0a 45%,#211b10);box-shadow:inset 0 0 0 4px #0c0d0a,inset 0 0 0 5px #b59a6466,0 8px 24px #0005}
#place .place-photo img{width:auto;max-width:100%;height:auto;max-height:320px;display:block}
#place .place-photo figcaption{text-align:center;color:#d2bb86;letter-spacing:.16em;padding-top:5px}
@media(max-width:760px){#place .place-photo img{max-width:min(100%,280px);max-height:210px}}
/* Compact screens retain the desktop hero composition, scaled as one scene. */
@media(max-width:1000px){
 .header{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%;height:auto;min-height:0;aspect-ratio:100/56;gap:0;padding:.694vw 5% 1.944vw}
 .header:before{background-size:100% auto;background-position:center bottom}
 .header:after{background:linear-gradient(90deg,rgba(8,9,8,.66),rgba(8,9,8,.26) 44%,rgba(8,9,8,.06) 78%),linear-gradient(180deg,rgba(0,0,0,.42),transparent 45%,rgba(17,17,14,.2))}
 .header .logo-placement{width:17.708vw;min-height:0;flex-shrink:0}
 .header .logo-placement .logo-mark{margin-top:calc(1.319vw - 16.978%)}
 .header nav{width:auto;display:flex;flex-wrap:nowrap;justify-content:flex-end;align-self:flex-start;margin-top:.833vw;gap:3vw;font-size:clamp(7px,1.5vw,15px);letter-spacing:.045em}
 .header nav a{min-width:0;min-height:3.611vw;line-height:1.6;white-space:nowrap}
 .header .hero-red-logo{width:7.639vw;right:1.667vw;bottom:1.667vw}
}
/* Consistent section rhythm without oversized gaps. */
.news{margin-top:20px;padding-top:16px}
.news h2{margin-bottom:18px}
.store-intro{padding-top:28px;padding-bottom:0}
.store-intro-frame{padding:22px 26px}
.craft-stories{padding-top:40px}
.craft-title{padding-bottom:18px}
.craft-title:after{width:36px;height:3px;margin-top:12px}
.craft-stories>.noodles-story:first-of-type{padding-top:0}
.noodles-story{padding-top:24px;padding-bottom:24px;gap:clamp(24px,3vw,44px)}
.chashu-story{padding-top:12px}
#menu{padding-top:28px;padding-bottom:40px}
#place{padding-top:28px;padding-bottom:28px}
footer{padding-top:28px;padding-bottom:20px}
footer small{margin-top:24px}
@media(max-width:760px){
 .news h2,.craft-title,.section-title h2{font-size:22px;line-height:1.5;letter-spacing:.08em}
 .news{margin-top:14px;padding-top:10px}
 .news h2{margin-bottom:14px}
 .news-columns{gap:18px}
 .news-item{min-height:56px;padding:12px}
 .store-intro{padding-top:22px;padding-bottom:0}
 .store-intro-frame{padding:18px}
 .craft-stories{padding-top:28px}
 .craft-title{padding-bottom:16px}
 .craft-title:after{width:30px;height:2px;margin-top:8px}
 .noodles-story{padding-top:18px;padding-bottom:18px;gap:14px}
 .chashu-story{padding-top:6px}
 #menu{padding-top:18px;padding-bottom:24px}
 #menu>.section-title{margin-bottom:14px}
 .section-title h2:after{margin-top:8px;height:2px}
 #place{padding-top:22px;padding-bottom:22px;row-gap:14px}
 #place .info-intro{font-size:20px}
 #franchise{padding-top:16px;padding-bottom:16px}
 footer{padding-top:22px;padding-bottom:16px}
 footer small{margin-top:18px}
}
/* Comfortable, compact reading on phones; desktop typography is unchanged. */
@media(max-width:760px){
 .store-intro{width:88%;padding-left:0;padding-right:0}
 .store-intro-frame{padding:16px}
 .store-intro p{font-size:14px;line-height:1.8;letter-spacing:.015em}
 .store-intro p+p{margin-top:10px}
 .noodles-story{width:88%;padding-left:0;padding-right:0;gap:12px}
 .noodles-story-copy{padding-top:10px}
 .noodles-story-copy p{font-size:14px;line-height:1.8;letter-spacing:.015em;max-width:none}
 .news-item{font-size:13px;line-height:1.7;letter-spacing:0;padding:10px 12px}
 .news-item time{white-space:nowrap}
 #place .info dl div{grid-template-columns:64px minmax(0,1fr);gap:8px;padding:7px 0;line-height:1.65}
 #place .info dt{font-size:13px}
 #place .info dd,#place .last-order{font-size:14px}
 #place .map-link{font-size:13px}
 .franchise-copy p{font-size:13px;line-height:1.7}
}
/* Keep craft photos proportional to their accompanying paragraphs. */
.noodles-story{grid-template-columns:minmax(0,.78fr) minmax(0,1fr);align-items:center}
.chashu-story{grid-template-columns:minmax(0,1fr) minmax(0,.78fr)}
.noodles-story-photo{width:100%;max-width:340px;justify-self:start}
.chashu-story .noodles-story-photo{max-width:280px;justify-self:end}
@media(max-width:760px){
 .noodles-story,.chashu-story{grid-template-columns:minmax(0,1fr);gap:12px}
 .noodles-story-photo{width:76%;max-width:240px;justify-self:start}
 .chashu-story .noodles-story-photo{width:65%;max-width:210px;justify-self:end}
}
/* Bring desktop craft copy and photos together around the center gutter. */
@media(min-width:761px){
 .noodles-story{column-gap:24px}
 .noodles-story-photo{justify-self:end}
 .noodles-story-copy{justify-self:start;width:100%;max-width:26em}
 .chashu-story .noodles-story-copy{justify-self:end}
 .chashu-story .noodles-story-photo{max-width:320px;justify-self:start}
}
/* Center the mobile store block while keeping detail rows easy to scan. */
@media(max-width:760px){
 #place{justify-items:center}
 #place .place-photo{justify-self:center}
 #place .info{width:100%;max-width:340px;justify-self:center}
 #place .info-intro{text-align:center}
 #place .info dl{width:100%;margin-left:auto;margin-right:auto}
 #place .info dl div{grid-template-columns:70px minmax(0,1fr);gap:12px}
 #place .map-link{display:flex;width:100%;justify-content:center;gap:12px;text-align:center}
}
/* Slightly smaller ramen cards, centered with tighter spacing. */
.ramen-cards{width:88%;margin-inline:auto;gap:20px 24px}
@media(max-width:760px){.ramen-cards{width:90%;gap:16px}}
