@font-face{font-family:KawachiPages;src:url('/assets/food-extra.woff') format('woff');font-weight:400 500;font-display:swap;unicode-range:U+30D4,U+4F55,U+5177,U+5426,U+5BDD,U+5E2D,U+5E2F,U+5FD9,U+631F,U+6709,U+671D,U+6BD4,U+6D6E,U+7D61,U+7E41,U+8336,U+88DC,U+8CBB,U+8CFC,U+8EFD,U+9045,U+FF5C}
@font-face{font-family:KawachiPages;src:url('/assets/food-extra-bold.woff') format('woff');font-weight:600 900;font-display:swap;unicode-range:U+30D4,U+4F55,U+5177,U+5426,U+5BDD,U+5E2D,U+5E2F,U+5FD9,U+631F,U+6709,U+671D,U+6BD4,U+6D6E,U+7D61,U+7E41,U+8336,U+88DC,U+8CBB,U+8CFC,U+8EFD,U+9045,U+FF5C}
/* Food, local sake and a night in Yahata; shared subpage FV and navigation retained. */
.page-food-stay main [id]{scroll-margin-top:0}
.page-food-stay main p{text-wrap:pretty}
.food-hero-scene{position:relative;width:100%;aspect-ratio:4/4.2;max-height:560px;overflow:hidden;border-radius:3px 100px 3px 3px;background:#eee2ca}
.page-food-stay .page-intro .food-hero-scene img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 100%;border-radius:0;transform:scale(1.3);transform-origin:50% 100%}
.page-food-stay .page-intro-copy{min-width:0}
.food-jump-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.food-jump-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:46px;padding:10px 17px;border:1px solid #9b7c5c66;border-radius:3px 17px 3px 3px;background:#fffdf6a6;font-size:14px;font-weight:600;line-height:1.7;transition:background .2s,border-color .2s,transform .2s}
.food-jump-links a>span{font:19px/1.3 Arial,sans-serif;color:#8b6546}
.food-jump-links a:hover{background:#fffdf7;border-color:#8b6546;transform:translateY(-2px)}
.food-jump-links a:active{transform:none}
.food-jump-links a:focus-visible,.food-sources summary:focus-visible{outline:3px solid #98613a;outline-offset:5px}
.page-food-stay .page-section{padding-block:65px}
.page-food-stay .page-heading{margin-bottom:29px}
.page-food-stay .page-heading h2{line-height:1.6}
.page-food-stay #dining{background:linear-gradient(115deg,#fff0db,#f8eeea 65%,#edf3ec)}
.page-food-stay #dining .page-kicker{color:#8b6244}
.page-food-stay .page-dining-feature{grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:65px}
.page-food-stay .page-dining-feature .page-photo img{aspect-ratio:4/3;object-position:50% 50%;border-top-right-radius:70px}
.page-food-stay .page-prose{min-width:0}
.page-food-stay .page-prose h3{font-size:25px;line-height:1.65;margin-bottom:17px}
.page-food-stay .page-prose .page-kicker{margin-bottom:11px}
.page-food-stay .page-prose p+p{margin-top:18px}
.page-food-stay .page-prose .page-link{margin-right:0}
.food-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 27px}
.page-food-stay .food-links .page-link{min-height:46px}
.food-sub-link{font-size:14px;font-weight:400}
.page-food-stay .page-cafe{gap:65px;margin-top:48px;padding-top:43px;border-top:1px solid #9d78552b}
.page-food-stay .page-cafe .page-photo img{aspect-ratio:4/3;object-position:50% 50%;border-top-right-radius:54px}
.page-food-stay #local-sake{background:linear-gradient(115deg,#e5eee4,#f2f4e8 60%,#f6eedf)}
.page-food-stay #local-sake .page-kicker{color:#527158}
.page-food-stay .page-sake{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:65px}
.page-food-stay .food-sake-photo{width:100%;max-width:345px;padding:24px 21px 20px;border:1px solid #879d722e;border-radius:52% 52% 4px 4px;background:radial-gradient(ellipse at 50% 40%,#fffdf4e6 0 47%,#f8f1d978 75%,transparent);position:relative}
.page-food-stay .food-sake-photo img{width:100%;max-width:250px;aspect-ratio:1;object-fit:contain;margin:auto;mix-blend-mode:multiply}
.page-food-stay .food-sake-photo figcaption{display:grid;gap:5px;margin-top:17px;font-size:13px;line-height:1.85}
.food-sake-photo figcaption strong{font-size:15px;font-weight:600;color:#355743}
.page-food-stay .food-alcohol-note{margin-top:22px;padding-top:17px;border-top:1px solid #4d715b35;font-size:14px;line-height:1.9;color:#375b48}
.page-food-stay #stay{background:linear-gradient(120deg,#f8ece8,#edf1f1 65%,#e8f1ee)}
.page-food-stay #stay .page-kicker{color:#596d80}
.food-stay-primary{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:60px;align-items:center}
.food-stay-primary>.page-photo img{aspect-ratio:4/3;object-position:50% 55%;border-top-right-radius:65px}
.page-food-stay .food-hotel-record{display:grid;grid-template-columns:160px minmax(0,1fr);gap:17px;align-items:center;margin:27px 0 0;padding-top:23px;border-top:1px solid #173f3b25;max-width:510px}
.food-hotel-record img{width:160px;height:120px;object-fit:cover;object-position:50% 55%;border-radius:3px 22px 3px 3px}
.food-hotel-record figcaption{display:grid;gap:5px;margin:0;font-size:13px;line-height:1.85;color:#52675e}
.food-hotel-record figcaption strong{font-size:14px;font-weight:600;color:#355b50}
.food-stay-alternative{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin-top:37px;padding:25px 28px;border:1px solid #8fa69f50;border-radius:3px 26px 3px 3px;background:#fffef8ad}
.page-food-stay .food-stay-alternative h3{font-size:23px;margin:6px 0 11px}
.page-food-stay .food-stay-alternative p:not(.page-kicker){font-size:15px;line-height:1.95;max-width:760px}
.food-stay-alternative .page-link{white-space:normal;min-height:46px}
.page-food-stay #stay-notes{padding-block:38px}
.page-food-stay #stay-notes .page-notice{background:#fffefabf;padding:26px 28px}
.page-food-stay #stay-notes .page-notice h3{font-size:21px;line-height:1.7}
.page-food-stay #stay-notes .page-notice strong{font-weight:600}
.food-sources{margin-top:26px;border-block:1px solid #173f3b30}
.food-sources summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;min-height:58px;padding:15px 3px;font-size:14px;font-weight:600;line-height:1.8}
.food-sources summary::-webkit-details-marker{display:none}
.food-sources summary>span{font:22px/1.5 Arial,sans-serif;transition:transform .2s}
.food-sources[open] summary>span{transform:rotate(45deg)}
.food-sources .page-sources{margin:0 0 22px;padding-top:17px;border-top:1px solid #173f3b20}
.food-sources .page-sources>p:first-child{display:none}
.food-sources .page-sources .page-link{min-height:44px}
.page-food-stay #next{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#f7e7d1,#edf4ed)}
.page-food-stay #next::before{content:'';position:absolute;z-index:-1;width:240px;height:240px;right:5%;top:-165px;border:1px solid #a7865525;border-radius:50%;box-shadow:0 0 0 27px #a7865509,0 0 0 54px #a7865505;pointer-events:none}
.page-food-stay #next .page-related{gap:22px}
.page-food-stay #next .page-link{min-height:82px;padding:20px 23px;border:1px solid #173f3b35;border-radius:3px 22px 3px 3px;background:#fffef9ab;font-size:16px;line-height:1.8;transition:background .2s,border-color .2s,transform .2s}
.page-food-stay #next .page-link:hover{background:#fffdf5;border-color:#98613a;transform:translateY(-3px)}
.page-food-stay #next .page-link:active{transform:none}
@keyframes food-enter{from{opacity:.8;transform:translateY(10px)}to{opacity:1;transform:none}}
.page-food-stay .food-enter{animation:food-enter .5s ease-out both}
@media(max-width:1100px){
 .page-food-stay .page-dining-feature,.page-food-stay .page-cafe,.page-food-stay .page-sake{gap:36px}.food-stay-primary{gap:36px}
 .page-food-stay .food-hotel-record{grid-template-columns:125px minmax(0,1fr);gap:14px}.food-hotel-record img{width:125px;height:94px}
}
@media(max-width:850px){
 .page-food-stay .page-section{padding-block:48px}.page-food-stay .page-prose h3{font-size:23px}
 .page-food-stay .page-dining-feature,.page-food-stay .page-cafe{grid-template-columns:1fr 1fr;gap:30px}
 .page-food-stay .page-sake{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px}
 .page-food-stay .food-sake-photo{padding:21px 12px 17px}
 .food-stay-primary{grid-template-columns:1fr 1fr;gap:30px}.food-stay-primary>.page-photo img{aspect-ratio:3/4;object-position:53% 50%}
 .page-food-stay .food-hotel-record{display:block;margin-top:23px;padding-top:18px}.food-hotel-record img{width:160px;height:120px}.food-hotel-record figcaption{margin-top:10px}
 .food-stay-alternative{grid-template-columns:1fr;gap:15px;padding:23px}.food-stay-alternative .page-link{justify-self:start}
 .page-food-stay #next .page-related{grid-template-columns:1fr;gap:13px}.page-food-stay #next .page-link{min-height:70px;padding:17px 22px}
}
@media(max-width:700px){
 .food-hero-scene{aspect-ratio:4/3;max-height:none;border-top-right-radius:65px}
 .page-food-stay .page-lead{font-size:16px;line-height:1.95}
 .food-jump-links{gap:9px;margin-top:21px}.food-jump-links a{gap:14px;padding:9px 15px;font-size:14px}
 .page-food-stay .page-section{padding-block:39px}.page-food-stay .page-heading{margin-bottom:24px}
 .page-food-stay .page-dining-feature,.page-food-stay .page-cafe,.page-food-stay .page-sake{display:flex;flex-direction:column;gap:25px}
 .page-food-stay .page-dining-feature .page-photo img{aspect-ratio:4/3;border-top-right-radius:48px}
 .page-food-stay .page-prose h3{font-size:23px;margin-bottom:15px}
 .page-food-stay .page-cafe{margin-top:32px;padding-top:31px}.page-food-stay .page-cafe .page-photo{order:-1}.page-food-stay .page-cafe .page-photo img{border-top-right-radius:38px}
 .page-food-stay .food-sake-photo{width:min(100%,285px);max-width:285px;padding:21px 17px 18px}.page-food-stay .food-sake-photo img{max-width:220px}
 .page-food-stay .food-alcohol-note{font-size:14px;margin-top:20px;padding-top:15px}
 .food-links{gap:0 20px}.page-food-stay .food-links .page-link{margin-top:13px}
 .food-stay-primary{grid-template-columns:1fr;gap:26px}.food-stay-primary>.page-photo img{aspect-ratio:4/3;border-top-right-radius:48px;object-position:50% 55%}
 .page-food-stay .food-hotel-record{display:grid;grid-template-columns:130px minmax(0,1fr);gap:15px}.food-hotel-record img{width:130px;height:98px}.food-hotel-record figcaption{margin-top:0}
 .food-stay-alternative{margin-top:29px;padding:21px;gap:12px}.page-food-stay .food-stay-alternative h3{font-size:22px}
 .page-food-stay #stay-notes{padding-block:29px}.page-food-stay #stay-notes .page-notice{padding:22px 20px;gap:14px}.page-food-stay #stay-notes .page-notice h3{font-size:20px}
 .food-sources{margin-top:22px}.food-sources .page-sources ul{display:block}
 .page-food-stay #next .page-link{min-height:72px;padding:17px 20px}
}
@media(max-width:374px){.food-jump-links{gap:7px}.food-jump-links a{padding-inline:12px;gap:12px}.page-food-stay .food-hotel-record{grid-template-columns:1fr}.food-hotel-record img{width:160px;height:120px}.food-hotel-record figcaption{margin-top:0}.food-stay-alternative{padding:19px}}
@media(prefers-reduced-motion:reduce){.page-food-stay .food-enter{animation:none}.food-jump-links a,.food-sources summary>span,.page-food-stay #next .page-link{transition:none}.food-jump-links a:hover,.page-food-stay #next .page-link:hover{transform:none}}

/* Purpose-led choices and practical detail; the approved FV remains unchanged. */
.page-food-stay .page-photo figcaption,.page-food-stay .food-sake-photo figcaption,.page-food-stay .food-hotel-record figcaption{font-size:14px}
.page-food-stay .page-dining-feature,.page-food-stay .page-cafe,.page-food-stay .food-stay-primary{align-items:start}
.page-food-stay #choose-food{padding-block:38px 45px}
.page-food-stay .food-choices{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #9d785538}
.page-food-stay .food-choices li{min-width:0}
.page-food-stay .food-choices li+li{border-left:1px solid #9d785538}
.page-food-stay .food-choices a{display:block;height:100%;padding:28px 26px 24px;transition:background .2s}
.page-food-stay .food-choices a:hover{background:#ffffff75}
.page-food-stay .food-choices a:focus-visible{outline:3px solid #98613a;outline-offset:4px}
.page-food-stay .food-choices svg{width:52px;height:52px;display:block;margin-bottom:18px;fill:none;stroke:#976945;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.page-food-stay .food-choice-label{font-size:14px;color:#6d725c;margin:0 0 8px}
.page-food-stay .food-choices h3{font:600 23px/1.65 KawachiPages,var(--sans);letter-spacing:.02em;margin:0 0 13px}
.page-food-stay .food-choices h3 .keep,.page-food-stay .food-booking-paper h2 .keep{max-width:100%}
.page-food-stay .food-choices h3+p{font-size:16px;line-height:1.95;margin:0}
.page-food-stay .food-choice-action{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600;margin-top:19px}
.page-food-stay .food-choice-action b{font-size:21px;color:#976945;font-weight:400}
.page-food-stay .food-place-detail{margin:23px 0 12px;padding-top:20px;border-top:1px solid #9d785532}
.page-food-stay .food-place-detail h4{font-size:17px;line-height:1.85;font-weight:600;margin:0 0 11px;letter-spacing:.02em}
.page-food-stay .food-place-detail p{font-size:16px;line-height:1.95;margin:0}
.page-food-stay .food-place-detail p+p{margin-top:16px}
.page-food-stay .food-place-detail .food-practical{border-left:2px solid #aa885a;padding:0 0 0 16px;margin:20px 0 15px;font-size:14px;line-height:1.95}
.page-food-stay .food-practical strong{display:block;font-size:14px;margin-bottom:5px;color:#795b37}
.page-food-stay .food-sake-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:22px}
.page-food-stay .food-sake-choices>div{padding-top:17px;border-top:1px solid #6c8a6238}
.page-food-stay .food-sake-choices h4{font-size:17px;margin-bottom:8px}
.page-food-stay .food-detail-links{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:4px}
.page-food-stay .food-detail-links .page-link{font-size:14px}
.page-food-stay .food-stay-alternative .food-az-note{font-size:16px;margin-top:12px}
.page-food-stay .food-booking-section{background:linear-gradient(110deg,#e5eee4,#f0f3ea 65%,#eaf1ee)}
.page-food-stay .food-booking-paper{position:relative;padding:40px;background:#fffdf7cf;border:1px solid #174d4b25;border-radius:3px 64px 3px 3px;overflow:hidden}
.page-food-stay .food-booking-paper::before{content:'';position:absolute;right:-115px;top:-150px;width:340px;height:250px;border:1px solid #a58b5630;border-radius:50%;box-shadow:0 0 0 20px #a58b5609,0 0 0 40px #a58b5607;pointer-events:none}
.page-food-stay .food-booking-paper h2{font-size:clamp(29px,3vw,40px)}
.page-food-stay .food-booking-checks{list-style:none;counter-reset:food-check;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 40px}
.page-food-stay .food-booking-checks li{counter-increment:food-check;position:relative;border-top:1px solid #174d4b2a;padding:20px 0 0 43px;min-width:0}
.page-food-stay .food-booking-checks li::before{content:counter(food-check,decimal-leading-zero);position:absolute;left:0;top:20px;font:26px/1.5 Georgia,serif;color:#976945}
.page-food-stay .food-booking-checks h3{font:600 19px/1.8 KawachiPages,var(--sans);letter-spacing:.02em;margin:0 0 8px}
.page-food-stay .food-booking-checks p{font-size:16px;line-height:1.95;margin:0}
.page-food-stay .food-plan-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 40px;border-top:1px solid #174d4b2a;margin-top:31px;padding-top:23px;align-items:center}
.page-food-stay .food-plan-links p{font-size:16px;margin:0}
.page-food-stay .food-plan-links>div{display:flex;flex-wrap:wrap;gap:0 24px}
.page-food-stay .food-plan-links .page-link{font-size:14px}
.page-food-stay #food-faq{padding-bottom:26px}
.page-food-stay #food-faq .page-faq summary{display:flex;align-items:baseline;gap:18px;padding:22px 38px 22px 0}
.page-food-stay #food-faq summary>span:last-child{font:600 18px/1.9 KawachiPages,var(--sans);color:inherit;min-width:0}
.page-food-stay #food-faq .page-faq details[open]>div{animation:food-answer .22s ease-out}
@keyframes food-answer{from{opacity:.75;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:1100px){
 .page-food-stay .food-choices a{padding-inline:20px}
 .page-food-stay .food-sake-choices{grid-template-columns:1fr;gap:17px}
 .page-food-stay .food-booking-paper{padding:32px}
}
@media(max-width:900px){
 .page-food-stay .food-choices{grid-template-columns:1fr}
 .page-food-stay .food-choices li+li{border-left:0;border-top:1px solid #9d785538}
 .page-food-stay .food-choices a{display:grid;grid-template-columns:52px minmax(0,1fr);gap:24px;padding:24px 8px}
 .page-food-stay .food-choices svg{margin:0}
 .page-food-stay .food-choice-action{margin-top:12px}
 .page-food-stay .page-dining-feature,.page-food-stay .page-cafe,.page-food-stay .page-sake,.page-food-stay .food-stay-primary{display:grid;grid-template-columns:1fr;gap:28px}
 .page-food-stay .page-cafe>.page-photo{grid-row:1}
 .page-food-stay .page-dining-feature .page-photo img,.page-food-stay .page-cafe .page-photo img,.page-food-stay .food-stay-primary>.page-photo img{aspect-ratio:1.7/1;max-height:440px}
 .page-food-stay .food-sake-photo{max-width:285px;justify-self:center}
 .page-food-stay .food-sake-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
 .page-food-stay .food-hotel-record{display:grid;grid-template-columns:160px minmax(0,1fr)}
 .page-food-stay .food-hotel-record figcaption{margin:0}
 .page-food-stay .food-plan-links{grid-template-columns:1fr;gap:10px}
}
@media(max-width:700px){
 .page-food-stay #choose-food{padding-block:30px 24px}
 .page-food-stay .food-choices a{gap:18px;grid-template-columns:42px minmax(0,1fr);padding-block:23px}
 .page-food-stay .food-choices svg{width:42px;height:42px}
 .page-food-stay .food-choices h3{font-size:22px}
 .page-food-stay .page-dining-feature,.page-food-stay .page-cafe,.page-food-stay .page-sake,.page-food-stay .food-stay-primary{display:grid;gap:25px}
 .page-food-stay .page-dining-feature .page-photo img,.page-food-stay .page-cafe .page-photo img,.page-food-stay .food-stay-primary>.page-photo img{aspect-ratio:4/3}
 .page-food-stay .food-place-detail{margin-top:20px;padding-top:18px}
 .page-food-stay .food-sake-choices,.page-food-stay .food-booking-checks{grid-template-columns:1fr;gap:21px}
 .page-food-stay .food-hotel-record{grid-template-columns:125px minmax(0,1fr)}
 .page-food-stay .food-hotel-record img{width:125px;height:94px}
 .page-food-stay .food-booking-paper{padding:26px 21px;border-top-right-radius:46px}
 .page-food-stay .food-booking-paper h2{font-size:27px;letter-spacing:.02em}
 .page-food-stay .food-booking-checks li{padding-left:37px}
 .page-food-stay .food-booking-checks li::before{font-size:23px}
 .page-food-stay #food-faq summary>span:last-child{font-size:17px}
 .page-food-stay #food-faq .page-faq summary{gap:13px;padding-block:20px}
 .page-food-stay #food-faq .page-faq details>div{padding-inline:0}
}
@media(prefers-reduced-motion:reduce){.page-food-stay .food-choices a{transition:none}.page-food-stay #food-faq .page-faq details[open]>div{animation:none}}
@media(forced-colors:active){.page-food-stay .food-booking-paper{background:Canvas;border-color:CanvasText}.page-food-stay .food-choices svg{stroke:CanvasText}}
