*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font:16px/1.6 system-ui,sans-serif;background:#f3f7f5;color:#17392e}.tetPage{max-width:1080px;margin:auto}.tetHero{background:#183d32;color:white;padding:28px;position:relative;overflow:hidden}.tetCover{width:100%;max-height:300px;object-fit:cover;border-radius:16px;margin-bottom:18px}.tetBrand{font-size:12px;letter-spacing:.14em;color:#beead3}.tetHeroBody{display:flex;gap:18px;align-items:center;margin:20px 0}.tetLogo{aspect-ratio:1;width:80px;height:80px;border-radius:0;object-fit:contain}h1{font-size:32px;margin:0}h2{font-size:24px}h3{font-size:18px;margin:0}.tetContacts{display:flex;gap:10px;flex-wrap:wrap}.tetContacts a{background:#daf2e5;color:#17392e;padding:9px 16px;border-radius:12px;text-decoration:none}.tetNav{position:sticky;top:0;background:#fff;z-index:10;display:flex;gap:8px;overflow:auto;padding:12px 18px;box-shadow:0 3px 12px #16392d12}.tetNav a,.tetNav button{white-space:nowrap;font-size:14px;border:0;background:#eef6f1;padding:8px 13px;color:#17392e;text-decoration:none;border-radius:10px}.tetSection{margin:18px;background:#fff;border:1px solid #e0eae4;border-radius:20px;padding:24px}.tetSectionHeading{display:flex;align-items:center;justify-content:space-between}.tetItems{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.tetItem{border:1px solid #e0eae4;padding:18px;border-radius:14px;display:flex;gap:12px;scroll-margin-top:100px}.tetItem img{max-width:100px;width:28%;height:100px;object-fit:cover;border-radius:10px}.tetItemText{flex:1;min-width:0}.tetNumber{display:inline-block;background:#edf6ef;color:#347453;border-radius:6px;padding:1px 8px;font-size:13px}.tetThai,.tetConditions{color:#668075}.tetPrice{font-weight:650}.tetSearch input{max-width:480px}label{display:block;margin:10px 0}input,textarea,select{font:inherit;border:1px solid #bed2c6;border-radius:8px;padding:9px;width:100%}textarea{min-height:100px}form[data-number-form]{display:flex;flex-wrap:wrap;align-items:end;gap:10px}form[data-number-form] label{width:150px}button{font:inherit;border:1px solid #bad3c6;background:#e6f3eb;color:#17392e;padding:8px 13px;border-radius:8px;cursor:pointer}button:disabled{opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #45a77a;outline-offset:3px}details{padding:14px 0;border-bottom:1px solid #e3ece6}summary{cursor:pointer}#tet-translation-output{font-size:30px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;background:#f0faf4;border-radius:12px;padding:18px;min-height:80px}footer{text-align:center;padding:30px 18px 60px;color:#6e8278;font-size:13px}[hidden]{display:none!important}@media(max-width:700px){.tetItems{grid-template-columns:1fr}.tetHero{padding:20px}.tetSection{padding:18px;margin:14px 12px}h1{font-size:27px}.tetNav{padding:10px 12px}#tet-translation-output{font-size:26px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.tetGallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.tetGallery figure{margin:0}.tetGallery img{width:100%;height:160px;object-fit:cover;border-radius:12px}

.tetSection--empty{padding-top:14px;padding-bottom:14px}.tetSection--empty h2{margin:0}.tetSection--empty>p{margin:10px 0 0;color:#557269}
#visitor-translation{border-color:#b8dfc8;box-shadow:0 8px 24px #123d3220}

.tetBusinessHours{white-space:pre-line}

/* r121: one locale at a time, with the same mobile layout at the QR entry. */
body .floatingPetRoot{bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}
:root{--tet-ink:#0a493d;--tet-blue:#4042c8;--tet-soft:#effdfb}
body{background:var(--tet-soft);color:#152923;line-height:1.5;padding-bottom:100px}
.tetPage{max-width:760px;padding:14px 16px 0}
svg{width:26px;height:26px;flex-shrink:0}
.tetHero{background:#fff;color:#152923;border-radius:16px;padding:16px;overflow:visible;box-shadow:0 2px 18px #05524408}
.tetCover{max-height:220px;border-radius:10px;margin:0 0 14px;display:block}
.tetTop{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tetBrand{font-size:10px;letter-spacing:.08em;color:var(--tet-ink);text-decoration:none}
.tetLanguage{position:relative;padding:0;border:0;z-index:30;flex-shrink:0}
.tetLanguage summary{display:flex;gap:10px;align-items:center;border:1px solid #80b9ae;border-radius:14px;padding:8px 12px;background:#f4fffc;color:var(--tet-ink);list-style:none;min-width:132px;justify-content:space-between}
.tetLanguage summary::-webkit-details-marker{display:none}
.tetLanguage nav{position:absolute;top:calc(100% + 5px);right:0;min-width:100%;background:#fff;border:1px solid #d4e9e3;border-radius:12px;padding:5px;box-shadow:0 8px 20px #144b3c28}
.tetLanguage nav a{display:flex;justify-content:space-between;gap:22px;align-items:center;text-decoration:none;padding:10px 12px;border-radius:8px;color:#152923;white-space:nowrap}
.tetLanguage nav a[aria-current]{background:#e3faf2;color:var(--tet-ink);font-weight:700}
.tetHeroBody{gap:14px;margin:20px 0 12px;align-items:center}.tetHeroBody>div{min-width:0;flex:1}
.tetLogo{aspect-ratio:1;width:76px;height:76px;border-radius:0;object-fit:contain;flex-shrink:0;background:#fff}
.tetLogoFallback{display:grid;place-items:center;color:var(--tet-ink)}.tetLogoFallback svg{width:36px;height:36px}
h1{font-size:26px;line-height:1.3;overflow-wrap:anywhere}h2{font-size:23px;line-height:1.35;margin:0 0 10px}h3{font-size:21px;line-height:1.35;overflow-wrap:anywhere}
p{margin:8px 0}.tetTagline{font-size:14px;line-height:1.4;margin:5px 0}.tetSubtitle{font-size:14px;color:var(--tet-blue);margin:5px 0}.tetStoreDescription{font-size:15px;color:#50635b}
.tetContacts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:16px}
.tetContacts a,.tetContacts button,.tetContacts>.tetUnavailable{border:1px solid #8ab7ad;border-radius:7px;background:#fcfffe;color:var(--tet-ink);font-size:13px;line-height:1.2;padding:10px 3px;min-height:74px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center;overflow-wrap:anywhere;text-decoration:none}
.tetContacts a,.tetContacts button,.tetContacts>.tetUnavailable{font-size:clamp(10px,3vw,12px)}
.tetUnavailable{opacity:.45}.tetLineIcon{display:grid;place-items:center;background:var(--tet-ink);color:#fff;width:30px;height:30px;border-radius:50%;font-size:9px;font-weight:750}
.tetShareStatus:empty{display:none}.tetShareStatus{font-size:13px;color:var(--tet-blue)}
.tetStoreInfo{background:#fff;border-radius:12px;margin:12px 0;padding:14px 16px;color:var(--tet-blue)}.tetStoreInfo h2{color:#17241f}.tetStoreInfo>p{font-size:14px}
.tetInfoRow{display:flex;gap:12px;align-items:flex-start;margin:9px 0}.tetInfoRow svg{color:var(--tet-ink)}.tetInfoRow>div{min-width:0;overflow-wrap:anywhere}.tetInfoRow b{font-weight:500;margin-right:12px}.tetBusinessHours{display:inline-block;vertical-align:top}
.tetSocials{display:flex;gap:12px;flex-wrap:wrap;font-size:14px}.tetSocials a{color:var(--tet-blue)}
.tetNav{padding:0;gap:0;box-shadow:none;overflow:visible;background:#fff;margin:12px -0px;top:0;z-index:20}
.tetNav a{flex:1;text-align:center;border-radius:0;background:transparent;padding:11px 5px;border-bottom:4px solid transparent;color:var(--tet-blue);font-size:17px;white-space:normal}
.tetNav a.active{border-color:var(--tet-ink);font-weight:700;color:var(--tet-ink)}
.tetSection{margin:18px 0;padding:0;background:transparent;border:0;border-radius:0;scroll-margin-top:70px}.tetSection>h2{margin-bottom:9px}
.tetItems{grid-template-columns:1fr 1fr;margin:10px 0 0;gap:14px}
.tetItem{position:relative;background:#fff;border:0;border-radius:10px;padding:5px;display:flex;flex-direction:column;gap:0;overflow:hidden}
.tetItemMedia{position:relative}.tetItem .tetItemMedia img{display:block;width:100%;max-width:none;height:185px;border-radius:7px 7px 0 0;object-fit:cover}
.tetNumber{position:absolute;left:9px;top:9px;border:1px solid #fff;background:var(--tet-ink);color:#fff;border-radius:18px;padding:2px 12px;font-size:16px;font-weight:700}
.tetItem>.tetNumber{position:static;align-self:flex-start;margin:5px}
.tetItemText{padding:9px 7px 7px}.tetItemHeading{display:flex;gap:8px;justify-content:space-between;align-items:start;flex-wrap:wrap}.tetItemHeading h3{flex:1;min-width:110px}.tetItemHeading .tetOriginal{flex-basis:100%}
.tetPrice{margin:0;text-align:right;color:var(--tet-ink);font-weight:700;font-size:17px;max-width:48%;line-height:1.25}.tetPrice small{font-size:12px;display:block;font-weight:400;margin-top:3px}
.tetDescription{color:var(--tet-blue);font-size:15px}.tetConditions{font-size:13px;margin:5px 0}.tetDescription:empty,.tetConditions:empty{display:none}
.tetItemActions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.tetSpeak,.tetBookService{display:flex;flex:1;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:8px 10px;border-radius:6px;font-size:15px;line-height:1.4;text-align:center;text-decoration:none}
.tetSpeak{color:#fff;background:var(--tet-ink);border:1px solid var(--tet-ink)}.tetBookService{color:var(--tet-ink);background:#fff;border:1px solid #7eafa4}.tetBookService svg,.tetSpeak svg{width:23px;height:23px}
.tetBookingNote{font-size:13px;color:var(--tet-blue);text-align:center;margin:10px 0 1px}
.tetFind{border:0;padding:0;font-size:13px;color:#58726a}.tetFind>summary{display:inline-block;padding:3px 0}.tetFind[open]{background:#fff;border-radius:8px;padding:10px}.tetFind input{background:#fff}.tetFind button{min-height:44px}
.tetFaq{background:#fff;border-radius:10px;padding:0 12px}.tetFaq details{padding:13px 0}.tetFaq details:last-child{border:0}.tetFaq summary{display:flex;justify-content:space-between;gap:12px;color:var(--tet-blue);font-size:16px;list-style:none}.tetFaq summary::-webkit-details-marker{display:none}.tetFaq p{font-size:15px;padding-top:5px}.tetFaq>p{padding:12px 0}
.tetTalkEntry{display:flex;align-items:center;gap:12px;background:#fff;border-radius:9px;color:var(--tet-blue);text-decoration:none;padding:14px 12px;font-size:14px;margin:18px 0}.tetTalkEntry svg{color:var(--tet-ink)}.tetTalkEntry>span:nth-child(2){flex:1}.tetTalkEntry>span:last-child{font-size:26px}.tetTalkEntry b{font-weight:600}
#booking,#visitor-translation,#store-talk{background:#fff;padding:16px;border-radius:12px}#booking h2,#visitor-translation h2{font-size:21px}#store-talk{padding:12px}#store-talk button{width:100%;min-height:44px}
.tetBookingActions{display:flex;gap:10px}.tetBookingActions a{border:1px solid #8ab7ad;border-radius:7px;padding:10px 20px;text-decoration:none;color:var(--tet-ink)}
.tetGallery img{height:160px}.tetOriginal{display:block;font-size:11px;color:#60756d;font-weight:400;margin-top:2px}
footer{padding:18px 8px 30px;color:#6d7e77;font-size:12px}footer>p{font-size:12px}footer>a{color:var(--tet-blue)}
.tetBottomBar{position:fixed;z-index:40;bottom:0;left:50%;transform:translateX(-50%);width:min(728px,100%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#fff;border:1px solid #e1f0eb;border-radius:12px 12px 0 0;padding:5px 6px calc(5px + env(safe-area-inset-bottom));box-shadow:0 -5px 22px #184e3310}
.tetBottomBar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:65px;padding:7px 4px;text-align:center;color:var(--tet-blue);text-decoration:none;border-radius:6px;line-height:1.2;font-size:14px}.tetBottomBar svg{color:var(--tet-ink);width:27px;height:27px}.tetBottomBar a.active{background:var(--tet-ink);color:white}.tetBottomBar a.active svg{color:white}
@media(max-width:600px){.tetPage{padding:10px 10px 0}.tetHero{padding:12px}.tetHeroBody{gap:10px}.tetLogo{aspect-ratio:1;width:66px;height:66px}h1{font-size:23px}.tetItems{grid-template-columns:1fr;gap:14px}.tetItem .tetItemMedia img{height:190px}.tetNav{margin-top:14px}.tetStoreInfo{padding:13px 14px}.tetTagline,.tetSubtitle{font-size:13px}.tetItemActions{flex-wrap:nowrap}.tetSpeak,.tetBookService{font-size:14px}.tetBottomBar a{font-size:13px}.tetBrand{font-size:9px}}
@media(max-width:360px){.tetContacts a,.tetContacts button,.tetContacts>.tetUnavailable{font-size:11px}.tetLogo{aspect-ratio:1;width:58px;height:58px}.tetHeroBody{gap:8px}.tetItemActions{flex-wrap:wrap}.tetItemHeading h3{font-size:19px}.tetNav a{font-size:15px}}
/* r123: store facts, plan-aware bottom actions, and PET within communication. */
.tetPage .tetTop{justify-content:flex-end}.tetPage .tetClassification,.tetPage .tetRegular{margin:6px 0;color:#274f47;font-size:14px}.tetPage .tetContacts{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}.tetPage .tetAddressRow{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:start}.tetPage .tetAddressRow>div{min-width:0}.tetPage .tetAddressDirections{display:flex;align-items:center;justify-content:flex-end;gap:4px;max-width:100px;margin-left:auto;text-decoration:none;font-size:12px}.tetPage .tetAddressDirections svg{width:20px;flex-shrink:0}.tetPage .tetSocials{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.tetPage .tetSocials a{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #c2dfd7;border-radius:20px;text-decoration:none;color:#0c5143;font-size:12px;min-height:40px}.tetSocialIcon{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#0c5143;color:#fff;font-weight:700;font-size:10px}.tetStoreDetails{border-top:1px solid #edf3f0;padding-top:12px;margin-top:12px}.tetStoreDetails summary{cursor:pointer;font-size:13px;color:#426c63}.tetStoreDetails .tetStoreDescription{margin:14px 0;white-space:pre-wrap}.tetPage .tetBottomBar{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:1fr}.tetBottomBar>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px 3px;border:0;margin:0;background:transparent;color:inherit;border-radius:7px;font:inherit;font-size:13px;cursor:pointer;min-height:64px}.tetBottomBar>button svg{width:28px;height:28px}.tetBottomBar>button.active{background:#0c5143;color:#fff}.tetTalkDialog{width:min(700px,calc(100vw - 24px));max-height:85vh;box-sizing:border-box;border:1px solid #b9dace;border-radius:18px;padding:20px;color:#103e37;background:#fff;box-shadow:0 12px 60px #183f3b33}.tetTalkDialog::backdrop{background:#103e3766}.tetTalkDialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.tetTalkDialog>header>span{display:flex;align-items:center;gap:8px}.tetTalkDialog>header svg{width:36px;height:36px}.tetTalkDialog>header button{min-width:44px;min-height:44px;font-size:22px;border:0;background:#edf7f2;color:#103e37;border-radius:8px}.tetTalkDialog .tetSection{margin:12px 0;box-shadow:none;padding:12px 0}.tetTalkDialog textarea{display:block;width:100%;box-sizing:border-box;font:inherit;min-height:80px;margin:8px 0;padding:10px;border:1px solid #b4d9ca;border-radius:8px}.tetTalkDialog form>button,.tetTalkDialog .tetSecondary{padding:12px 18px;border:1px solid #0c5143;border-radius:8px;background:#0c5143;color:#fff;font:inherit;min-height:44px;cursor:pointer}.tetTalkDialog .tetSecondary{background:#fff;color:#0c5143;display:block;margin:12px 0}.tetTalkDialog [data-store-question-answer]{white-space:pre-wrap;overflow-wrap:anywhere}.tetTalkDialog label{font-size:14px}.tetTalkDialog select{min-height:44px}.tetProTalk{border-top:1px solid #d6e8df;padding-top:12px}.tetProTalk h2{font-size:18px}
.tetHeroIdentity{flex:1;min-width:0}.tetNameRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.tetNameRow h1{overflow-wrap:anywhere;min-width:0}.tetNameRow .tetLanguage{margin:0;flex-shrink:0}.tetHero{overflow:visible}.tetHeroBody{margin-top:16px}.tetContacts a strong{font-size:14px;overflow-wrap:anywhere}.tetAddressDirections{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 12px;border:1px solid #b4d8d0;border-radius:10px;text-decoration:none;background:#f4fffc;flex-shrink:0}.tetSocials{gap:10px;flex-wrap:wrap}.tetSocials a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid #c3ded7;border-radius:12px;text-decoration:none;background:#f7fffd}.tetSocials svg{width:22px;height:22px}.tetHeroGallery{position:relative;margin-bottom:14px}.tetHeroGallery figure{margin:0}.tetHeroGallery [data-gallery-open]{display:block;width:100%;padding:0;border:0;background:transparent}.tetHeroGallery .tetCover{display:block;max-height:340px;width:100%;object-fit:cover;margin:0;border-radius:12px}.tetHeroGallery figcaption{font-size:12px;color:#45685d;padding-top:6px}.tetGalleryControls{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:6px}.tetGalleryControls button{min-height:44px;min-width:44px;font-size:24px}.tetImageDialog{width:min(96vw,1000px);max-height:94vh;border:0;border-radius:14px;padding:16px;background:white;color:#17392e}.tetImageDialog::backdrop{background:#102e28bb}.tetImageDialog img{display:block;width:100%;max-height:75vh;object-fit:contain}.tetImageDialog [data-gallery-close]{display:block;margin:0 0 12px auto;min-height:44px}.tetHeroGallery [data-gallery-slide].imageFailed img{min-height:160px;object-fit:contain}@media(max-width:500px){.tetNameRow{gap:8px}.tetNameRow h1{font-size:21px}.tetNameRow .tetLanguage summary{padding:8px;min-width:92px;font-size:14px}.tetNameRow .tetLanguage svg{width:19px;height:19px}.tetHeroBody{gap:10px}.tetHeroBody .tetLogo{aspect-ratio:1;width:54px;height:54px}.tetHeroGallery .tetCover{max-height:260px}.tetAddressRow{flex-wrap:wrap}.tetAddressRow>div{flex:1;min-width:180px}.tetAddressDirections{margin-left:auto}.tetSocials a{padding:9px 11px}}

/* Visible sections determine the number of navigation entries. */
.tetBottomBar{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.tetBottomBar[hidden]{display:none}.tetNav{display:flex}.tetNav>a{flex:1;min-width:0}
.tetPage .tetHeroGallery [data-gallery-open]{position:relative;display:block;width:100%;aspect-ratio:2/1;padding:0;border:0;border-radius:0;background:#f5f7f6;overflow:hidden}.tetPage .tetHeroGallery [data-gallery-open] .tetCover{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;border-radius:0;margin:0}.tetPage .tetItemMedia [data-store-image-open]{position:relative;display:block;width:100%;aspect-ratio:4/3;border:0;padding:0;border-radius:0;background:#f5f7f6;overflow:hidden}.tetPage .tetItemMedia [data-store-image-open] img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0}.tetPage .tetItemMedia [data-image-fit="contain"] img{object-fit:contain}.tetItemMedia .tetNumber{pointer-events:none}.storeImageViewer{width:min(1100px,calc(100vw - 24px));max-height:92vh;padding:12px;border:1px solid #b8d6ca;border-radius:12px;color:#173e34;background:#fff;overflow:auto}.storeImageViewer::backdrop{background:#12392d99}.storeImageViewer>button{display:block;min-height:44px;margin:0 0 10px auto}.storeImageViewer>img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}

/* Menu and service photos keep their complete image in a square frame. */
.tetPage .tetItemMedia [data-store-image-open]{aspect-ratio:1/1}.tetPage .tetItemMedia [data-store-image-open] img{object-fit:contain}

.tetMenuCategories{position:sticky;top:58px;z-index:12;display:flex;gap:8px;overflow-x:auto;padding:10px 0;background:#fff;scrollbar-width:thin}.tetMenuCategories a{flex:none;border:1px solid #cbdedc;border-radius:20px;padding:8px 14px;color:#20534e;text-decoration:none}.tetMenuCategories a[aria-current]{background:#146b63;color:#fff}.tetMenuGroup{scroll-margin-top:145px}.tetMenuGroup>h3{font-size:1.1rem;margin:20px 0 12px}.tetMenuCategories [hidden]{display:none}

/* r150: one scrollable workspace, with a persistent title and close control. */
html.tetTalkOpen{overflow:hidden}
#store-talk.tetTalkDialog{position:fixed;inset:auto;left:50%;top:calc(var(--tet-talk-viewport-top,0px) + var(--tet-talk-viewport-height,100dvh)/2);transform:translate(-50%,-50%);width:min(680px,calc(100% - 40px));max-width:none;max-height:calc(100vh - 48px);max-height:min(880px,calc(var(--tet-talk-viewport-height,100dvh) - 32px));margin:0;padding:0;border:1px solid #d6e7df;border-radius:24px;background:#fff;color:#173e35;box-shadow:0 24px 80px #143c3540;overflow:hidden}
#store-talk[open]{display:flex;flex-direction:column}
#store-talk::backdrop{background:#123c3566;backdrop-filter:blur(3px)}
#store-talk>header{display:flex;flex:none;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e2ece7;background:#fff}
#store-talk>header>span{display:flex;align-items:center;gap:10px;min-width:0;font-size:19px;line-height:1.4}
#store-talk>header svg{flex:0 0 32px;width:32px;height:32px}
#store-talk [data-close-talk]{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0;border:1px solid #dbe8e2;border-radius:50%;background:#f3f8f5;color:#31594d;font-size:25px;line-height:1;cursor:pointer}
#store-talk .tetTalkModes{display:grid;flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:16px 20px 0;padding:4px;border:1px solid #e0ebe5;border-radius:14px;background:#f1f6f3}
#store-talk .tetTalkModes button{width:auto;min-width:0;min-height:48px;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:#526e63;font:inherit;font-size:15px;line-height:1.45;cursor:pointer;overflow-wrap:anywhere}
#store-talk .tetTalkModes button[aria-selected=true]{background:#fff;color:#0c5c4a;font-weight:700;box-shadow:0 2px 8px #153d3214}
#store-talk .tetTalkBody{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px;scroll-padding:16px;-webkit-overflow-scrolling:touch}
#store-talk .tetSection,#store-talk .tetProTalk{margin:0;padding:0;border:0;box-shadow:none;background:transparent}
#store-talk h2{margin:0 0 8px;font-size:21px;line-height:1.5;letter-spacing:-.02em}
#store-talk section>p{margin:0 0 20px;color:#62796e;font-size:14px;line-height:1.7}
#store-talk label{margin:0 0 16px;font-size:14px;font-weight:600;color:#355b4c}
#store-talk select,#store-talk textarea{display:block;width:100%;min-width:0;margin:8px 0 0;padding:12px 14px;border:1px solid #bed5ca;border-radius:12px;background:#fbfdfc;color:#1c4035;font:inherit;font-size:16px;line-height:1.6}
#store-talk select{min-height:48px;padding-right:30px}
#store-talk select[hidden]{display:none}
#store-talk textarea{min-height:132px;max-height:260px;resize:vertical;scroll-margin:16px}
#store-talk textarea::placeholder{color:#607568;font-weight:400}
#store-talk :is(button,select,textarea,a):focus-visible{outline:3px solid #4b9b83;outline-offset:3px}
#store-talk [data-translation-limit]{margin:-5px 0 16px;color:#607568;font-size:12px;line-height:1.6}
#store-talk form>button{display:block;width:100%;min-height:50px;margin:0;padding:12px 18px;border:1px solid #0c5c4a;border-radius:12px;background:#0c5c4a;color:#fff;font:inherit;font-weight:600;line-height:1.5;cursor:pointer}
#store-talk form>button:disabled{cursor:wait;opacity:.7}
#store-talk [role=status]{font-size:13px;line-height:1.6;color:#5a7468;overflow-wrap:anywhere}
#store-talk [role=status]:empty{display:none}
#store-talk #tet-translation-output,#store-talk [data-store-question-answer]{margin:16px 0 0;padding:18px;border:1px solid #cce5d7;border-radius:14px;background:#eff8f2;color:#164b39;font-size:clamp(20px,3vw,26px);line-height:1.65;font-weight:500;white-space:pre-wrap;overflow-wrap:anywhere;scroll-margin:16px}
#store-talk #tet-translation-output:empty,#store-talk [data-store-question-answer]:empty{display:none}
#store-talk .tetSecondary,#store-talk [data-talk-booking]{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:16px 0 0;padding:10px 14px;border:1px solid #d2e2d9;border-radius:12px;background:#fff;color:#275b47;font:inherit;font-size:14px;line-height:1.5;text-align:center;text-decoration:none;cursor:pointer}
@media(max-width:760px){
 #store-talk.tetTalkDialog{position:fixed;inset:auto;top:calc(var(--tet-talk-viewport-top,0px) + 8px);left:8px;transform:none;width:calc(100% - 16px);height:calc(var(--tet-talk-viewport-height,100dvh) - 16px);max-height:calc(var(--tet-talk-viewport-height,100dvh) - 16px);margin:0;border-radius:20px;padding:0}
 #store-talk>header{padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));gap:12px}
 #store-talk>header>span{font-size:18px}
 #store-talk .tetTalkModes{margin:12px 16px 0}
 #store-talk .tetTalkBody{padding:20px 16px max(20px,env(safe-area-inset-bottom))}
 #store-talk h2{font-size:20px}
 #store-talk textarea{min-height:120px;max-height:220px}
 #store-talk #tet-translation-output,#store-talk [data-store-question-answer]{padding:16px;font-size:22px}
}
@media(max-height:500px){#store-talk>header{padding-top:8px;padding-bottom:8px}#store-talk .tetTalkModes{margin-top:8px}#store-talk .tetTalkBody{padding-top:14px}#store-talk textarea{min-height:88px}}

.tetFaqQuestion{margin-top:20px;border:1px solid #cee2df;border-radius:14px;padding:14px 16px;overflow-wrap:anywhere}.tetFaqQuestion summary{min-height:44px;display:flex;align-items:center;font-weight:600}.tetFaqQuestion :is(textarea,button){font-size:16px;min-height:44px;max-width:100%}.tetFaqConsent{display:flex;align-items:center;gap:12px;min-height:48px}.tetFaqConsent input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:0}.tetFaqQuestionActions{display:flex;gap:10px;flex-wrap:wrap}.tetFaqQuestionActions button{flex:1}.tetFaqMore>summary{min-height:44px;display:flex;align-items:center;font-weight:600}

/* r156: compact store overview and consistent ten-item catalogs. */
.tetHeroGallery .tetGalleryStage{position:relative;overflow:hidden;border-radius:12px;touch-action:pan-y}
.tetHeroGallery figure{margin:0}.tetHeroGallery [data-gallery-open]{display:block;padding:0;border:0;width:100%;border-radius:0;background:#edf4f0}
.tetHeroGallery .tetCover{display:block;width:100%;height:auto;aspect-ratio:2/1;max-height:none;margin:0;border-radius:0;object-fit:cover}
.tetHeroGallery .tetGalleryControls{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:4px;margin:0;padding:3px;border:1px solid #ffffff70;border-radius:999px;background:#123c32d9;color:#fff;backdrop-filter:blur(8px)}
.tetGalleryControls button{width:38px;min-height:38px;padding:0;border:0;border-radius:50%;color:#fff;background:transparent;font-size:24px;line-height:1}.tetGalleryControls output{min-width:52px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.tetHeroGallery .tetImageDialog{position:fixed;inset:0;width:calc(100% - 24px);max-width:1120px;height:calc(100dvh - 24px);max-height:900px;margin:auto;border:0;padding:12px;border-radius:16px;background:#102a24;color:#fff;overflow:hidden}
.tetImageDialog::backdrop,.tetItemDialog::backdrop{background:#071d17cf}.tetImageToolbar{display:flex;align-items:center;gap:10px;height:48px}.tetImageToolbar output{margin-right:auto}.tetImageToolbar button,.tetImageNavigation button{min-height:44px;border-color:#ffffff40;background:#ffffff15;color:#fff}.tetImageStage{height:calc(100% - 104px);overflow:auto;display:grid;place-items:center;touch-action:pan-y pinch-zoom}.tetHeroGallery .tetImageDialog img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;margin:0;object-fit:contain;border-radius:0}.tetHeroGallery .tetImageDialog.isZoomed .tetImageStage{display:block}.tetHeroGallery .tetImageDialog.isZoomed img{max-width:none;max-height:none;width:180%;height:auto}.tetImageNavigation{height:56px;display:flex;gap:12px;align-items:center}.tetImageNavigation p{flex:1;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.tetImageNavigation button{width:48px;font-size:24px;padding:0}
.tetAddressRow{flex-wrap:wrap}.tetAddressRow>div:first-of-type{flex:1;min-width:180px}.tetAddressActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tetAddressActions button,.tetAddressActions .tetAddressDirections{min-height:44px;padding:8px 10px;font-size:13px;border:1px solid #bad9d0;background:#f5fcf9;border-radius:9px;color:var(--tet-ink);display:flex;align-items:center;justify-content:center;text-decoration:none}.tetAddressStatus{font-size:13px;color:var(--tet-ink)}.tetAddressStatus:empty{display:none}.tetOpenStatus{display:inline;color:#60716a}.tetOpenStatus[data-hours-state=open]{color:#0e6950;font-weight:650}.tetFullHours{margin:14px 0;padding:12px;border-radius:10px;background:#f4faf7}.tetFullHours h3{font-size:15px;margin-bottom:8px}.tetFullHours .tetBusinessHours{font-size:14px}
.tetCatalogEntries{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.tetCatalogEntries>a{display:flex;align-items:center;gap:14px;padding:18px 14px;border:1px solid #d1e6dd;border-radius:14px;background:#fff;text-decoration:none;color:var(--tet-ink);min-height:88px}.tetCatalogEntries>a>span:first-of-type{flex:1}.tetCatalogEntries b,.tetCatalogEntries small{display:block}.tetCatalogEntries small{font-size:13px;font-weight:400;color:#657c71;margin-top:3px}.tetCatalogEntries>a>span:last-child{font-size:28px}.tetCatalogHero .tetRegular,.tetCatalogHero .tetContacts{display:none}.tetCatalogHero .tetHeroBody{margin:14px 0 2px}.tetCatalogHero .tetLogo{width:48px;height:48px}.tetCatalogHero h1{font-size:22px}.tetCatalogHero .tetClassification{margin-bottom:0}.tetBackToStore{font-size:14px;color:var(--tet-ink);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}.tetCatalogHero .tetLanguage summary{min-width:112px;font-size:14px}.tetCatalogHeading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:20px 0 12px}.tetCatalogHeading h2{margin:0}.tetCatalogHeading>span{font-size:13px;color:#647b70}.tetCatalogSearch{display:grid;grid-template-columns:minmax(100px,2fr) minmax(72px,1fr) minmax(100px,1.5fr) auto auto;align-items:end;gap:8px;background:#fff;border:1px solid #dcebe4;border-radius:14px;padding:12px}.tetCatalogSearch label{margin:0;min-width:0;font-size:12px;color:#5c7468}.tetCatalogSearch input,.tetCatalogSearch select{min-height:44px;margin-top:5px;width:100%;min-width:0;font-size:16px}.tetCatalogSearch button,.tetCatalogSearch>a{min-height:44px;display:grid;place-items:center;padding:8px;font-size:14px;color:var(--tet-ink)}
.tetCatalog .tetItems{align-items:stretch;gap:16px;margin-top:16px}.tetCatalog .tetItem{height:540px;padding:0;border:1px solid #dce9e2;border-radius:16px;box-shadow:0 3px 12px #123e2906}.tetCatalog .tetItemMedia{height:220px;flex:0 0 220px;background:#f5f7f4}.tetCatalog .tetItemMedia button{width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent}.tetCatalog .tetItemMedia img{display:block;width:100%;height:220px;max-width:none;border-radius:0;object-fit:contain}.tetItemNoImage{height:100%;display:grid;place-items:center;background:linear-gradient(140deg,#edf7f1,#f8faf6);color:#9bbcaf}.tetItemNoImage svg{width:54px;height:54px}.tetCatalog .tetItemText{display:flex;flex-direction:column;padding:16px;min-height:0}.tetCatalog .tetItemHeading{display:block;flex-shrink:0}.tetCatalog .tetItemHeading h3{font-size:19px;line-height:1.4;min-height:53px;max-height:53px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.tetCatalog .tetPrice{max-width:none;text-align:left;font-size:17px;margin:8px 0 0;min-height:43px}.tetCatalog .tetPrice small{display:inline;margin:0;font-size:12px}.tetCatalog .tetDescription{font-size:14px;line-height:1.55;max-height:44px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#607469;margin:7px 0 0}.tetCatalog .tetItemDetailsButton{background:none;border:0;align-self:flex-start;color:#24654d;padding:4px 0;min-height:34px;font-size:13px}.tetCatalog .tetItemActions{margin-top:auto;padding-top:6px;gap:8px}.tetCatalog .tetItemActions:empty{display:none}.tetCatalog .tetSpeak,.tetCatalog .tetBookService{font-size:13px;min-height:44px;padding:6px}.tetCatalog .tetBookingNote{font-size:11px;margin-top:6px}.tetCatalog .tetOriginal{font-size:10px;margin:0}
.tetItemDialog{width:calc(100% - 28px);max-width:560px;max-height:85dvh;padding:24px;border:0;border-radius:18px;color:#173d2f;background:#fff;overflow:auto}.tetItemDialog>button{display:block;margin:0 0 18px auto;min-height:44px}.tetItemDialog p{white-space:pre-line;overflow-wrap:anywhere;line-height:1.7}.tetPagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:20px 0}.tetPagination a{display:flex;justify-content:center;align-items:center;min-height:48px;text-decoration:none;padding:8px;border:1px solid #bad8cb;border-radius:12px;color:var(--tet-ink);background:#fff}.tetPagination>span{font-size:14px;color:#597264}.tetPagination>a:last-child{grid-column:3}.tetCatalogEmpty{padding:32px 16px;text-align:center;background:#fff;border-radius:12px;color:#60786a}
.tetFaqDisclosure{padding:0;border:0;background:#fff;border-radius:14px;overflow:hidden}.tetFaqDisclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;min-height:64px;padding:14px 16px}.tetFaqDisclosure>summary::-webkit-details-marker{display:none}.tetFaqDisclosure>summary h2{margin:0;font-size:21px}.tetFaqDisclosure>summary>span{border:1px solid #b7d4c8;border-radius:999px;padding:5px 12px;min-width:64px;text-align:center;font-size:13px;color:var(--tet-ink)}.tetFaqDisclosure .tetFaqQuestion{margin:12px}.tetBottomBar{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;grid-template-columns:none}
@media(max-width:600px){.tetCatalogSearch{grid-template-columns:minmax(0,2fr) minmax(76px,1fr);gap:10px}.tetCatalogSearch>label:nth-of-type(3){grid-column:1/-1}.tetCatalogSearch button,.tetCatalogSearch>a{min-height:44px}.tetCatalogEntries{gap:10px}.tetCatalogEntries>a{gap:8px;padding:14px 10px}.tetCatalog .tetItems{grid-template-columns:minmax(0,1fr)}.tetCatalog .tetItem{height:540px}.tetCatalogHero .tetLogo{display:none}.tetCatalogHero h1{font-size:21px}.tetCatalogHero .tetHeroBody{margin-top:4px}.tetCatalog .tetItemMedia,.tetCatalog .tetItemMedia img{height:230px}.tetCatalog .tetItemMedia{flex-basis:230px}.tetAddressActions{width:100%;padding-left:38px}.tetAddressActions>*{flex:1}.tetHeroGallery .tetCover{aspect-ratio:4/3}.tetHeroGallery .tetImageDialog{inset:0;width:100%;height:100dvh;max-height:none;border-radius:0;padding:10px;padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom))}.tetGalleryControls button{width:36px;min-height:36px}}
.tetCatalogSearch{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.tetCatalogPrimary{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.tetCatalogPrimary>button{min-width:72px;background:var(--tet-ink);color:#fff}.tetCatalogAdvanced{padding:0;border:0;min-width:0}.tetCatalogAdvanced>summary{font-size:12px;min-height:36px;display:flex;align-items:center;gap:6px;color:#446c5a}.tetCatalogAdvanced>summary:after{content:'⌄'}.tetCatalogAdvanced[open]>summary:after{content:'⌃'}.tetCatalogAdvanced>div{display:grid;grid-template-columns:minmax(60px,1fr) minmax(100px,2fr);gap:10px;padding-bottom:4px}.tetCatalogSearch>a{min-height:36px;padding:4px 8px;font-size:12px;align-self:start}
.tetPage .tetAddressRow{grid-template-columns:24px minmax(0,1fr) auto;gap:10px}.tetPage .tetAddressActions{display:flex;flex-wrap:nowrap;gap:8px}.tetPage .tetAddressActions .tetAddressDirections{max-width:none;justify-content:center;margin:0}.tetPage .tetHeroGallery [data-gallery-open]{aspect-ratio:2/1}.tetPage .tetHeroGallery [data-gallery-open] .tetCover{object-fit:cover}
@media(max-width:600px){.tetPage .tetAddressRow{grid-template-columns:24px minmax(0,1fr)}.tetPage .tetAddressActions{grid-column:2;width:100%;padding-left:0}.tetPage .tetAddressActions>*{flex:1}.tetPage .tetHeroGallery [data-gallery-open]{aspect-ratio:4/3}}

/* r157: shared overview/catalog cards, quiet identity, five-action navigation. */
.tetPage .tetHeroIdentity{min-width:0;flex:1}.tetPage .tetNameRow{align-items:flex-start;gap:12px}.tetPage .tetNameRow>p{margin:0;flex:1;font-weight:700;line-height:1.6}.tetPage .tetShortIntro{font-size:16px;line-height:1.65;margin:8px 0;color:#365b4c;overflow-wrap:anywhere}.tetAveragePrice{font-size:14px;font-weight:650;margin:8px 0 0;color:#144c3a}.tetStoreDetails>div{padding:16px 0;border-bottom:1px solid #e2ece6}.tetStoreDetails h1{font-size:24px;margin:0 0 12px}.tetStoreDetails h3{margin:0 0 10px}.tetStoreDetails>div>p{margin:0;line-height:1.8;white-space:pre-line}.tetStoreDetails #faq{margin:12px 0 0;padding:0}.tetStoreDetails .tetFaqDisclosure>summary{padding:12px 0}.tetStoreDetails .tetFaqDisclosure>summary h2{font-size:18px}
.tetPreviewHeading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 12px}.tetPreviewHeading h2{margin:0}.tetPreviewHeading small{color:#527562;white-space:nowrap}.tetMenuGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tetViewAll{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:14px 0;padding:10px 16px;border:1px solid #b9d5c6;border-radius:12px;text-decoration:none;background:white;color:var(--tet-ink);font-weight:650}.tetHomePreview{min-width:0}.tetCatalog .tetItem{height:610px}.tetVariantLabel{display:flex;flex-direction:column;gap:4px;font-size:13px;min-width:0;margin:6px 0}.tetVariantLabel select{width:100%;min-width:0;min-height:44px;font:inherit;font-size:16px;border:1px solid #bfd6ca;border-radius:9px;padding:8px;background:#f7fbf8;color:#183d2d}.tetAvailability{font-size:13px;margin:4px 0;color:#6c4e24}.tetBottomBar [data-store-home]>img{width:28px;height:28px;object-fit:contain;border-radius:7px;background:white}.tetPage .tetBottomBar>*{min-width:0;padding:8px 3px}.tetPage .tetBottomBar span{font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.tetPage{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
@media(max-width:600px){.tetMenuGrid{grid-template-columns:minmax(0,1fr);gap:14px}.tetPage .tetCatalogHero .tetLogo{display:block;width:54px;height:54px}.tetPage .tetHeroBody{gap:12px}.tetPage .tetLogo{width:64px;height:64px}.tetPage .tetNameRow{flex-wrap:wrap;gap:8px}.tetPage .tetLanguage{margin-left:auto}.tetPage .tetNameRow .tetLanguage summary{font-size:13px;padding:7px 9px}.tetPage .tetCatalog .tetItem{height:610px}.tetPage .tetBottomBar svg{width:24px;height:24px}}

.tetCatalog .tetItem:has(.tetItemNoImage) .tetItemMedia{height:100px;flex-basis:100px}.tetVariantLabel [data-variant-duration]{font-size:12px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.tetItemDialog section{border-top:1px solid #d9e6de;margin-top:16px;padding-top:16px}
