:root{color-scheme:dark;--ink:#171817;--paper:#f6f3ed;--muted:#beb9ae;--accent:#d2ad75;--line:#ffffff25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.skip-link{position:fixed;top:-80px;left:20px;background:var(--paper);color:var(--ink);padding:10px;z-index:100}.skip-link:focus{top:20px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:0 6%;border-bottom:1px solid var(--line)}.wordmark{font-size:14px;display:flex;gap:8px;align-items:baseline;white-space:nowrap}.wordmark strong{font-family:serif;font-size:34px;font-weight:600;letter-spacing:.1em}.wordmark span{font-size:14px;color:var(--accent)}nav{display:flex;gap:38px;font-size:14px}nav a:hover{color:var(--accent)}.header-contact{font-size:14px;border-bottom:1px solid var(--accent);padding:7px 0}.hero{min-height:720px;display:grid;grid-template-columns:47% 53%;position:relative}.hero-copy{padding:94px 0 84px 13%;z-index:1}.eyebrow{color:var(--accent);font-size:14px;letter-spacing:.16em;margin:0 0 28px}h1{font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(42px,4.8vw,76px);line-height:1.4;font-weight:600;letter-spacing:.07em;margin:0 0 28px}p{margin:0 0 24px}.hero-copy>p:not(.eyebrow){color:var(--muted);line-height:2}.hero-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:12px 28px;font-size:14px;letter-spacing:.08em}.primary{background:var(--accent);color:var(--ink)}.primary:hover{background:#e9c791}.quiet{border:1px solid var(--line)}.quiet:hover{border-color:var(--accent)}.hero-photo{position:relative;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),transparent 24%),linear-gradient(0deg,var(--ink),transparent 24%)}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;padding:24px 6%;font-size:13px;letter-spacing:.15em;border-bottom:1px solid var(--line);color:var(--muted)}@media(max-width:760px){.site-header{padding:0 6%;height:86px;gap:12px}nav{gap:18px}nav a:nth-child(2){display:none}.header-contact{display:none}.wordmark strong{font-size:28px}.wordmark span{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:54px 7% 36px}.hero-photo{height:380px;grid-row:2}.hero-photo:after{background:linear-gradient(180deg,var(--ink),transparent 20%),linear-gradient(0deg,var(--ink),transparent 20%)}.hero-foot{font-size:12px;flex-wrap:wrap}.hero h1{font-size:clamp(40px,9vw,64px)}.hero-actions{gap:12px}.button{padding:12px 22px}}
/* Original Shiki identity: ink, warm gold, generous Japanese-inspired typography. */
.brand{display:flex;align-items:center;gap:26px}.brand img{width:86px;height:68px;filter:invert(1);object-fit:contain}.brand>span{font-size:13px;border-left:1px solid var(--line);padding-left:25px;letter-spacing:.15em;color:var(--muted)}
.hero-photo{align-self:stretch;min-width:0}.hero-photo img{height:100%;position:absolute;width:100%;object-fit:cover;object-position:center top;clip-path:inset(0 0 18% 0)}.hero-photo:after{background:linear-gradient(90deg,var(--ink),transparent 20%),linear-gradient(0deg,var(--ink) 16%,transparent 36%)}
.section-wrap{padding:100px 6%;position:relative;max-width:1680px;margin:auto}.section-label{font-size:14px;letter-spacing:.1em;display:flex;align-items:center;gap:18px;margin-bottom:28px}.section-number{font-size:12px;letter-spacing:.08em;color:var(--accent);border-top:1px solid var(--accent);padding-top:5px}.intro{display:grid;grid-template-columns:25% 75%;border-bottom:1px solid var(--line);overflow:hidden}.intro-main{z-index:1}h2{font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(30px,3vw,48px);line-height:1.6;letter-spacing:.05em;font-weight:500;margin:0 0 30px}.intro-main>p:not(.eyebrow){color:var(--muted);line-height:2.1}.story-mark{position:absolute;right:3%;bottom:10%;width:230px;height:auto;filter:invert(1);opacity:.05;pointer-events:none}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:52px}.section-heading h2{margin:0}.section-heading>p{color:var(--muted);margin:0;font-size:15px;line-height:2}.dish-feature{display:grid;grid-template-columns:56% 44%;align-items:center;margin-bottom:72px;gap:0}.dish-image{overflow:hidden;aspect-ratio:1.38;background:#111211}.dish-image img{width:100%;height:100%;object-fit:cover}.ramen-image img{object-fit:cover;object-position:top;aspect-ratio:1.25;height:auto;transform:translateY(-2%)}.dish-copy{padding:25px 0 25px 14%}.dish-copy h3{font-size:clamp(24px,2.4vw,36px);line-height:1.6;letter-spacing:.04em;margin:0 0 22px;font-weight:500}.dish-copy>p:not(.eyebrow){color:var(--muted);line-height:2;font-size:16px}.flavor-notes{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px}.flavor-notes span{font-size:13px;color:var(--accent)}.flavor-notes span+span:before{content:"／";margin-right:12px;color:#726659}.reverse{grid-template-columns:44% 56%}.reverse .dish-image{grid-column:2;grid-row:1}.reverse .dish-copy{grid-column:1;grid-row:1;padding:25px 14% 25px 0}.menu-link-row{display:flex;gap:25px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:30px}.menu-link-row p{margin:0;font-size:14px;color:var(--muted)}.text-link{font-size:14px;color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:5px;white-space:nowrap}.text-link span{margin-left:20px}.tsukemen-guide{max-width:none;display:grid;grid-template-columns:45% 55%;background:#d2ad75;color:#28221b;padding-top:85px;padding-bottom:85px}.tsukemen-guide .eyebrow{color:#58452d}.guide-heading h2{font-size:clamp(32px,3.2vw,50px)}.guide-heading>p:last-child{color:#594831;font-size:15px;line-height:2}.guide-steps{list-style:none;padding:0;margin:0;counter-reset:guide}.guide-steps li{display:flex;gap:30px;padding:26px 0;border-bottom:1px solid #28221b35}.guide-steps li:first-child{padding-top:0}.guide-steps li:last-child{border-bottom:0;padding-bottom:0}.guide-steps li>span{flex:none;display:grid;place-items:center;border:1px solid #28221b66;width:43px;height:43px;border-radius:50%;font-family:serif;font-size:20px}.guide-steps h3{font-size:20px;letter-spacing:.04em;line-height:1.6;margin:0 0 10px;font-weight:600}.guide-steps p{font-size:16px;color:#51412c;margin:0;line-height:1.9;max-width:570px}.news-section{display:grid;grid-template-columns:25% 75%;border-bottom:1px solid var(--line)}.news-row{display:flex;align-items:start;gap:26px;padding:25px 0}.news-type{font-size:12px;color:var(--accent);border:1px solid #d2ad7570;padding:3px 9px;white-space:nowrap}.news-row h3{font-size:20px;font-weight:500;margin:0 0 12px;line-height:1.6}.news-row p{font-size:15px;color:var(--muted);margin:0}.archive{margin-top:15px;border-top:1px solid var(--line);font-size:14px}.archive summary{display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none;padding:25px 0;color:var(--muted)}.archive summary::-webkit-details-marker{display:none}.archive summary>span:first-child{font-size:12px;color:var(--accent)}.archive-title{flex:1}.expand{font-size:21px;flex:none}.archive[open] .expand{transform:rotate(45deg)}.archive>p{padding:0 0 10px 92px;line-height:2;color:var(--muted);font-size:14px}.visit-section{display:grid;grid-template-columns:46% 54%;gap:0;padding-top:110px;padding-bottom:100px}.visit-heading h2{font-size:clamp(36px,4vw,58px)}.visit-heading>p{color:var(--muted);font-size:15px}.visit-actions{display:flex;flex-wrap:wrap;gap:15px;padding-right:30px}.visit-details{padding-top:45px}.visit-details dl{margin:0}.visit-details dl>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}dt{font-size:14px;color:var(--muted)}dd{margin:0;font-size:16px}dd a:hover{color:var(--accent)}.hours-line{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}.hours-line+.hours-line{margin-top:8px}.hours-line>span{color:var(--muted);font-size:14px}.hours-line strong{font-size:20px;font-family:Arial,sans-serif;letter-spacing:.04em;font-weight:400}.hours-line small{font-size:12px;color:var(--muted)}.dining-note{margin-top:30px}.dining-note h3{font-size:14px;color:var(--accent);font-weight:400;margin:0 0 8px}.dining-note p{font-size:14px;color:var(--muted);line-height:2;margin:0}.site-footer{display:flex;align-items:center;gap:35px;padding:30px 6%;border-top:1px solid var(--line);background:#111211;flex-wrap:wrap}.footer-brand img{width:74px;height:58px;object-fit:contain;filter:invert(1)}.site-footer p{font-size:14px;color:var(--muted);margin:0;flex:1}.site-footer>span{font-size:12px;color:#a5a096}.back-top{font-size:12px;color:var(--muted)}.mobile-actions{display:none}
@media(min-width:1681px){.hero{max-width:1680px;margin:auto}.tsukemen-guide{padding-left:max(6%,calc((100% - 1480px)/2));padding-right:max(6%,calc((100% - 1480px)/2));gap:45px;grid-template-columns:42% 1fr}}
@media(max-width:1000px){.section-wrap{padding-top:75px;padding-bottom:75px}.intro,.news-section{grid-template-columns:20% 80%}.dish-copy{padding-left:9%}.reverse .dish-copy{padding-right:9%}.hero-copy{padding-top:65px}.hero{min-height:630px}.visit-section{grid-template-columns:42% 58%}.hours-line{gap:12px}.visit-details dl>div{grid-template-columns:80px 1fr}.hero-photo img{object-position:60% top}}
@media(max-width:760px){.brand{gap:14px}.brand img{width:76px;height:60px}.brand>span{padding-left:13px;font-size:12px}.site-header nav{gap:20px;font-size:13px}.hero{min-height:0}.hero-copy{padding:44px 7% 24px}.hero h1{font-size:clamp(40px,10vw,64px)}.hero-photo{height:330px}.hero-photo img{height:auto;min-height:100%;object-fit:cover;object-position:center top;clip-path:inset(0 0 19% 0)}.hero-photo:after{background:linear-gradient(180deg,var(--ink),transparent 15%),linear-gradient(0deg,var(--ink),transparent 25%)}.hero-foot{padding:20px 7%;gap:6px;flex-direction:column}.section-wrap{padding:60px 7%}.intro,.news-section{display:block}.intro-main h2{font-size:29px}.section-label{margin-bottom:26px}.intro-main>.eyebrow{font-size:12px}.intro-main>p:not(.eyebrow){font-size:15px}.desktop-break{display:none}.story-mark{width:160px;right:-15px;bottom:35px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.section-heading>p br{display:none}.section-heading h2{font-size:30px}.dish-feature,.reverse{display:flex;flex-direction:column;gap:0;margin-bottom:42px;align-items:stretch}.dish-image{aspect-ratio:1.25}.dish-copy,.reverse .dish-copy{padding:25px 0 0}.dish-copy .eyebrow{margin-bottom:12px;font-size:12px}.dish-copy h3{font-size:26px;margin-bottom:15px}.dish-copy>p:not(.eyebrow){font-size:15px}.flavor-notes{padding-top:17px;gap:9px}.flavor-notes span{font-size:12px}.menu-link-row{align-items:start;flex-direction:column;gap:20px}.tsukemen-guide{display:block}.guide-heading{margin-bottom:35px}.guide-heading h2{font-size:34px;margin-bottom:20px}.guide-heading .eyebrow{font-size:12px}.guide-steps li{gap:18px}.guide-steps li>span{width:34px;height:34px;font-size:16px}.guide-steps h3{font-size:18px}.guide-steps p{font-size:15px}.news-content h2{font-size:30px;margin-bottom:8px}.news-row{gap:16px;flex-direction:column}.news-row h3{font-size:19px}.archive summary{gap:12px;flex-wrap:wrap}.archive-title{flex-basis:75%;order:3}.archive summary .expand{margin-left:auto}.archive p{padding-left:0}.visit-section{display:block}.visit-heading h2{font-size:40px}.visit-actions{padding-right:0;gap:12px}.visit-actions .button{font-size:13px;padding:12px 18px}.visit-details{padding-top:22px}.visit-details dl>div{grid-template-columns:70px 1fr;gap:12px}.hours-line{gap:10px}.hours-line strong{font-size:18px}.hours-line small{font-size:12px;white-space:nowrap}.visit-details dd{font-size:15px}.site-footer{padding:28px 7% 100px;gap:22px}.site-footer p{font-size:12px}.site-footer>span{flex-basis:calc(100% - 100px)}.mobile-actions{display:flex;position:fixed;inset:auto 0 0;z-index:20;gap:0;padding-bottom:env(safe-area-inset-bottom,0px);background:#171817f5;border-top:1px solid #d2ad7566;backdrop-filter:blur(12px)}.mobile-actions a{display:flex!important;align-items:center;justify-content:center;min-height:57px;flex:1;font-size:13px;letter-spacing:.07em}.mobile-actions a:last-child{background:var(--accent);color:var(--ink)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep Chinese body text readable on phones and enlarged text settings. */
.intro-main>p:not(.eyebrow),.dish-copy>p:not(.eyebrow),.guide-steps p,.news-row p,.guide-heading>p:last-child,.visit-heading>p,.visit-details dd{font-size:1rem}
.button,.site-header nav,.header-contact,.text-link,.mobile-actions a,.visit-actions .button{font-size:.875rem}
@media(max-width:360px){.brand>span{display:none}.site-header nav{gap:16px}.hero-actions .button{padding-inline:18px}.hours-line{gap:6px}.hours-line small{flex-basis:100%}.visit-details dl>div{grid-template-columns:64px 1fr}.visit-actions{align-items:stretch;flex-direction:column}}
.hero-photo img{height:100%;min-height:0;clip-path:none;object-fit:cover;object-position:center center}
.hero-photo:after{background:linear-gradient(90deg,var(--ink),transparent 22%),linear-gradient(0deg,var(--ink),transparent 30%)}
.ramen-image img{height:100%;aspect-ratio:auto;transform:none;object-position:center 45%}
@media(max-width:760px){.hero-photo img{height:100%;object-position:center 38%}.hero-photo:after{background:linear-gradient(180deg,var(--ink),transparent 12%),linear-gradient(0deg,var(--ink),transparent 25%)}}
@media(max-width:760px){.intro-main h2{font-size:clamp(24px,7.2vw,29px)}}
/* Show the complete Taiwan-store tsukemen set without cropping its dishes. */
.hero-photo img{object-fit:contain;object-position:center}
.hero-photo:after{background:linear-gradient(90deg,var(--ink),transparent 12%),linear-gradient(0deg,var(--ink),transparent 12%);pointer-events:none}
.signature .dish-image{aspect-ratio:3/2}
@media(max-width:760px){.hero-photo{height:auto;min-height:0;aspect-ratio:3/2}.hero-photo img{object-position:center}.hero-photo:after{background:linear-gradient(180deg,var(--ink),transparent 8%),linear-gradient(0deg,var(--ink),transparent 8%)}}
/* Original illustrated guide with readable steps alongside it. */
.guide-jump{display:inline-flex;align-items:center;margin-top:24px}
.tsukemen-guide{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:center}
.guide-visual,.guide-reading{min-width:0}
.guide-heading h2{font-size:clamp(28px,3vw,44px);margin-bottom:20px}
.guide-heading .eyebrow{margin-bottom:16px}
.guide-poster{margin:28px 0 0}
.guide-poster>a{display:block;max-width:560px}
.guide-poster img{width:100%;height:auto}
.guide-poster figcaption{margin-top:12px;font-size:.875rem}
.guide-poster figcaption a{text-decoration:underline;text-underline-offset:5px}
.guide-poster a:focus-visible{outline-color:#28221b}
.guide-temperature{margin-bottom:34px;padding-bottom:28px;border-bottom:1px solid #28221b55}
.guide-temperature h3{font-family:"Noto Serif TC","Songti TC",serif;font-size:1.5rem;font-weight:500;margin:0 0 14px}
.guide-temperature p,.guide-temperature dd{font-size:1rem;color:#51412c;line-height:1.9}
.guide-temperature p{margin-bottom:18px}
.guide-temperature dl{margin:0;display:grid;gap:14px}
.guide-temperature dl>div{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:12px}
.guide-temperature dt{font-size:1rem;color:#28221b}
.guide-temperature dd{margin:0}
@media(max-width:760px){.guide-visual{margin-bottom:38px}.guide-heading{margin-bottom:0}.guide-heading h2{font-size:1.875rem}.guide-poster{margin-top:24px}.guide-poster>a{max-width:none}.guide-temperature{margin-bottom:28px}.guide-steps h3{font-size:1.125rem}.guide-steps p{font-size:1rem}}
/* Keep the full brand promise readable within the existing hero columns. */
.hero h1{font-size:clamp(1.625rem,3.2vw,3.625rem);line-height:1.6}
@media(max-width:760px){.hero h1{font-size:clamp(1.625rem,7.8vw,2.75rem)}}
/* The supplied A1 poster stays complete, with all typography and dishes intact. */
.hero-copy{align-self:center}
.hero-poster{display:flex;align-items:center;justify-content:center;height:auto;min-height:0;aspect-ratio:auto;padding:32px 8% 36px 0}
.hero-poster>a{display:block;width:100%;max-width:560px}
.hero-poster img{position:static;width:100%;height:auto;min-height:0;object-fit:contain;clip-path:none}
.hero-poster:after{display:none}
/* Tokyo source photography from the brand introduction, behind live story text. */
.intro{isolation:isolate}
.story-background{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;pointer-events:none}
.intro:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(23,24,23,.54),rgba(23,24,23,.83) 28%,rgba(23,24,23,.94)),linear-gradient(0deg,rgba(23,24,23,.55),transparent 32%,transparent 75%,rgba(23,24,23,.35))}
.intro>.section-label,.intro-main{position:relative;z-index:2}
.intro .story-mark{z-index:2}
.story-location{position:absolute;left:6%;bottom:24px;z-index:2;margin:0;color:var(--accent);font-size:.875rem;letter-spacing:.1em}
@media(max-width:760px){.hero-poster{height:auto;aspect-ratio:auto;padding:12px 7% 32px}.hero-poster>a{max-width:480px}.hero-poster img{height:auto;min-height:0}.story-background{object-position:47% center}.intro:before{background:linear-gradient(180deg,rgba(23,24,23,.84),rgba(23,24,23,.9) 70%,rgba(23,24,23,.7))}.story-location{left:7%;bottom:20px}}
/* A restrained ink-and-gold frame sits outside the original guide artwork. */
.guide-poster>a{
  position:relative;
  padding:18px;
  border:1px solid #775934;
  background:#25241f;
  box-shadow:0 12px 28px #39281530,0 2px 5px #39281520;
}
.guide-poster>a:before{
  content:"";position:absolute;inset:8px;
  border:1px solid #d2ad7570;
  pointer-events:none;
}
.guide-poster>a:after{
  content:"";position:absolute;inset:4px;
  background:
    linear-gradient(#e3bd82,#e3bd82) left top/22px 2px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) left top/2px 22px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) right top/22px 2px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) right top/2px 22px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) left bottom/22px 2px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) left bottom/2px 22px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) right bottom/22px 2px no-repeat,
    linear-gradient(#e3bd82,#e3bd82) right bottom/2px 22px no-repeat;
  pointer-events:none;
}
.guide-poster img{box-shadow:0 0 0 1px #f6f3ed24}
@media(max-width:760px){.guide-poster>a{padding:12px}.guide-poster>a:before{inset:6px}.guide-poster>a:after{inset:3px}}
/* Reveal the Tokyo photograph while keeping the story on a readable ink panel. */
.intro{grid-template-columns:48% 52%;align-items:start;min-height:640px}
.intro:before{background:linear-gradient(90deg,rgba(23,24,23,.16),rgba(23,24,23,.3)),linear-gradient(0deg,rgba(23,24,23,.7),transparent 28%,transparent 80%,rgba(23,24,23,.25))}
.intro>.section-label{justify-self:start;align-self:start;margin:0;padding:10px 14px;background:rgba(17,18,17,.82)}
.intro-main{padding:36px clamp(24px,3vw,44px);background:rgba(17,18,17,.88);border:1px solid #d2ad7545;box-shadow:0 12px 35px #00000025}
.intro-main>p:last-child{margin-bottom:0}
.intro .story-mark{display:none}
.story-location{padding:5px 12px;background:rgba(17,18,17,.8)}
@media(max-width:760px){
  .intro{min-height:0;padding-top:36px;padding-bottom:76px}
  .story-background{height:360px;object-position:46% center}
  .intro:before{background:linear-gradient(180deg,rgba(23,24,23,.15),rgba(23,24,23,.22) 190px,var(--ink) 365px)}
  .intro>.section-label{display:inline-flex;margin-bottom:145px}
  .intro-main{padding:28px 22px;background:rgba(17,18,17,.94)}
  .story-location{bottom:22px}
}

/* User-directed palette: predominantly black, with warm orange and red accents. */
:root{color-scheme:dark;--ink:#141414;--paper:#ede9e2;--surface:#1c1c1c;--muted:#b9b5ad;--accent:#ef914b;--red:#ef7563;--line:#ffffff24}
body{background:var(--ink);color:var(--paper)}
.surface-dark{color-scheme:dark;background:var(--ink);color:var(--paper)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--accent)}
.site-header{background:#101010;color:var(--paper);--muted:#c7c2ba;border-bottom-color:#ffffff1f}
.site-header nav a:hover{color:#fff;text-decoration:underline;text-underline-offset:8px}
.brand>span{border-left-color:#ffffff30;font-size:.875rem}
.header-contact{border-bottom-color:#ef914b80}
.site-header a:focus-visible,.site-footer a:focus-visible,.mobile-actions a:focus-visible{outline-color:var(--paper)}
.button{border:1px solid transparent;transition:background-color .18s,border-color .18s}
.primary{background:var(--accent);color:#141414}
.primary:hover{background:#ffa763;color:#141414}
.quiet{border-color:#c74b426b}
.quiet:hover{border-color:var(--red);color:var(--red)}
.hero{grid-template-columns:44% 56%;max-width:1680px;min-height:730px;margin:auto}
.hero.surface-dark{background:radial-gradient(ellipse at 72% 36%,#262626 0,#191919 58%,#141414 100%)}
.hero-copy{min-width:0;align-self:center;padding:72px 8px 72px 13.65%}
.hero h1{font-size:clamp(1.625rem,2.95vw,3.2rem);line-height:1.65;letter-spacing:.055em;font-weight:500}
.hero-copy>p:not(.eyebrow){font-size:1rem;line-height:2.05}
.hero-actions{gap:16px;margin-top:34px}
.hero-dishes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:16px 24px;min-width:0;padding:34px 9% 26px 2%}
.hero-dish{align-self:end;justify-self:center;width:68%;max-width:190px;min-width:0;margin:0;text-align:center}
.hero-dish img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;filter:drop-shadow(0 8px 8px #00000066)}
.hero-dish-main{grid-column:1/-1;width:100%;max-width:650px}
.hero-dish-main img{aspect-ratio:1436/997;filter:drop-shadow(0 14px 12px #00000080)}
.hero-dish figcaption{margin-top:7px;color:var(--muted);font-size:.875rem;line-height:1.7;letter-spacing:.03em}
.hero-dish-main figcaption{margin-top:12px;color:var(--paper);font-size:1.125rem;font-weight:500;letter-spacing:.12em}
.hero-foot{padding-top:20px;padding-bottom:20px;border-top:1px solid var(--line);border-bottom:0;font-size:.875rem;letter-spacing:.08em}
.section-number{font-size:.8125rem;color:var(--red);border-top-color:var(--red)}
/* Photographs are concentrated in the origin story and Banqiao visit section. */
.intro{background:var(--ink);color:var(--paper);--muted:#c7c2ba}
.intro:before{background:linear-gradient(90deg,#14141426,#1414144d),linear-gradient(0deg,#141414c4,transparent 30%,transparent 80%,#14141440)}
.intro>.section-label,.story-location{background:#141414e6}
.intro .eyebrow{color:var(--accent)}
.intro .section-number{color:var(--red)}
.story-location{color:var(--paper)}
.intro-main{background:#171717ed;border-color:#ffffff24;box-shadow:0 12px 35px #00000040}
.story-profile{margin-top:32px;padding-top:24px;border-top:1px solid #ffffff24}
.story-profile>a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;max-width:410px;padding:13px 16px;border:1px solid #ef914b80;color:var(--paper);transition:border-color .18s,background-color .18s}
.story-profile>a:hover{border-color:var(--accent);background:#ef914b0d}
.story-profile-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ef756370;color:var(--red);font-family:"Noto Serif TC","Songti TC",serif;font-size:1.1rem}
.story-profile strong{display:block;font-size:.9375rem;font-weight:500;letter-spacing:.08em}
.story-profile small{display:block;margin-top:2px;color:var(--muted);font-size:.75rem;letter-spacing:.04em}
.story-profile-arrow{color:var(--accent);font-size:1.2rem}
.story-profile>p{margin:9px 0 0;color:var(--muted);font-size:.75rem;line-height:1.7}
.menu-section{background:var(--ink)}
.section-heading>p{font-size:1rem}
.dish-image{background:var(--ink)}
.flavor-notes span{color:var(--muted);font-size:.875rem}
.flavor-notes span+span:before{color:#92958e}
.tsukemen-guide.surface-dark{background:var(--surface);max-width:1680px}
.tsukemen-guide .eyebrow{color:var(--accent)}
.guide-heading>p:last-child,.guide-temperature p,.guide-temperature dd,.guide-steps p{color:var(--muted);font-size:1rem}
.guide-temperature dt{color:var(--paper)}
.guide-temperature,.guide-steps li{border-bottom-color:var(--line)}
.guide-steps li>span{width:38px;height:38px;border-color:#ef756370;color:var(--red);font-size:1.125rem}
.guide-steps h3{font-weight:500}
.guide-poster>a{padding:14px;background:#101010;border-color:#ffffff24;box-shadow:0 12px 26px #00000055}
.guide-poster>a:before{inset:6px;border-color:#ef914b40}
.guide-poster>a:after{inset:3px;background:linear-gradient(#ef914b,#ef914b) left top/16px 1px no-repeat,linear-gradient(#ef914b,#ef914b) left top/1px 16px no-repeat,linear-gradient(#ef914b,#ef914b) right bottom/16px 1px no-repeat,linear-gradient(#ef914b,#ef914b) right bottom/1px 16px no-repeat}
.guide-poster figcaption{color:var(--muted)}
.guide-poster a:focus-visible{outline-color:var(--accent)}
.news-section{background:var(--ink)}
.news-type{font-size:.875rem;color:var(--red);border-color:#ef756366}
.archive summary>span:first-child{font-size:.875rem}
.visit-section{isolation:isolate;overflow:hidden;background:var(--surface);--muted:#c7c2ba}
.visit-section>.section-background{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:28% center;opacity:.15;pointer-events:none}
.visit-section:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#1c1c1c40,#1c1c1cba 55%);pointer-events:none}
.visit-section>:not(.section-background){position:relative;z-index:2;min-width:0}
.visit-details dl>div{grid-template-columns:100px minmax(0,1fr)}
.hours-line small{font-size:.8125rem}
.site-footer{background:#101010;color:var(--paper);--muted:#c7c2ba;border-top-color:#ffffff1f}
.site-footer p,.back-top{font-size:.875rem}
.site-footer>span{color:#b9b5ad;font-size:.8125rem}
@media(max-width:1100px){
 .hero-copy{padding-top:56px;padding-bottom:56px}
 .hero-dishes{gap:14px;padding-right:7%}
 .hero-dish{width:78%}
 .hero-dish-main{width:100%}
 .hero{min-height:650px}
 .visit-details dl>div{grid-template-columns:80px minmax(0,1fr)}
}
@media(max-width:760px){
 .hero{grid-template-columns:1fr;min-height:0}
 .hero-dishes{grid-row:1;gap:14px 22px;padding:26px 5% 16px}
 .hero-dish{width:72%;max-width:150px}
 .hero-dish-main{width:100%;max-width:540px}
 .hero-dish figcaption{font-size:.875rem;letter-spacing:0;margin-top:4px}
 .hero-dish-main figcaption{font-size:1rem;letter-spacing:.08em;margin-top:10px}
 .hero-copy{grid-row:2;padding:28px 7% 42px}
 .hero-copy .eyebrow{margin-bottom:18px}
 .hero h1{font-size:clamp(1.625rem,7.4vw,2.75rem);margin-bottom:20px}
 .hero-actions{gap:12px;margin-top:28px}
 .hero-foot{grid-row:3}
 .intro:before{background:linear-gradient(180deg,#14141426,#14141438 190px,var(--ink) 365px)}
 .intro-main{background:#171717f2}
 .flavor-notes span{font-size:.875rem}
 .guide-poster>a{padding:11px}
 .guide-poster>a:before{inset:5px}
 .guide-poster>a:after{inset:2px}
 .guide-steps li>span{width:34px;height:34px;font-size:1rem}
 .visit-details dl>div{grid-template-columns:70px minmax(0,1fr)}
 .mobile-actions{background:#141414f5;color:var(--paper);border-top-color:#ffffff30}
 .mobile-actions a{font-size:.875rem;letter-spacing:.04em}
 .mobile-actions a:last-child{background:var(--accent);color:#141414}
}
@media(max-width:380px){
 .brand>span{display:none}
 .hero-dishes{column-gap:12px}
 .hero-dish{width:84%}
 .hero-dish-main{width:100%}
 .visit-details dl>div{grid-template-columns:64px minmax(0,1fr)}
}

@media(min-width:1681px){.tsukemen-guide{padding-left:100px;padding-right:100px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px}}

/* Selected concept A: original Taiwan tsukemen fills the hero; type stays live. */
:root{--ink:#090909;--surface:#171717;--deep-red:#74151c}
html{scroll-padding-top:32px}
.site-header{position:absolute;inset:0 0 auto;z-index:10;height:174px;align-items:flex-start;padding-top:30px;border:0;background:transparent}
.site-header .brand{gap:20px;align-items:flex-start}
.site-header .brand img{width:152px;height:118px}
.site-header .brand>span{margin-top:17px;color:var(--paper)}
.site-header nav{padding-top:14px;margin-left:auto;gap:42px;letter-spacing:.14em}
.site-header .header-contact{margin-top:8px;color:var(--paper)}
.hero.hero-immersive{display:flex;flex-direction:column;isolation:isolate;overflow:hidden;width:100%;max-width:none;min-height:780px;min-height:clamp(780px,100svh,1080px);margin:0;background:#080808}
.hero-immersive .hero-backdrop{position:absolute;z-index:-2;left:2%;top:-6%;width:112%;max-width:none;height:112%;object-fit:cover;object-position:50% 50%;pointer-events:none}
.hero-immersive:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,#080808f5 0%,#080808d9 23%,#080808ad 40%,#08080845 61%,#08080800 83%),linear-gradient(180deg,#08080880 0%,#08080808 24%,#08080800 73%,#080808cc 100%)}
.hero-immersive .hero-copy{position:relative;z-index:1;align-self:stretch;display:flex;flex:1;flex-direction:column;justify-content:center;min-width:0;padding:230px 6% 120px}
.hero-promise{position:relative;width:fit-content;max-width:100%}
.hero-promise:before{content:"";position:absolute;left:-25px;top:5px;bottom:4px;width:3px;background:#a7262e}
.hero-immersive .eyebrow{font-size:clamp(.8125rem,1.05vw,1rem);margin-bottom:24px;color:var(--accent);letter-spacing:.2em}
.hero-immersive h1{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:clamp(2rem,4.2vw,4.75rem);font-weight:500;line-height:1.55;letter-spacing:.045em;margin:0;color:#f4f0e8;text-shadow:0 2px 18px #00000040}
#story-title{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-weight:500}
.hero-immersive .hero-actions{gap:40px;margin-top:44px}
.hero-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:50px;padding:8px 0;font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1rem,1.35vw,1.375rem);letter-spacing:.15em;border-bottom:2px solid transparent}
.hero-link span{color:var(--accent);font-family:serif;font-size:1.5em;line-height:1}
.hero-link-menu{border-bottom-color:var(--accent)}
.hero-link:hover{color:var(--accent);border-bottom-color:var(--accent)}
.hero-immersive .hero-foot{position:relative;z-index:1;margin:0 6%;padding:22px 0 28px;border-top:1px solid #ffffff30;color:#d3cec6;gap:28px;font-size:.8125rem}

/* Gina reference: black negative space, offset food images and fine text frames. */
.menu-section{padding-top:130px;padding-bottom:120px}
.menu-section .section-heading{margin-bottom:80px}
.dish-feature{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:7%;margin-bottom:110px}
.dish-feature .dish-copy{padding:34px clamp(22px,2.6vw,42px);border:1px solid #ffffff40}
.dish-copy h3{font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.5rem,2.2vw,2rem)}
.dish-copy .eyebrow{font-size:.8125rem;letter-spacing:.12em}
.dish-feature.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);margin-left:5%;margin-top:120px}
.reverse .dish-copy{grid-column:1;padding:34px clamp(22px,2.6vw,42px)}
.reverse .dish-image{grid-column:2;aspect-ratio:1/1;max-width:580px;justify-self:end;width:100%}
.chintan .dish-image{aspect-ratio:3/2}
.news-section{background:#171717}

/* Concept B's original Banqiao photograph, with a restrained crimson info panel. */
.visit-section{max-width:none;min-height:850px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:end;padding-top:140px;padding-bottom:100px;background:#0c0b0a}
.visit-section>.section-background{opacity:1;object-position:35% center}
.visit-section:before{background:linear-gradient(90deg,#08080836,#08080814 55%,#08080840),linear-gradient(180deg,#08080829 15%,#0808084d 40%,#080808ed 100%)}
.visit-heading{align-self:end;padding-top:200px;text-shadow:0 2px 18px #00000080}
.visit-heading .section-label{color:#f4f0e8}
.visit-heading h2{color:#f4f0e8}
.visit-heading>p{color:#ede9e2}
.visit-heading .section-number{color:#ffb286;border-top-color:#ffb286}
.visit-actions .quiet{background:#0c0b0ac9;border-color:#ffffff60}
.visit-section .visit-details{max-width:600px;justify-self:end;width:100%;padding:34px clamp(24px,3vw,48px);background:var(--deep-red);--muted:#ead5d0;--line:#ffffff30;box-shadow:0 15px 55px #00000030}
.visit-details dl>div{grid-template-columns:64px minmax(0,1fr);gap:18px}
.visit-details .dining-note h3{color:#ffd0a8}
.visit-details dd a:hover{color:#ffd0a8}
@media(max-width:1100px){
 .site-header{height:148px}
 .site-header .brand img{width:124px;height:96px}
 .site-header .brand>span,.site-header .header-contact{display:none}
 .site-header nav{gap:28px}
 .hero.hero-immersive{min-height:720px;min-height:max(720px,90svh)}
 .hero-immersive .hero-copy{padding-top:200px;padding-bottom:110px}
 .dish-feature{gap:5%}
 .dish-feature .dish-copy{padding:26px 22px}
 .visit-section{gap:5%;padding-top:100px;padding-bottom:70px}
 .visit-section .visit-details{padding:24px}
 .visit-details dl>div{gap:12px;grid-template-columns:58px minmax(0,1fr)}
 .visit-details .hours-line{gap:8px}
 .visit-details .hours-line small{flex-basis:100%}
}
@media(max-width:760px){
 .site-header{height:118px;padding:20px 7% 0;gap:16px}
 .site-header .brand img{width:94px;height:73px}
 .site-header nav{gap:20px;padding-top:12px;font-size:.8125rem;letter-spacing:.05em}
 .hero.hero-immersive{min-height:760px;min-height:max(760px,100svh)}
 .hero-immersive .hero-backdrop{left:0;top:0;width:100%;height:72%;object-position:69% center}
 .hero-immersive:before{background:linear-gradient(180deg,#08080899 0%,#0808080a 20%,#0808081a 35%,#080808db 59%,#080808 74%)}
 .hero-immersive .hero-copy{justify-content:flex-end;padding:390px 7% 44px}
 .hero-promise{padding-left:15px}
 .hero-promise:before{left:0;top:4px;bottom:4px;width:2px}
 .hero-immersive .eyebrow{font-size:.75rem;letter-spacing:.12em;margin-bottom:18px}
 .hero-immersive h1{font-size:clamp(1.5rem,6.9vw,3rem);line-height:1.65;letter-spacing:.025em}
 .hero-immersive .hero-actions{gap:32px;margin-top:28px;padding-left:15px}
 .hero-link{gap:22px;font-size:1rem}
 .hero-immersive .hero-foot{margin:0 7%;padding:18px 0 26px;flex-direction:row;flex-wrap:wrap;gap:8px 18px;font-size:.75rem;letter-spacing:.03em}
 .menu-section{padding-top:72px;padding-bottom:72px}
 .menu-section .section-heading{margin-bottom:38px}
 .dish-feature,.dish-feature.reverse{display:flex;gap:0;margin:0 0 64px}
 .dish-feature .dish-image{width:93%;align-self:flex-start}
 .dish-feature .dish-copy{margin:22px 0 0 7%;padding:26px 22px}
 .dish-feature.reverse .dish-image{align-self:flex-end;max-width:none}
 .dish-feature.reverse .dish-copy{margin:22px 7% 0 0}
 .visit-section{min-height:0;padding-top:340px;padding-bottom:60px}
 .visit-section>.section-background{height:560px;object-position:35% top}
 .visit-section:before{background:linear-gradient(180deg,#0808080a 0px,#0808081a 180px,#080808c9 390px,#080808 550px)}
 .visit-heading{padding-top:0}
 .visit-heading h2{font-size:2.5rem}
 .visit-section .visit-details{margin-top:36px;max-width:none;padding:24px}
 .visit-details dl>div{grid-template-columns:58px minmax(0,1fr)}
}

/* Show the complete Banqiao interior above the visit information. */
.visit-socials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;list-style:none;margin:30px 0 0;padding:20px 0 0;border-top:1px solid var(--line);max-width:440px}
.visit-socials li{min-width:0}
.visit-socials a{display:flex;align-items:center;gap:12px;min-height:58px;padding:8px 4px;color:var(--paper);font-size:.875rem;line-height:1.5}
.visit-socials img{width:24px;height:24px;flex:none;filter:brightness(0) invert(1);opacity:.9}
.visit-socials small{display:block;margin-top:2px;color:var(--muted);font-size:.75rem;letter-spacing:.04em}
.visit-socials a:hover{color:var(--accent)}
.visit-socials a:hover span{text-decoration:underline;text-underline-offset:4px}
.visit-section.visit-open{display:block;min-height:0;max-width:none;padding:0;background:var(--ink)}
.visit-section.visit-open:before{content:none}
.visit-section.visit-open>.section-background{position:static;inset:auto;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;opacity:1;pointer-events:auto}
.visit-information#visit{scroll-margin-top:88px}
.visit-open .visit-information{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:8%;width:100%;padding-top:76px;padding-bottom:84px}
.visit-open .visit-heading{align-self:start;padding:0;text-shadow:none}
.visit-open .visit-heading .section-number{color:var(--red);border-top-color:var(--red)}
.visit-open .visit-heading h2{font-size:clamp(2rem,3.3vw,3rem)}
.visit-open .visit-details{max-width:none;width:100%;justify-self:stretch;margin:0;padding:0;background:transparent;box-shadow:none;--muted:#b9b5ad;--line:#ffffff24;border-top:1px solid #a7262e}
.visit-open .visit-details dl>div{grid-template-columns:80px minmax(0,1fr);gap:20px}
.visit-open .visit-details .hours-line{gap:14px}
.visit-open .visit-details .hours-line small{flex-basis:auto}
.visit-open .dining-note h3{color:var(--accent)}
@media(max-width:1000px){
 .visit-open .visit-information{gap:6%;padding-top:60px;padding-bottom:64px}
 .visit-open .visit-details dl>div{grid-template-columns:64px minmax(0,1fr);gap:16px}
 .visit-open .visit-details .hours-line{gap:10px}
 .visit-open .visit-details .hours-line small{flex-basis:100%}
}
@media(max-width:760px){
 .visit-open .visit-information{display:block;padding:42px 7% 56px}
 .visit-open .visit-details{margin-top:36px}
 .visit-open .visit-heading h2{font-size:2rem}
 .visit-open .visit-details dl>div{grid-template-columns:58px minmax(0,1fr);gap:12px}
}
