/* Store page v1.2: generous spacing, independent content, variable media. */
.ah-shop{color:#191919;background:#fff;line-height:1.8}
.ah-shop *{box-sizing:border-box}
.ah-shop [hidden]{display:none!important}
.ah-shop-container{width:1200px;max-width:calc(100% - 64px);margin:0 auto}
.ah-shop a{color:inherit}.ah-shop a:hover{opacity:.85}
.ah-shop a:focus-visible,.ah-shop button:focus-visible{outline:3px solid #087bb8;outline-offset:4px}
.ah-shop button{font:inherit;cursor:pointer}
.ah-shop-breadcrumb{padding:16px 0;background:#fafafa;font-size:12px;line-height:1.7}
.ah-shop-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.ah-shop-hero{position:relative;isolation:isolate;min-height:450px;background:#292929;color:#fff;display:flex;align-items:flex-end;overflow:hidden}
.ah-shop-hero-photo,.ah-shop-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ah-shop-hero-shade{z-index:-1;background:linear-gradient(90deg,#0009,#0002)}
.ah-shop-hero-copy{padding:64px 0}
.ah-shop-service{font-size:13px;margin:0 0 12px;letter-spacing:.05em}
.ah-shop-brand{font-size:28px;line-height:1.3;margin:0 0 8px}
.ah-shop-brand-logo{width:280px;max-width:75%;margin-bottom:12px}
.ah-shop-brand-logo img{display:block;width:100%;max-height:72px;object-fit:contain;object-position:left center}
.ah-shop-hero h1{font-size:28px;font-weight:800;line-height:1.6;margin:0}
.ah-shop-region{display:inline-block;padding:4px 12px;margin:14px 0 24px;border:1px solid #fff9;border-radius:20px;font-size:12px}
.ah-booking-actions{display:flex;align-items:stretch;justify-content:center;gap:24px;flex-wrap:wrap}
.ah-booking-actions>a{display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;padding:16px 28px;min-width:290px;border:1px solid #fff;border-radius:4px;font-weight:700;font-size:17px;line-height:1.5;text-align:center;overflow-wrap:anywhere}
.ah-booking-actions .ah-booking-web{background:var(--ah-gradient);border-color:transparent;color:#fff}
.ah-booking-actions .ah-booking-phone{color:#fff;background:#0002}
.ah-booking-actions .ah-en{font-size:23px}
.ah-shop-hero .ah-booking-actions{justify-content:flex-start;gap:16px}
.ah-shop-hero .ah-booking-actions>a{font-size:14px;min-height:48px;min-width:180px;padding:12px 22px}
.ah-shop-hero .ah-booking-actions .ah-en{font-size:17px}
.ah-shop-local-nav{border-bottom:1px solid #eee;background:#fff}
.ah-shop-local-nav>.ah-shop-container{display:flex;justify-content:center;align-items:stretch;overflow-x:auto;padding:24px 0;gap:0}
.ah-shop-local-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1 0 140px;font-size:13px;font-weight:700;border-right:1px solid #e6e6e6;padding:0 12px;text-align:center}
.ah-shop-local-nav a:last-child{border:0}.ah-shop-local-nav a>span{font-size:24px;line-height:1}
.ah-shop-section{padding:152px 0;scroll-margin-top:24px}
.ah-shop-heading{text-align:center;margin:0 0 64px}
.ah-shop-heading>p{color:#087bc6;letter-spacing:.05em;font-size:16px;margin:0 0 10px;line-height:1.4}
.ah-shop-heading h2{font-size:34px;font-weight:800;line-height:1.6;margin:0;overflow-wrap:anywhere}
.ah-shop-heading:after{content:'';display:block;width:64px;height:4px;border-radius:2px;background:var(--ah-gradient);margin:18px auto 0}
.ah-shop-article{max-width:800px;margin:0 auto}
.ah-rich{font-size:16px;line-height:1.95;overflow-wrap:anywhere}
.ah-rich p{margin:0 0 24px}.ah-rich>:last-child{margin-bottom:0}
.ah-rich h2,.ah-rich h3,.ah-rich h4{font-weight:700;margin:32px 0 20px}
.ah-rich img{display:block;max-width:100%!important;width:auto;height:auto!important;object-fit:contain;margin:28px auto}
.ah-rich table{max-width:100%;border-collapse:collapse}.ah-rich td,.ah-rich th{padding:12px;border:1px solid #ddd}
.ah-rich ul,.ah-rich ol{padding-left:1.5em;margin:24px 0}.ah-rich ul{list-style:disc}.ah-rich ol{list-style:decimal}
.ah-rich a{text-decoration:underline;text-underline-offset:4px}
.ah-rich [style],.ah-rich font{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important}
.ah-shop-gallery,.ah-shop-menu{background:#f6f5f2}
.ah-shop-helper{text-align:center;font-size:13px;line-height:1.8;margin:28px 0 0;color:#555}
.ah-viewer{min-width:0}.ah-view-main{min-width:0;position:relative}
.ah-view-slide{margin:0 0 28px;position:relative}.ah-view-slide>a{position:relative;display:block;background:#ebe9e5}
.ah-view-slide img{display:block;max-width:100%;margin:0 auto}
.ah-view-slide figcaption{padding:16px 20px;background:#fff;color:#333;font-size:13px;line-height:1.8;text-align:left}
.ah-expand{position:absolute;right:14px;top:14px;display:flex;align-items:center;justify-content:center;background:#fffffff2;color:#191919;border-radius:4px;width:36px;height:36px;font-size:26px}
.ah-gallery-viewer .ah-view-main img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.ah-view-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:32px}
.ah-view-controls button{width:44px;height:44px;border:1px solid #ddd;border-radius:50%;background:#fff;color:#191919;font-size:26px;line-height:1}
.ah-view-controls [data-view-count]{min-width:60px;text-align:center;font-size:16px}
.ah-view-thumbs{min-width:0;position:relative}
.ah-thumb-list{display:flex;gap:12px;overflow-x:auto;padding:4px;scrollbar-width:thin}
.ah-thumb-list button{flex:0 0 110px;border:3px solid transparent;border-radius:4px;background:#fff;padding:3px}
.ah-thumb-list button[aria-pressed=true]{background:linear-gradient(#fff,#fff) padding-box,var(--ah-gradient) border-box}
.ah-thumb-list img{width:100%;height:76px;object-fit:cover;display:block}
.ah-gallery-viewer.is-enhanced{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:24px;align-items:start}
.ah-gallery-viewer.is-enhanced .ah-view-main{grid-column:1;grid-row:1}
.ah-gallery-viewer.is-enhanced .ah-view-slide{margin:0}
.ah-gallery-viewer.is-enhanced .ah-view-thumbs{grid-column:2;grid-row:1;align-self:stretch;min-height:0}
.ah-gallery-viewer.is-enhanced .ah-thumb-list{position:absolute;inset:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;overflow-y:auto;overflow-x:hidden;gap:12px;padding:4px}
.ah-gallery-viewer.is-enhanced .ah-thumb-list button{min-width:0;padding:2px}.ah-gallery-viewer.is-enhanced .ah-thumb-list img{height:auto;aspect-ratio:4/3}
.ah-gallery-viewer.is-enhanced .ah-view-controls{grid-column:1/-1;margin-top:8px}
.ah-viewer.is-enhanced .ah-view-slide{margin-bottom:0}
.ah-shop-notices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 40px;align-items:start}
.ah-shop-notice{min-width:0}
.ah-notice-images{display:grid;gap:24px;background:#fafafa}
.ah-notice-images>a{display:block;padding:12px;background:#fafafa}
.ah-notice-images img{display:block;max-width:100%;max-height:560px;width:100%;height:auto;object-fit:contain;margin:0 auto}
.ah-notice-copy{padding-top:28px}
.ah-notice-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:12px;margin:0 0 16px;color:#666}
.ah-notice-category{display:inline-block;padding:4px 12px;border-radius:16px;background:#edf4ff;color:#075394;font-weight:700}
.ah-notice-category--menu{background:#fff0f5;color:#9f1f55}.ah-notice-category--recruit{background:#edf8ff;color:#075394}
.ah-notice-copy h3{font-size:20px;line-height:1.7;font-weight:700;margin:0 0 20px}
.ah-notice-copy .ah-rich{font-size:15px}
.ah-shop-text-link{display:inline-block;margin-top:24px;padding-bottom:6px;border-bottom:1px solid #888;font-size:14px;font-weight:700}
.ah-menu-tabs{display:flex;justify-content:flex-start;gap:16px;flex-wrap:wrap;overflow:visible;padding:4px;max-width:100%;width:100%;margin:0 auto 48px;justify-content:center}
.ah-menu-tabs button{flex:0 1 220px;max-width:260px;min-width:0;padding:14px 24px;min-height:48px;border:1px solid #888;background:#fff;border-radius:4px;color:#191919;font-weight:700;white-space:normal;overflow-wrap:anywhere}
.ah-menu-tabs button[aria-selected=true]{background:var(--ah-gradient);color:#fff;border-color:transparent}
.ah-menu-panel+.ah-menu-panel{margin-top:96px}.ah-shop-menu.is-enhanced .ah-menu-panel{margin-top:0}
.ah-menu-title{max-width:940px;margin:0 auto 32px;text-align:center}
.ah-menu-title p{font-size:15px;line-height:1.8;margin:0 0 12px;color:#087bb8}
.ah-menu-title h3{font-size:20px;font-weight:700;line-height:1.95;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.ah-menu-description{max-width:900px;margin:0 auto 32px}
.ah-menu-panel>.ah-shop-helper{margin:0 0 32px}
.ah-menu-viewer .ah-view-main{max-width:1100px;margin:0 auto}
.ah-menu-viewer .ah-view-slide>a{padding:12px;background:#fff;height:680px;display:flex;align-items:center;justify-content:center}
.ah-menu-viewer .ah-view-main img{width:100%;height:100%;max-height:100%;max-width:100%;object-fit:contain}
.ah-menu-viewer .ah-view-thumbs{margin:24px auto 0;max-width:100%;width:max-content}
.ah-menu-viewer .ah-thumb-list img{object-fit:contain;background:#fff}
.ah-shop-info-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start}
.ah-shop-table{margin:0;border-top:1px solid #ddd;min-width:0}
.ah-shop-table>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:28px 0;border-bottom:1px solid #ddd;align-items:start}
.ah-shop-table dt{font-size:14px;font-weight:700;line-height:1.95;margin:0}
.ah-shop-table dd{margin:0;font-size:16px;line-height:1.95;overflow-wrap:anywhere;min-width:0}
.ah-shop-table dd p{margin:0 0 12px}.ah-shop-table dd p:last-child{margin:0}
.ah-shop-table a{text-decoration:underline;text-underline-offset:4px}
.ah-shop-access{min-width:0}
.ah-shop-map{background:#f5f5f5;overflow:hidden;border-radius:4px}
.ah-shop-map iframe{display:block;width:100%;height:410px;border:0}
.ah-shop-map-link{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:32px;min-height:54px;padding:12px 24px;border:1px solid #888;border-radius:4px;font-size:15px;font-weight:700;text-align:center}
.ah-shop-instagram{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:32px;font-size:13px;line-height:1.9;text-align:center}
.ah-shop-instagram .ah-en{font-size:20px}
.ah-shop-reservation{background:#080808;color:#fff}
.ah-shop-reservation .ah-shop-heading{margin-bottom:56px}
.ah-shop-reservation .ah-booking-actions>a{min-width:340px}
.ah-shop-booking-notes{display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;max-width:1100px;margin:40px auto 0;padding:28px;border:1px solid #777;border-radius:4px;align-items:start}
.ah-shop-booking-notes h3{font-size:15px;line-height:1.9;font-weight:700;margin:0}
.ah-shop-booking-notes .ah-rich{font-size:14px}
.ah-shop-contact-hours{max-width:900px;margin:32px auto 0;text-align:center;font-size:13px;line-height:1.9;color:#ddd}
.ah-shop-contact-hours>span{display:block;font-weight:700;margin-bottom:10px}.ah-shop-contact-hours .ah-rich{font-size:13px}
.ah-shop-mobile-booking{display:none}
.ah-image-dialog{position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;padding:0;background:#171717;color:#fff;z-index:999999}
.ah-image-dialog:not([open]){display:none}.ah-image-dialog::backdrop{background:#000d}
.ah-dialog-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;padding:12px;background:#171717;min-height:72px;position:sticky;top:0;z-index:2}
.ah-dialog-toolbar button,.ah-dialog-toolbar a{min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 14px;background:#333;color:#fff;border:1px solid #666;border-radius:4px;font:inherit;font-size:13px}
.ah-dialog-image-wrap{height:calc(100% - 130px);overflow:auto;display:grid;place-items:center;padding:16px}
.ah-dialog-image-wrap img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.ah-image-dialog.is-zoomed .ah-dialog-image-wrap{display:block}.ah-image-dialog.is-zoomed .ah-dialog-image-wrap img{max-width:none;max-height:none;margin:0 auto}
.ah-image-dialog>[data-dialog-caption]{padding:12px 24px;text-align:center;font-size:13px;margin:0}
@media(max-width:1000px){.ah-shop-info-grid{gap:40px}.ah-shop-table>div{grid-template-columns:90px minmax(0,1fr);gap:16px}.ah-shop-local-nav>.ah-shop-container{justify-content:flex-start}.ah-shop-local-nav a{flex-basis:130px}}
@media(max-width:800px){
 .ah-shop-section{padding:88px 0}.ah-shop-container{max-width:calc(100% - 40px)}.ah-shop-heading{margin-bottom:44px}.ah-shop-heading h2{font-size:28px}.ah-shop-heading>p{font-size:13px}
 .ah-shop-hero{min-height:400px}.ah-shop-hero-copy{padding:48px 0}.ah-shop-hero h1{font-size:24px}.ah-shop-brand-logo{width:240px}.ah-shop-brand{font-size:25px}
 .ah-shop-hero .ah-booking-actions>a{min-width:0;flex:1;max-width:280px;padding:12px}.ah-shop-hero .ah-booking-actions{gap:10px}.ah-shop-hero .ah-booking-actions .ah-en{font-size:16px}
 .ah-rich{font-size:15px;line-height:2}.ah-rich p{margin-bottom:24px}
 .ah-gallery-viewer.is-enhanced{grid-template-columns:minmax(0,1fr);gap:16px}.ah-gallery-viewer.is-enhanced .ah-view-main{grid-column:1;grid-row:1}
 .ah-gallery-viewer.is-enhanced .ah-view-thumbs{grid-column:1;grid-row:2;height:92px}.ah-gallery-viewer.is-enhanced .ah-thumb-list{position:relative;display:flex;height:92px;overflow-x:auto;overflow-y:hidden;padding:4px;gap:8px}
 .ah-gallery-viewer.is-enhanced .ah-thumb-list button{flex:0 0 106px}.ah-gallery-viewer.is-enhanced .ah-thumb-list img{height:72px;aspect-ratio:auto}
 .ah-gallery-viewer.is-enhanced .ah-view-controls{grid-row:3;grid-column:1;margin-top:4px}
 .ah-shop-notices{gap:48px 24px}.ah-notice-copy h3{font-size:18px}.ah-notice-images img{max-height:480px}
 .ah-shop-info-grid{grid-template-columns:minmax(0,1fr);gap:56px}.ah-shop-table>div{padding:24px 0;grid-template-columns:96px minmax(0,1fr);gap:20px}.ah-shop-map iframe{height:360px}
 .ah-shop-booking-notes{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px}.ah-shop-reservation .ah-shop-heading{margin-bottom:44px}
 .ah-shop-reservation .ah-booking-actions>a{min-width:0;flex:1 1 260px}.ah-booking-actions .ah-en{font-size:22px}
 .ah-shop-mobile-booking{display:block;position:fixed;bottom:0;left:0;right:0;z-index:900;background:#fff;padding:10px 12px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #0002}
 .ah-shop-mobile-booking .ah-booking-actions{gap:10px;flex-wrap:nowrap}.ah-shop-mobile-booking .ah-booking-actions>a{flex:1;min-width:0;min-height:48px;padding:8px 10px;font-size:12px}.ah-shop-mobile-booking .ah-booking-actions .ah-en{font-size:16px}.ah-shop-mobile-booking .ah-booking-phone{background:#222;border-color:#222}
 .single-shop .ah-site-footer{padding-bottom:110px}.single-shop .pagetop{bottom:100px}
}
@media(max-width:540px){.ah-shop-notices{grid-template-columns:minmax(0,1fr)}.ah-menu-tabs button{flex:1 1 calc(50% - 8px);max-width:none;min-width:0;font-size:13px;padding:12px}.ah-menu-title h3{font-size:17px}.ah-menu-title p{font-size:13px}.ah-menu-viewer .ah-view-slide>a{height:440px}.ah-menu-viewer .ah-thumb-list button{flex-basis:84px}.ah-menu-viewer .ah-thumb-list img{height:60px}.ah-shop-map iframe{height:300px}.ah-shop-contact-hours{text-align:left}.ah-dialog-toolbar{gap:6px;padding:8px}.ah-dialog-toolbar button,.ah-dialog-toolbar a{padding:8px;font-size:11px}.ah-shop-hero .ah-booking-actions{flex-direction:column;align-items:flex-start}.ah-shop-hero .ah-booking-actions>a{min-width:210px}.ah-shop-brand-logo{max-width:85%}}
@media(prefers-reduced-motion:reduce){.ah-shop a,.ah-shop button{transition:none}}

.ah-shop-icon{display:inline-block;flex-shrink:0;width:24px;height:24px;vertical-align:middle}.ah-shop-local-nav .ah-shop-icon{width:26px;height:26px}

/* v1.2.1: fixed page stage and controls outside the image, plus lower controls. */
.ah-menu-viewer .ah-view-main{padding:0 60px}
.ah-menu-viewer .ah-view-slide{height:752px;display:flex;flex-direction:column}
.ah-menu-viewer .ah-view-slide>a{flex:0 0 680px}
.ah-menu-viewer .ah-view-slide figcaption{height:72px;flex:0 0 72px;overflow:auto;margin:0}
.ah-menu-viewer .ah-view-side{position:absolute;top:320px;width:44px;height:44px;border:1px solid #aaa;border-radius:50%;background:#fff;color:#191919;font-size:30px;line-height:1;z-index:1;display:flex;align-items:center;justify-content:center;padding:0}
.ah-menu-viewer .ah-view-side--prev{left:0}.ah-menu-viewer .ah-view-side--next{right:0}
@media(max-width:800px){.ah-menu-viewer .ah-view-main{padding:0 48px}.ah-menu-viewer .ah-view-slide>a{height:560px;flex-basis:560px}.ah-menu-viewer .ah-view-slide{height:632px}.ah-menu-viewer .ah-view-side{top:260px}}
@media(max-width:540px){.ah-menu-viewer .ah-view-main{padding:0 36px}.ah-menu-viewer .ah-view-slide>a{height:440px;flex-basis:440px;padding:6px}.ah-menu-viewer .ah-view-slide{height:512px}.ah-menu-viewer .ah-view-side{top:202px;width:32px;height:40px;border-radius:4px;font-size:26px}}

/* v1.2.2: compact news rows and section-scoped category navigation. */
.ah-shop-notices{display:grid;grid-template-columns:minmax(0,1fr);gap:0;max-width:1040px;margin:0 auto;border-top:1px solid #ddd}
.ah-shop-notice{display:block;padding:40px 0;border-bottom:1px solid #ddd}
.ah-shop-notice.has-images{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start}
.ah-notice-images{display:block;background:transparent}
.ah-notice-images>a{position:relative;display:block;padding:8px 8px 34px;background:#f5f4f1;border:1px solid #e8e6e0;border-radius:4px}
.ah-notice-images img{width:100%;height:146px;max-height:none;object-fit:contain;background:#fff}
.ah-notice-expand{position:absolute;left:4px;right:4px;bottom:7px;text-align:center;font-size:11px;line-height:1.5;color:#444}
.ah-notice-copy{padding-top:0}.ah-notice-meta{margin-bottom:14px;gap:12px}
.ah-notice-copy h3{margin-bottom:16px;font-size:21px;line-height:1.65}
.ah-notice-copy .ah-rich{font-size:14px;line-height:1.9}.ah-notice-copy .ah-rich p{margin-bottom:14px}
.ah-notice-copy .ah-rich img{max-height:200px!important;margin:20px 0}
.ah-notice-copy .ah-shop-text-link{margin-top:16px}
.ah-menu-category-nav{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;background:#f6f5f2;padding:12px 0;margin:0 0 40px;border-bottom:1px solid #dedbd4}
.admin-bar .ah-menu-category-nav{top:32px}
.ah-menu-tabs{position:relative;display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:12px;width:100%;max-width:100%;margin:0;padding:4px;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}
.ah-menu-tabs button{flex:0 0 auto;min-width:160px;max-width:240px;min-height:48px;padding:10px 20px;line-height:1.5;font-size:14px}
.ah-category-arrow{width:44px;height:44px;border:1px solid #aaa;border-radius:50%;background:#fff;color:#191919;font-size:28px!important;line-height:1}
.ah-category-arrow:disabled{opacity:.3;cursor:default}
.ah-menu-viewer{--ah-menu-stage:clamp(280px,calc(100svh - 300px),680px)}
.ah-menu-viewer .ah-view-slide{height:calc(var(--ah-menu-stage) + 72px)}
.ah-menu-viewer .ah-view-slide>a{height:var(--ah-menu-stage);flex-basis:var(--ah-menu-stage)}
.ah-menu-viewer .ah-view-side{top:calc(var(--ah-menu-stage)/2 - 22px)}
@media(max-width:800px){
 .ah-shop-notice{padding:32px 0}.ah-shop-notice.has-images{grid-template-columns:160px minmax(0,1fr);gap:24px}.ah-notice-images img{height:120px}
 .ah-menu-viewer{--ah-menu-stage:clamp(260px,calc(100svh - 340px),560px)}
}
@media(max-width:782px){.admin-bar .ah-menu-category-nav{top:46px}}
@media(max-width:600px){.admin-bar .ah-menu-category-nav{top:0}}
@media(max-width:540px){
 .ah-shop-notice.has-images{grid-template-columns:96px minmax(0,1fr);gap:16px}.ah-notice-images>a{padding:5px 5px 30px}.ah-notice-images img{height:82px}.ah-notice-expand{font-size:10px;bottom:6px}
 .ah-notice-meta{font-size:10px;gap:8px;margin-bottom:10px}.ah-notice-category{padding:3px 8px}.ah-notice-copy h3{font-size:16px;margin-bottom:12px}.ah-notice-copy .ah-rich{font-size:13px}.ah-notice-copy .ah-shop-text-link{font-size:12px}
 .ah-menu-category-nav{grid-template-columns:32px minmax(0,1fr) 32px;gap:6px;margin-bottom:32px;padding:10px 0}.ah-category-arrow{width:32px;height:40px;border-radius:4px;font-size:24px!important}
 .ah-menu-tabs{gap:8px}.ah-menu-tabs button{flex:0 0 auto;min-width:132px;max-width:190px;font-size:12px;padding:9px 12px;min-height:44px}
 .ah-menu-viewer{--ah-menu-stage:clamp(240px,calc(100svh - 340px),440px)}.ah-menu-viewer .ah-view-side{top:calc(var(--ah-menu-stage)/2 - 20px)}
}

.ah-shop.has-news-zoom [data-notice-extra]{display:none}

/* v1.2.3: centered FV and reservation access on every screen size. */
.ah-shop-hero-copy{text-align:center}.ah-shop-brand-logo{margin-left:auto;margin-right:auto}.ah-shop-brand-logo img{object-position:center}
.ah-shop-hero .ah-booking-actions{justify-content:center;align-items:center}
.ah-shop-mobile-booking{display:block;position:fixed;bottom:0;left:0;right:0;z-index:900;background:#fff;padding:12px 24px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #0002}
.ah-shop-mobile-booking .ah-booking-actions{max-width:1000px;margin:0 auto;gap:16px;flex-wrap:nowrap}
.ah-shop-mobile-booking .ah-booking-actions>a{flex:1;min-width:0;min-height:54px;padding:10px 24px;font-size:15px}
.ah-shop-mobile-booking .ah-booking-phone{background:#222;border-color:#222}.ah-shop-mobile-booking .ah-booking-actions .ah-en{font-size:21px}
.single-shop .ah-site-footer{padding-bottom:130px}.single-shop .pagetop{bottom:112px}
@media(max-width:800px){.ah-shop-mobile-booking{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.ah-shop-mobile-booking .ah-booking-actions{gap:10px}.ah-shop-mobile-booking .ah-booking-actions>a{min-height:48px;padding:8px 10px;font-size:12px}.ah-shop-mobile-booking .ah-booking-actions .ah-en{font-size:16px}}

/* v1.2.4: legacy inline posters remain readable, including linked/unresolved media. */
.ah-notice-copy .ah-rich img{max-height:560px!important;max-width:100%!important;width:auto!important;height:auto!important;margin:20px 0}
.ah-notice-copy .ah-rich a:has(img){display:inline-block;max-width:100%}
.ah-notice-category--hours{background:#fff5de;color:#795000}
.ah-notice-category--event{background:#f1edff;color:#59408b}
@media(max-width:540px){.ah-notice-copy .ah-rich img{max-height:420px!important}}

/* v1.2.5: rich-text notice media uses the same viewer as dedicated image fields. */
.ah-notice-copy .ah-rich .ah-inline-image-zoom{display:inline-block;max-width:100%;cursor:zoom-in;text-decoration:none}
.ah-inline-image-zoom::after{content:"画像を拡大 ⤢";display:block;margin:4px 0 16px;font-size:12px;line-height:1.8;color:#444;text-decoration:underline;text-underline-offset:3px}
.ah-notice-copy .ah-rich .ah-inline-image-expand{display:inline-block;padding:8px 12px;font-size:12px;cursor:zoom-in}
/* Old WYSIWYG spans specify black text. Only the dark reservation panel resets it. */
.ah-shop-booking-notes{color:#fff}
.ah-shop-booking-notes .ah-rich,.ah-shop-booking-notes .ah-rich *{color:inherit!important;background-color:transparent!important}

/* v1.2.6: title/date -> full-width images -> description; all pages stay visible. */
.ah-shop-news .ah-shop-notices{max-width:1040px;display:block}
.ah-shop-news .ah-shop-notice,.ah-shop-news .ah-shop-notice.has-images{display:block;padding:48px 0}
.ah-shop-news .ah-notice-copy{padding:0;margin:0 0 24px}
.ah-shop-news .ah-notice-copy h3{font-size:24px;margin:0;line-height:1.65}
.ah-shop-news .ah-notice-images{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;width:100%;max-width:960px;margin:0 auto 32px;background:transparent}
.ah-shop-news .ah-notice-images figure{display:block;margin:0;padding:0;min-width:0}
.ah-shop-news .ah-notice-images img,.ah-shop-news .ah-notice-body img{display:block;float:none!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain;margin:0 auto;cursor:default}
.ah-shop-news .ah-notice-body{font-size:16px;line-height:1.95;overflow-wrap:anywhere}
.ah-shop-news .ah-notice-body img{max-width:960px!important;margin:24px auto}
.ah-shop-news .ah-notice-body .alignleft,.ah-shop-news .ah-notice-body .alignright{float:none!important}
.ah-shop-news .ah-notice-body .ah-inline-image-zoom::after{content:none}
.ah-shop-news .ah-notice-body .ah-inline-image-zoom{cursor:default}
.ah-shop-news .ah-notice-expand,.ah-shop-news .ah-inline-image-expand{display:none}
@media(max-width:540px){
 .ah-shop-news .ah-shop-notice,.ah-shop-news .ah-shop-notice.has-images{padding:32px 0}
 .ah-shop-news .ah-notice-copy{margin-bottom:20px}
 .ah-shop-news .ah-notice-copy h3{font-size:20px}
 .ah-shop-news .ah-notice-images{gap:24px;margin-bottom:24px}
 .ah-shop-news .ah-notice-body{font-size:15px}
}

.ah-shop-news .ah-notice-copy .ah-notice-meta{margin:12px 0 0}
.ah-shop-news .ah-notice-inline-images{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;max-width:960px;margin:0 auto 32px}
.ah-shop-news .ah-notice-inline-images figure{margin:0;min-width:0}
.ah-shop-news .ah-notice-inline-images img{margin:0 auto}
.ah-shop-news .ah-notice-inline-images a{display:block;max-width:100%}
@media(max-width:540px){.ah-shop-news .ah-notice-inline-images{gap:24px;margin-bottom:24px}}
