
:root{--ink:#182e35;--muted:#74838a;--brand:#007f83;--deep:#102c34;--line:#e6ebeb;--bg:#f7f9f8;--gold:#e4ad54}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--bg);font:15px/1.75 -apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN","Noto Sans Thai",sans-serif}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.wrap{max-width:1190px;padding:0 26px;margin:auto}.preview-strip{background:#18363d;color:#cddcde;font-size:12px}.preview-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;padding-bottom:8px}.preview-inner b{color:#fff}.demo-types{display:flex;gap:6px;align-items:center}.type{background:transparent;color:#cddcde;border:1px solid #58737a;border-radius:30px;padding:2px 11px;font-size:12px}.type.active{background:#fff;color:#16383e;border-color:#fff}.header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.head-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:900;letter-spacing:-1.1px;font-size:25px;line-height:1;color:var(--deep);white-space:nowrap}.brand span,.footer span{color:var(--brand)}.brand small{display:block;letter-spacing:2.2px;font-size:9px;color:#839196;margin-top:7px}.desktop-nav{display:flex;gap:30px;font-weight:700;font-size:13px}.desktop-nav a:hover{color:var(--brand)}.languages{display:flex;gap:5px}.languages button{border:1px solid transparent;background:transparent;border-radius:8px;padding:6px;font-size:23px;line-height:1}.languages button.selected{background:#e6f4f2;border-color:#b6dad7}.breadcrumbs{font-size:12px;color:#829196;padding:20px 0;display:flex;gap:10px;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--brand)}.hero{height:420px;display:grid;grid-template-columns:2fr 1fr;gap:5px;border-radius:15px;overflow:hidden;position:relative;background:#dbe5e1}.hero-main,.hero-side{min-height:0;position:relative}.hero-main img,.hero-side img,.side-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:5px;overflow:hidden}.hero-side img{min-height:0}.photo-count{position:absolute;bottom:18px;left:20px;background:#152a30b9;color:#fff;border-radius:30px;padding:5px 13px;font-size:12px}.gallery-btn{position:absolute;bottom:18px;right:18px;border:0;border-radius:9px;background:#fff;padding:10px 16px;font-weight:700;box-shadow:0 3px 15px #0002}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:35px;margin:34px 0 80px;align-items:start}.primary{min-width:0}.intro{padding:0 2px 34px}.eyebrow,.section-kicker,.side-category{font-size:11px;letter-spacing:1.6px;color:var(--brand);font-weight:900}.dot{padding:0 9px;color:#c0c8c8}.name-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.name-row h1{font-size:clamp(29.68px,3.604vw,44.52px);line-height:1.3;letter-spacing:-.8px;margin:8px 0 3px}.subtitle{margin:0;color:var(--muted);font-size:13px}.heart{width:48px;height:48px;border:1px solid #d9e2e1;background:#fff;border-radius:50%;font-size:30px;line-height:1;color:#718587;flex-shrink:0}.heart.liked{color:#e26579;background:#fff1f4;border-color:#f1c5cf}.intro-meta{display:flex;gap:20px;flex-wrap:wrap;margin:22px 0 17px;color:#5f7177;font-size:13px}.open,.side-status{color:#168463;font-weight:800}.status-dot{display:inline-block;width:8px;height:8px;background:#28b98a;border-radius:50%;margin-right:7px;vertical-align:middle}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips span{border:1px solid #e1e9e6;background:#edf5f2;border-radius:5px;padding:3px 10px;color:#517168;font-size:12px}.lead{font-size:15px;line-height:2.1;margin:25px 0}.action-row{display:flex;gap:10px;flex-wrap:wrap}.action{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d8e3e2;background:#fff;color:#28535a;border-radius:8px;padding:11px 18px;font-weight:800;font-size:13px}.primary-action{background:var(--brand);border-color:var(--brand);color:#fff}.section-nav{display:flex;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-bottom:34px;font-weight:800;font-size:13px}.section-nav a:hover{color:var(--brand)}.panel{background:#fff;border:1px solid #e9eeee;border-radius:13px;padding:30px;margin:0 0 25px;box-shadow:0 4px 22px #1b3e4510}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:25px}.section-head h2{font-size:25.44px;line-height:1.3;margin:4px 0 0}.small-muted,.notice{color:#8b9699;font-size:12px}.menu-item{display:flex;gap:18px;padding:19px 0;border-bottom:1px solid var(--line)}.menu-item:first-child{padding-top:0}.menu-item:last-child{border-bottom:0}.menu-item img{width:126px;height:105px;object-fit:cover;border-radius:8px;flex-shrink:0;background:#d8e4df}.menu-text{flex:1;min-width:0}.menu-title-row{display:flex;align-items:start;justify-content:space-between;gap:10px}.menu-item h3{font-size:16.96px;line-height:1.5;margin:0}.price{white-space:nowrap;font-weight:900;font-size:17px;color:#146d70}.menu-item p{font-size:13px;color:#718187;line-height:1.7;margin:8px 0 0}.notice{margin:20px 0 0}.news-item{display:flex;gap:22px}.news-item time{white-space:nowrap;color:#829093;font-size:12px}.news-item h3{margin:6px 0;font-size:16.96px}.news-item p{margin:5px 0;color:#65767b;font-size:13px}.new-tag{color:#d47932;background:#fff2e3;font-size:10px;font-weight:900;padding:2px 7px;border-radius:3px}.map-mock{height:235px;background:linear-gradient(35deg,#d7e8df,#f0eee3);position:relative;overflow:hidden;border-radius:9px;margin-bottom:20px}.map-lines{position:absolute;inset:-40%;background:repeating-linear-gradient(0deg,transparent 0 63px,#fff9 64px 73px,transparent 74px 135px),repeating-linear-gradient(90deg,transparent 0 80px,#fff9 81px 91px,transparent 92px 155px);transform:rotate(-20deg)}.map-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;text-align:center;background:#ffffffed;border-radius:9px;padding:12px 22px;box-shadow:0 5px 25px #1b3e4533;min-width:190px}.map-center .pin{width:32px;height:32px;line-height:32px;border-radius:50%;background:#e36b56;color:#fff;margin-bottom:6px}.map-center strong{font-size:13px}.map-center small{font-size:10px;color:#859294}.details{margin:0}.details div{display:grid;grid-template-columns:135px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}.details dt{color:#829095}.details dd{margin:0;font-weight:650}.map-link{display:inline-block;margin-top:22px;color:var(--brand);font-weight:800;font-size:13px}.sidebar{position:sticky;top:108px}.side-card{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 4px 22px #1b3e4510}.side-photo{height:165px}.side-content{padding:22px}.side-content h3{font-size:22.26px;margin:5px 0 14px;line-height:1.4}.side-content p{font-size:13px;color:#6a7b80;margin:14px 0}.side-route{display:block;text-align:center;background:var(--brand);color:#fff;border-radius:8px;font-size:13px;font-weight:800;padding:12px;margin-top:22px}.side-tip{margin-top:18px;border:1px solid #e3ece9;border-radius:12px;padding:23px;background:#eff6f3}.side-tip strong{color:#14767b;font-size:12px;letter-spacing:1px}.side-tip p{font-size:12px;color:#687c78;margin:10px 0 0}.footer{background:var(--deep);color:#fff;padding:36px 0 45px}.footer strong{font-size:22px;letter-spacing:-1px}.footer p{font-size:11px;color:#9ab4b8;margin:2px 0}.mobile-actions{display:none}.modal[hidden]{display:none}.modal{position:fixed;inset:0;background:#091d23e8;z-index:100;display:grid;place-items:center;padding:20px}.modal-inner{width:min(850px,100%);color:#fff}.modal-top,.modal-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.modal-top button,.modal-bottom button{border:1px solid #ffffff5c;color:#fff;background:transparent;border-radius:7px;padding:3px 16px;font-size:24px}.modal-inner img{display:block;width:100%;height:min(68vh,600px);object-fit:contain;background:#09171b}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#173d42;color:#fff;padding:9px 20px;border-radius:9px;box-shadow:0 5px 22px #0003;opacity:0;pointer-events:none;transition:opacity .2s;z-index:110;font-size:13px;white-space:nowrap}#toast.show{opacity:1}@media(max-width:900px){.desktop-nav{display:none}.content-grid{grid-template-columns:1fr}.sidebar{display:none}.hero{height:370px}}@media(max-width:600px){.wrap{padding:0 16px}.preview-inner{display:block;padding-top:8px;padding-bottom:8px}.demo-types{margin-top:5px}.head-inner{height:64px}.brand{font-size:21px}.brand small{font-size:7px}.languages button{font-size:19px;padding:5px}.breadcrumbs{padding:13px 0;font-size:11px}.hero{height:270px;display:block;border-radius:9px;margin:0 -16px}.hero-main{height:100%}.hero-side{display:none}.gallery-btn{right:12px;bottom:12px;font-size:11px;padding:7px 10px}.photo-count{bottom:13px;left:12px}.content-grid{margin:24px 0 65px;display:block}.name-row h1{font-size:31.8px}.intro-meta{gap:9px 16px;margin:18px 0}.lead{font-size:14px;line-height:1.9}.action-row{display:grid;grid-template-columns:1fr 1fr}.primary-action{grid-column:span 2}.section-nav{gap:16px;justify-content:space-between;font-size:12px;overflow-x:auto;white-space:nowrap}.panel{padding:20px 17px;margin:0 -4px 18px}.section-head h2{font-size:22.26px}.menu-item{gap:12px}.menu-item img{width:100px;height:100px}.menu-item h3{font-size:14.84px}.menu-item p{font-size:12px}.price{font-size:15px}.menu-title-row{display:block}.news-item{display:block}.details div{grid-template-columns:100px 1fr}.mobile-actions{display:grid;grid-template-columns:2fr 1fr;gap:9px;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:20;box-shadow:0 -5px 20px #0001}.mobile-actions a,.mobile-actions button{display:block;text-align:center;background:var(--brand);color:#fff;border:0;border-radius:8px;padding:10px 6px;font-size:13px;font-weight:800}.mobile-actions button{background:#eff5f3;color:#31595c}.footer{padding-bottom:95px}}


/* v4.1: styles are scoped to this page's dedicated stylesheet; never overwrite /style.css */
.pg-jump-item:target{outline:2px solid #e4ad54;outline-offset:3px;background:#fff4cf;animation:pg-focus 4s ease-out both;scroll-margin-top:105px}@keyframes pg-focus{0%,70%{background:#fff0b2}100%{background:transparent}}
.pg-public-news-item{padding:18px 0;border-bottom:1px solid var(--line)}.pg-public-news-item h3{margin:5px 0}.pg-public-news-item p{white-space:pre-line;margin:5px 0}.pg-menu-extra{font-size:12px;color:#647780;margin-top:6px}.pg-menu-extra ul{margin:3px 0 8px;padding-left:18px}.pg-hours-table{width:100%;border-collapse:collapse}.pg-hours-table td{padding:7px 8px;border-bottom:1px solid var(--line)}.pg-social{display:flex;flex-wrap:wrap;gap:10px}.pg-social a{padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:#fff}.pg-no-photo{display:flex;align-items:center;justify-content:center;height:100%;color:#6d8589;background:linear-gradient(135deg,#e2eeea,#cadbd9)}.pg-map-placeholder{background:#e9f1ef;padding:28px;border-radius:12px;text-align:center}.pg-lang-link{display:inline-flex;align-items:center;justify-content:center;font-size:23px;padding:6px;border-radius:8px}.pg-lang-link[aria-current=page]{background:#e6f4f2;border:1px solid #b6dad7}.pg-gallery-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.pg-gallery-thumbs button{border:0;background:none;padding:0}.pg-gallery-thumbs img{width:74px;height:62px;object-fit:cover;border-radius:6px}.pg-menu-photo-empty{width:115px;height:115px;background:#e9f1ef;border-radius:8px;flex-shrink:0}.pg-menu-card img{object-fit:cover}.pg-menu-card{scroll-margin-top:105px}.pg-detail-action{display:inline-block;padding:8px 13px;background:#edf5f3;border-radius:7px;margin:4px 8px 4px 0}.pg-news-time{font-size:12px;color:#7c898d}.pg-favorite-note{font-size:12px;color:#6d7c80}.pg-hours-status{font-weight:800}.pg-hours-status.closed{color:#ad5c42}.pg-social-section{margin-top:22px}.pg-gallery-modal[hidden]{display:none!important}.pg-gallery-modal{position:fixed;inset:0;z-index:100;background:#000d;display:flex;align-items:center;justify-content:center;padding:20px}.pg-gallery-modal-inner{max-width:1000px;width:100%;text-align:center;color:#fff}.pg-gallery-modal-inner img{max-width:100%;max-height:75vh;object-fit:contain}.pg-gallery-modal-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pg-gallery-modal button{background:#fff;color:#123;border:0;padding:8px 15px;border-radius:7px}.pg-mobile-actions a{cursor:pointer}@media(max-width:600px){.pg-gallery-thumbs img{width:58px;height:52px}.pg-menu-photo-empty{width:100px;height:100px}}

/* v4.1.1: embedded Google Map (scoped to the shop detail page) */
.pg-map-embed{width:100%;height:300px;overflow:hidden;border-radius:10px;background:#e9f1ef;border:1px solid var(--line)}
.pg-map-embed iframe{display:block;width:100%;height:100%;border:0}
.pg-map-caption{margin:10px 0 0;color:#63777b;font-size:13px;line-height:1.6}
@media(max-width:600px){.pg-map-embed{height:250px}}

/* v4.1.2: match the approved demo's prominent shop identity header. */
.intro .eyebrow{font-size:clamp(12px,1.2vw,17px);letter-spacing:2.5px;line-height:1.5;margin:0 0 17px;text-transform:uppercase}
.intro .name-row{align-items:flex-start;gap:20px}
.intro .name-copy{min-width:0;flex:1}
.intro .name-row h1{font-size:clamp(40.28px,5.3vw,80.56px);line-height:1.13;letter-spacing:-1.8px;margin:0 0 16px;overflow-wrap:anywhere;font-weight:850}
.intro .subtitle{font-size:clamp(15px,1.45vw,21px);line-height:1.5;color:#74838a;margin:0 0 8px}
.intro .heart{width:76px;height:76px;font-size:47px;line-height:1;display:flex;align-items:center;justify-content:center;margin-top:4px}
@media(max-width:700px){.intro .eyebrow{font-size:12px;letter-spacing:1.4px;margin-bottom:12px}.intro .name-row h1{font-size:clamp(31.8px,8.48vw,50.88px);letter-spacing:-.8px;margin-bottom:10px}.intro .subtitle{font-size:15px}.intro .heart{width:52px;height:52px;font-size:32px}}

/* v4.1.3: restore demo's compact identity hierarchy; hide empty eyebrow. */
.intro .eyebrow{font-size:11px;letter-spacing:1.6px;line-height:1.5;margin:0 0 10px;min-height:0}
.intro .eyebrow:empty{display:none}
.intro .name-row{align-items:center;gap:16px}
.intro .name-row h1{font-size:clamp(29.68px,3.604vw,46.64px);line-height:1.25;letter-spacing:-.8px;margin:0 0 6px;font-weight:850}
.intro .subtitle{font-size:14px;line-height:1.6;margin:0;color:#74838a}
.intro .heart{width:50px;height:50px;font-size:30px;margin-top:0}
.intro .intro-meta{margin-top:18px}
@media(max-width:700px){.intro .name-row h1{font-size:clamp(27.56px,7.42vw,40.28px)}.intro .heart{width:46px;height:46px;font-size:28px}}

/* Urgent/emergency announcement */
.pg-public-news-item.pg-news-urgent{background:#fff5f4;border:1px solid #e8b8b4;border-left:5px solid #ad342d;border-radius:9px;padding:15px;margin:10px 0}
.pg-news-urgent-label{display:inline-block;background:#a92f29;color:#fff;font-size:12px;font-weight:800;padding:3px 9px;border-radius:5px;margin:0 6px 4px 0}
