/* Day-to-night palette, keeping the existing full-bleed hero and washi texture. */
.brand{display:flex;align-items:center;gap:10px;width:auto;max-width:240px;background:none;border:0}.brand img{width:42px;height:60px;flex:none}.brand-name{font-family:var(--sans);font-size:15px;line-height:1.35;white-space:nowrap;letter-spacing:.02em}.brand-name small{display:block;font-size:12px;letter-spacing:.2em;margin-top:4px}.hero-hours{display:flex;flex-wrap:wrap;gap:16px 24px;margin:25px 0;color:#fff4e2;font-variant-numeric:tabular-nums;font-size:1.05rem}.hero-hours span{display:flex;flex-direction:column}.hero-hours small{font-size:.68rem;letter-spacing:.12em;color:#e4cfab}.hero-copy{padding-top:48px;padding-bottom:48px}.service-note{max-width:720px;font-size:.9rem;line-height:1.9;padding:20px 24px;border-left:2px solid var(--red);background:#f8f1e6;color:#544c41;margin:28px 0 0}
main{background:linear-gradient(to bottom,#f3eddf 0%,#f3eddf 24%,#e3d9c8 45%,#a39a8a 62%,#292824 76%,#1c1d1a 100%)}
.intro,.menu-section,.reviews,.access,.parking-section{isolation:isolate}.intro:after,.menu-section:after,.parking-section:after{content:'';position:absolute;inset:20px;z-index:-1;pointer-events:none;background-image:url('assets/seigaiha.svg');background-size:150px;opacity:.15;mask-image:linear-gradient(120deg,#000,transparent 65%)}
.feature{background:#e0d6c5}.feature-copy{position:relative;background-image:linear-gradient(90deg,#e0d6c5ee,#e0d6c5aa),url('assets/asanoha.svg')}.feature-photo img{object-fit:contain;background:#28221d}
.menu-section{--muted:#50483e;--line:#a99b86}.menu-section:after{background-image:url('assets/asanoha.svg');opacity:.14}.ramen-meta{background:#f3eddfb8;padding:18px;gap:10px}.ramen-meta p{color:#514a40}.menu-list{background:#f3eddf;padding:8px 22px}.menu-tab{color:#3c372f}.menu-tabs{background:#dfd5c4}.side-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:24px;background:#898173}.side-gallery img{aspect-ratio:4/5}.side-gallery p{font-size:.9rem;left:10px;right:10px}.side-gallery article:first-child img{object-fit:contain;background:#fff}
.reviews{max-width:none;padding-left:max(24px,calc((100vw - 1092px)/2));padding-right:max(24px,calc((100vw - 1092px)/2));background:linear-gradient(#898173,#343530);color:#fff8e9;--muted:#e8dfcd;--ink:#fff8e9}.reviews .section-kicker{color:#f0ccb0}.reviews .review-grid{grid-template-columns:repeat(2,minmax(0,380px));justify-content:center}.review-footer p{color:#e1d9cb}.google-review-shot{color:#292720}.reviews .text-link{border-color:#d6c8ad}
.night-section{background:#262723}.night-clock{display:flex;flex-direction:column;justify-content:center;align-items:center;flex:none;width:210px;height:210px;margin:12px 0 32px;border:1px solid #aa96734f;border-radius:50%;background:radial-gradient(circle,#b9995320,transparent 70%),url('assets/seigaiha.svg') center/100px;color:#e8cf9f;font-variant-numeric:tabular-nums}.night-clock>span{font-size:1rem;letter-spacing:.12em}.night-clock strong{font-size:3.3rem;line-height:1.4;font-weight:500;letter-spacing:.02em}.night-copy{padding:50px clamp(24px,4vw,60px)}.night-copy h2{font-size:clamp(2.2rem,3.5vw,4rem)}
.access{color:#f4eddf;--muted:#c2b9a8;--line:#766e5e;--ink:#f4eddf;max-width:none;padding-left:max(24px,calc((100vw - 1092px)/2));padding-right:max(24px,calc((100vw - 1092px)/2));background:linear-gradient(#262723,#1e201c)}.access .section-kicker{color:#d4bfa0}.access dd small{font-size:.8rem;line-height:1.7}.access dl div{grid-template-columns:110px 1fr}.access-actions [hidden]{display:none}
.parking-section{position:relative;padding:50px max(24px,calc((100vw - 1092px)/2)) 100px;color:#f4eddf;background:#1e201c}.parking-section h2{font:500 clamp(2rem,4vw,3.6rem)/1.4 var(--serif);margin:12px 0}.parking-section .section-kicker{color:#d4bfa0}.parking-section>p{color:#c9c0af}.parking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px}.parking-card{border:1px solid #716754;padding:22px;background:#272922d9}.parking-card h3{font-size:1.1rem;font-weight:500;margin:0 0 8px;text-wrap:balance}.parking-location{font-size:.82rem;color:#cec4b2;margin:4px 0 14px}.parking-walk{color:#e7c68e;font-size:.9rem;margin:0}.parking-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 4px}.parking-status strong{font-size:1rem;font-weight:500}.parking-status button{min-height:44px;padding:8px 12px;border:1px solid #a28d69;background:transparent;color:#f4eddf;cursor:pointer}.parking-status button:disabled{opacity:.65;cursor:wait}.parking-time{font-size:.72rem;color:#c1b7a4;min-height:1.7em;margin:0}.parking-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:8px}.parking-links a{min-height:44px;display:inline-flex;align-items:center;font-size:.82rem;border-bottom:1px solid #756950}.parking-note{font-size:.8rem;line-height:1.8;max-width:780px;margin-top:24px}.parking-section:after{opacity:.07}
footer{background:#1c1d1a;color:#e9deca;border-color:#514a3d}.prototype-note{color:#c6bca9}footer img{filter:grayscale(1) invert(1)}.site-header.is-night{background:#24251fee;color:#f5eddf;border-color:#62594b}.site-header.is-night .brand img{filter:grayscale(1) invert(1)}.site-header.is-night .lang{color:#dfd5c1}.site-header.is-night .lang.is-active{color:#efbc95;border-color:#efbc95}
@media(max-width:1100px){.desktop-nav{gap:16px;font-size:.8rem}.brand-name{font-size:13px}}
@media(max-width:900px){.brand{max-width:170px;gap:6px}.brand img{width:30px;height:46px}.brand-name{font-size:12px}.brand-name small{font-size:10px}.lang{min-width:36px}.hero-copy{padding:clamp(220px,34svh,330px) 24px 100px}.hero-hours{font-size:.95rem;gap:12px 24px}.hero-actions{flex-wrap:wrap}.hero-actions .button{min-width:135px;padding:12px}.side-gallery{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.parking-grid{grid-template-columns:1fr}.night-clock{width:180px;height:180px}.access dl div{grid-template-columns:1fr}.parking-section{padding-top:25px;padding-bottom:90px}.site-header{padding-left:12px;padding-right:8px}.language-switcher{gap:0}.menu-tabs{top:70px}.parking-card{padding:18px}.hero-lead{font-size:1rem}}
@media(max-width:620px){.review-grid{display:flex!important}.side-gallery img{aspect-ratio:4/5}.side-gallery p{position:static;margin:0;min-height:54px;padding:10px;font-size:.8rem}.service-note{padding:16px}.brand-name{font-size:11px}.brand-name small{font-size:10px}.parking-section h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
main{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23765e39' opacity='.045' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E"),linear-gradient(to bottom,#f3eddf 0%,#f3eddf 24%,#e3d9c8 45%,#a39a8a 62%,#292824 76%,#1c1d1a 100%)}
.site-header.is-night .brand img,footer img{filter:invert(1) hue-rotate(180deg) saturate(1.4)}
.side-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}.side-gallery article:nth-child(2) img{object-fit:contain;background:#fff}.side-gallery article:first-child img{object-fit:cover}
#parking{scroll-margin-top:105px}
@media(max-width:900px){.side-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.side-gallery article{flex:0 0 70vw;scroll-snap-align:start}.side-gallery img{aspect-ratio:1}.parking-card{min-width:0}}
.intro h2{max-width:18em;text-wrap:balance}.reviews-heading>div{flex:1.35;min-width:0}.reviews-heading>p{flex:1;min-width:0}.reviews h2{font-size:clamp(2rem,3.7vw,4rem);text-wrap:balance}.intro dd,.intro-grid>p{text-wrap:pretty}
.reviews .review-grid{display:flex!important;justify-content:flex-start;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;margin:24px 0 0;padding:0 0 18px;overscroll-behavior-x:contain}.reviews .google-review-shot{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start}.review-controls{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:24px}.review-controls button{width:48px;height:48px;border:1px solid #ddccb0;color:#fff5e2;background:transparent;font-size:1.4rem;cursor:pointer}.review-controls button:disabled{opacity:.3;cursor:default}.review-position{min-width:55px;text-align:center;font-variant-numeric:tabular-nums}.review-grid:focus-visible{outline:2px solid #e8cf9f;outline-offset:6px}@media(max-width:900px){.reviews .google-review-shot{flex-basis:calc((100% - 20px)/2)}}@media(max-width:620px){.reviews .google-review-shot{flex-basis:86%}.reviews .review-grid{gap:14px}.review-controls{margin-top:20px}}

/* Keep the complete Chinese signature name on one line. */
html[lang='zh-Hant'] .feature-mapo .feature-copy{container-type:inline-size}
html[lang='zh-Hant'] .feature-mapo h2{font-size:clamp(22px,12.5cqw,100px);white-space:nowrap;letter-spacing:0;line-height:1.3}
html[lang='zh-Hant'] .feature-mapo h2 span{display:inline}

/* A viewport into the original poster: full KAI glyph and complete bowl. */
.mapo-photo-window{display:block;position:relative;width:100%;aspect-ratio:1024/920;overflow:hidden}
.mapo-photo-window img,.ramen-card .mapo-photo-window img{position:absolute;top:0;left:0;width:100%;max-width:none;height:auto;aspect-ratio:auto;object-fit:initial;transform:translateY(-45.145631%);background:transparent}
.mapo-menu-photo{aspect-ratio:4/5;display:flex;align-items:center;background:#e0d6c5}
.feature-mapo .mapo-feature-photo{display:flex;align-items:center;min-height:0;background:#e0d6c5}
@media(max-width:620px){.mapo-menu-photo{aspect-ratio:5/4}.mapo-menu-photo .mapo-photo-window{width:89%;margin:auto}}

/* Warm illuminated hours with a quiet centre behind the numerals. */
.night-clock{position:relative;isolation:isolate;border-color:#cbb17b88;box-shadow:0 0 24px #e5b86414,inset 0 0 22px #e5b8640d}
.night-clock::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(ellipse at center,#20211efc 0%,#20211ef2 33%,#20211e9c 51%,transparent 76%)}
.night-clock>span{color:#fff2d3;font-size:1.14rem;font-weight:650;letter-spacing:.07em;text-shadow:0 2px 3px #000,0 0 10px #f0c77965}
.night-clock strong{color:#fff5dc;font-weight:700;letter-spacing:.025em;text-shadow:0 2px 4px #000,0 0 14px #f0c77970,0 0 28px #e9ae4426;animation:night-hours-glow 4s ease-in-out infinite}
@keyframes night-hours-glow{0%,100%{text-shadow:0 2px 4px #000,0 0 12px #f0c77955,0 0 24px #e9ae441a}50%{text-shadow:0 2px 4px #000,0 0 18px #f0c77999,0 0 34px #e9ae443b}}
@media(prefers-reduced-motion:reduce){.night-clock strong{animation:none}}
/* Extend the poster's own paper texture to the full menu photo height. */
.mapo-menu-photo{position:relative;isolation:isolate;overflow:hidden;background:#ba794d}
.mapo-menu-photo::before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/mapo-original.jpg') 0 0/500% auto no-repeat}
.mapo-menu-photo .mapo-photo-window{flex:none;mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 95%,transparent)}
/* Persistent shortcuts on desktop and mobile. */
.quick-nav{position:fixed;z-index:40;right:24px;bottom:24px;display:flex;gap:0;padding:6px;border:1px solid #c7b18b;border-radius:12px;background:#f5edddf5;box-shadow:0 8px 28px #201b1833;backdrop-filter:blur(12px);color:#302a23}
.quick-nav a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;font-size:.9rem;font-weight:600;white-space:nowrap;border-radius:7px}
.quick-nav a:first-child{background:#933e30;color:#fff9ec}
.quick-nav a:hover{background:#e4d7c0;color:#302a23}.quick-nav a:focus-visible{outline:2px solid #933e30;outline-offset:2px}
#ramen,#parking{scroll-margin-top:100px}footer{padding-bottom:120px}
@media(max-width:620px){.quick-nav{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px}.quick-nav a{font-size:.82rem;padding:10px 4px;min-height:48px}footer{padding-bottom:calc(120px + env(safe-area-inset-bottom))}}

.access-actions{gap:32px;width:100%;min-width:0}
.visit-actions{display:flex;flex-wrap:wrap;gap:12px;width:100%}
.visit-actions .button{flex:1 1 190px;text-align:center}
.social-group{width:100%;padding-top:24px;border-top:1px solid #c7b18b55}
.social-group>p{margin:0 0 14px}
.social-links{display:flex;flex-wrap:wrap;gap:12px 24px}
.social-links .text-link{display:inline-flex;align-items:center;gap:9px;min-height:44px}
.social-links svg{width:22px;height:22px;flex:none}
.new-flavour-card{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:40px 20px;border:1px solid #bfa989;background:linear-gradient(135deg,#f5eddfdd,#e6d8c3dd),url('assets/asanoha.svg');text-align:center;color:#694b35;min-height:330px}
.new-flavour-kicker{font-size:.68rem;letter-spacing:.22em;margin:0;color:#934130}
.new-flavour-bowl{width:clamp(110px,12vw,180px);height:auto;color:#9a6141}
.new-flavour-card h3{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.8rem);font-weight:500;line-height:1.6;margin:0;text-wrap:balance}
.new-flavour-seal{border:1px solid #a94d38;color:#a94d38;font-family:var(--serif);writing-mode:vertical-rl;letter-spacing:.16em;padding:8px 3px;font-size:.8rem;transform:rotate(-5deg);margin-top:6px}
@media(max-width:620px){.new-flavour-card{padding:30px 18px;min-height:300px;gap:18px}}

.night-section>img{object-position:65% center;filter:none}
@media(max-width:900px){.night-section>img{height:auto;aspect-ratio:16/9;object-fit:contain}}

.night-section>img{height:auto;min-height:660px;align-self:stretch;object-fit:cover;object-position:50% 65%}
@media(max-width:900px){.night-section>img{min-height:0;aspect-ratio:1/1;height:auto;object-fit:contain}}
