:root{
  --green:#1b5e3f; --green-d:#13472f; --green-l:#eaf2e6;
  --cream:#fdf8ec; --sand:#f5f1e2; --ink:#2b3a2e;
  --muted:#6b7a6c; --gold:#c9a227;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{background:var(--cream);color:var(--ink);font-family:"Sarabun",sans-serif;line-height:1.75}
h1,h2,h3,nav,.btn,.brand{font-family:"Kanit",sans-serif;font-weight:500}
a{color:inherit;text-decoration:none}
.ic{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;vertical-align:-.125em}
img{display:block;width:100%;object-fit:cover}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{width:min(1180px,92%);margin-inline:auto}
.ph{display:grid;place-items:center;width:100%;
  background:linear-gradient(135deg,#cfdfbc,#8fb184);color:#fff;font-size:40px}

.hd{position:sticky;top:0;z-index:50;background:var(--green);color:#fff}
.hd-in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;
  background:var(--cream);border:2px solid #d9c38a;border-radius:50%;font-size:26px;color:var(--green)}
.brand b{display:block;font-size:21px;font-weight:500;line-height:1.2}
.brand small{display:block;font-size:11px;font-style:italic;letter-spacing:.5px;opacity:.85}
nav{display:flex;align-items:center;gap:26px;font-size:15px}
nav a{display:flex;align-items:center;gap:6px;padding:8px 2px;border-bottom:2px solid transparent}
nav a:hover,nav a.on{border-color:var(--gold)}
.cart-link{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;
  border-radius:50%;font-size:24px;color:#fff;border:1px solid #ffffff44}
.cart-link:hover,.cart-link[aria-current]{background:#ffffff22}
.cbadge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;
  background:var(--gold);color:#2b3a2e;font:600 12px/20px "Kanit",sans-serif;text-align:center}
.burger{display:none;background:none;border:1px solid #ffffff55;border-radius:6px;color:#fff;padding:4px 11px;font-size:22px}
.flash{padding:10px 4%;text-align:center;font-size:14px}
.flash.ok{background:#e1f3e6;color:#176534}
.flash.err{background:#fde8e8;color:#9b1c1c}

.hero{position:relative;min-height:560px;display:grid;align-items:center;
  background:#b9cfa4 center/cover no-repeat;overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,#f7f3dfe6 0%,#f7f3dfbf 42%,#f7f3df10 72%)}
.hero-in{position:relative;z-index:1;max-width:640px;text-align:center;padding:46px 0 34px}
.hero h1{font-size:clamp(36px,6vw,62px);font-weight:600;color:var(--green);
  letter-spacing:-1px;line-height:1.15;text-shadow:0 2px 10px #fff9}
.hero .en{font-size:clamp(18px,2.6vw,28px);font-style:italic;color:var(--green-d);margin-top:4px}
.hero .quote{margin:18px 0 24px;font-size:19px;font-weight:500;color:#2f4a36;line-height:1.6}
.acts{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:10px 28px;border:1px solid var(--green);border-radius:999px;
  background:var(--green);color:#fff;transition:.2s}
.btn:hover{background:var(--green-d);transform:translateY(-2px)}
.btn.gh{background:#fffdf4ee;color:var(--green)}
.btn.del{background:#b42318;border-color:#b42318}
.badges{display:grid;grid-template-columns:repeat(4,1fr);max-width:620px;margin:42px auto 0}
.badge{padding:0 12px;font-size:12px;line-height:1.5;color:var(--bt,#33503a)}
.badge+.badge{border-left:1px solid #86a085}
.badge i{display:block;font-size:26px;font-style:normal;margin-bottom:6px}
.badge b{display:block;font-weight:600}
.badge span{color:var(--bs,inherit)}

.story{padding:52px 0;background:var(--cream)}
.story-g{display:grid;grid-template-columns:1fr 1.1fr .55fr;gap:34px;align-items:center}
.story-img{height:270px;border-radius:46% 8% 34% 8%/14% 20% 12% 22%}
.sec-h{display:inline-flex;align-items:center;gap:10px;font-size:32px;color:var(--green)}
.story .sec-h{padding-bottom:10px;margin-bottom:14px;border-bottom:1px solid #a3b69e}
.story p{font-size:15.5px;line-height:2}
.sign{display:block;margin-top:14px;font-style:italic;color:var(--muted)}
.qt{margin:0;padding-left:22px;border-left:1px solid #8ca287;transform:rotate(-5deg);
  font-family:"Kanit",sans-serif;font-size:23px;font-style:italic;color:var(--green);text-align:center}

.prod{padding:36px 0 46px;background:linear-gradient(160deg,#eef3e8,#e0e9da)}
.t-row{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:26px}
.t-row::before,.t-row::after{content:"";width:70px;height:1px;background:#93a890}
.p-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:#fffdf5;border-radius:10px;overflow:hidden;
  box-shadow:0 4px 14px #1f3f2a12;transition:.2s}
.card:hover{transform:translateY(-6px);box-shadow:0 12px 26px #1f3f2a22}
.card-img{height:170px}
.card-b{text-align:center;padding:14px 10px 18px}
.card-b h3{font-size:19px}
.card-b p{font-size:12.5px;color:var(--muted);margin:3px 0 8px;min-height:38px}
.price{font-weight:600;color:var(--green);margin-bottom:10px}
.add-form{margin-top:8px}
.btn-sm{min-height:34px;padding:4px 20px;font-size:12.5px}

.garden{position:relative;background:var(--green) center/cover no-repeat;color:#fff;overflow:hidden}
.garden::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#13472fe0,#1b5e3ff5)}
.garden-in{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;
  gap:40px;align-items:center;min-height:230px;padding:34px 0}
.garden-c{text-align:center}
.garden-c h2{font-size:32px;font-weight:400;font-style:italic;line-height:1.3;margin-bottom:12px}
.garden-c p{font-size:13.5px;color:#e3ecdb}
.stack{display:flex;align-items:center;justify-content:center}
.pol{width:38%;flex-shrink:0;padding:7px 7px 16px;background:var(--cream);
  box-shadow:0 6px 16px #00000055}
.pol:nth-child(1){transform:rotate(-7deg)}
.pol:nth-child(2){transform:rotate(5deg);margin-inline:-14px;z-index:2}
.pol:nth-child(3){transform:rotate(13deg)}
.pol-img{height:120px}

.ct{padding:40px 0;background:var(--sand)}
.ct-g{display:grid;grid-template-columns:1.1fr .9fr .8fr;gap:34px;align-items:center}
.ct h1,.ct h2{display:flex;align-items:center;gap:8px;color:var(--green);font-size:25px;margin-bottom:14px}
.ct ul{list-style:none;padding:0;display:grid;gap:11px;font-size:15px}
.ct li{display:flex;align-items:center;gap:12px}
.ct li i{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;
  background:var(--green);color:#fff;border-radius:50%;font-size:14px;font-style:normal}
.qr{display:flex;align-items:center;gap:18px}
.qr-box{width:116px;height:116px;flex:0 0 116px;padding:7px;background:#fff;
  border-radius:8px;box-shadow:0 3px 10px #0001}
.qr p{font-size:13.5px;color:var(--muted);line-height:1.6}
.tag{font-family:"Kanit",sans-serif;font-size:21px;font-style:italic;color:var(--green);
  text-align:center;transform:rotate(-6deg);line-height:1.6}
footer{padding:16px;background:var(--green);color:#e9efdc;text-align:center;font-size:12.5px}
main{min-height:60vh}

dialog{width:min(440px,92vw);padding:30px;border:0;border-radius:16px;
  background:var(--cream);color:var(--ink);box-shadow:0 24px 70px #0005}
dialog::backdrop{background:#0e2e1faa}
dialog h2{color:var(--green);margin-bottom:10px}
dialog p{margin-bottom:22px;font-size:15px}
.x{display:block;margin-left:auto;border:0;background:none;font-size:26px;color:var(--green)}


.feed{padding:40px 0 56px;background:var(--cream)}
.feed-note{text-align:center;color:var(--muted);margin:-10px 0 18px;font-size:14.5px}
.feed .acts{margin-bottom:26px}
.feed-list{display:grid;gap:22px;width:100%}
.feed-empty{text-align:center;color:var(--muted);padding:26px 0}
.post{background:#fffdf5;border-radius:12px;padding:22px 26px;box-shadow:0 4px 14px #1f3f2a14}
.post-h{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.post-h b{font-family:"Kanit",sans-serif;font-weight:500}
.post-h small{display:block;color:var(--muted);font-size:12px}
.chk{display:inline-flex;align-items:center;gap:4px;margin-left:6px;font-size:13px;color:var(--green)}
.avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;
  background:var(--green);color:#fff;font:500 18px "Kanit",sans-serif}
.post-b{margin-bottom:12px;overflow-wrap:anywhere;font-size:16.5px}
.pmedia{display:grid;gap:6px;margin-bottom:10px;border-radius:10px;overflow:hidden}
.pmedia.n2,.pmedia.n3,.pmedia.n4{grid-template-columns:1fr 1fr}
.pmedia img,.pmedia video{width:100%;height:100%;max-height:560px;object-fit:cover;background:#fff}
.pmedia.n1 img,.pmedia.n1 video{max-height:680px;object-fit:contain}
.post-act{display:flex;align-items:center;gap:16px;padding:8px 0;border-top:1px solid #e3e9dd;font-size:14px}
.post-act form{margin:0}
.like{display:inline-flex;align-items:center;gap:6px;border:1px solid #c9d6c4;background:#fff;color:var(--ink);
  border-radius:999px;padding:4px 14px;font:inherit}
.like.on{background:#fde8ec;border-color:#e58a9c;color:#b4233f}
.like.on .ic{fill:currentColor}
.cm-count{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}
.comments{list-style:none;padding:0;display:grid;gap:6px;margin:4px 0 10px}
.comments li{background:#f1f5ec;border-radius:10px;padding:6px 12px;font-size:14px;overflow-wrap:anywhere}
.comments small{color:var(--muted);margin-left:6px;font-size:11.5px}
.cm-form{display:flex;gap:8px;flex-wrap:wrap}
.cm-form input[type=text]{flex:1 1 140px;padding:7px 12px;border:1px solid #b9c9b4;border-radius:999px;font:inherit;font-size:14px;background:#fff}
.cm-form input[name=author]{flex:0 1 150px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.pager{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:24px}
.post-form .fld{display:block;margin-bottom:13px;font-size:14px;border:0;padding:0}
.post-form .fld>span,.post-form legend{display:block;margin-bottom:4px;font-weight:600;padding:0}
.post-form input[type=text],.post-form textarea,.post-form input[type=file]{width:100%;padding:9px 11px;
  border:1px solid #b9c9b4;border-radius:8px;font:inherit;background:#fff}
.post-form small{display:block;color:var(--muted);margin-top:4px}
.kinds{display:flex;gap:18px;flex-wrap:wrap}
.kinds legend{width:100%}
.form-note{font-size:13px;color:var(--muted);margin:0 0 6px!important}
.post-form .foot{display:flex;justify-content:flex-end;gap:8px}
dialog#post-dlg{width:min(520px,94vw)}

@media(max-width:980px){
  nav{gap:16px;font-size:14px}
  .story-g{grid-template-columns:1fr 1fr}
  .qt{display:none}
  .ct-g{grid-template-columns:1fr 1fr}
  .tag{display:none}
}
@media(max-width:700px){
  .burger{display:block}
  nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;
    align-items:stretch;gap:2px;padding:14px 6% 20px;background:var(--green)}
  nav.open{display:flex}
  .brand b{font-size:17px}
  .logo{width:44px;height:44px;flex-basis:44px;font-size:22px}
  .hero::after{background:#f7f3dfd6}
  .hero-in{max-width:none}
  .badges{grid-template-columns:repeat(2,1fr);gap:18px 0;max-width:340px}
  .badge:nth-child(3){border-left:0}
  .story{padding:32px 0}
  .story-g{grid-template-columns:1fr;gap:22px}
  .p-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .card-img{height:150px}
  .garden-in{grid-template-columns:1fr;gap:20px}
  .ct-g{grid-template-columns:1fr;text-align:center}
  .ct li{justify-content:center}
  .qr{flex-direction:column;text-align:center}
  .cart-link{margin-right:8px}
  .post{padding:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.login-link,.user-chip{display:flex;align-items:center;gap:6px;font-family:"Kanit",sans-serif;font-size:14px}
.login-link{padding:7px 16px;border:1px solid #ffffff55;border-radius:999px}
.login-link:hover{background:#ffffff22}
.user-chip{margin:0}
.user-chip span{display:flex;align-items:center;gap:6px}
.user-chip button{background:none;border:1px solid #ffffff55;border-radius:999px;color:#fff;padding:4px 12px;font:inherit;font-size:13px}
.user-chip button:hover{background:#ffffff22}
@media(max-width:700px){.login-link span{display:none}.login-link{padding:9px 11px}}
.av{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none;background:#fff}
.ph-av{display:inline-grid;place-items:center;background:var(--cream);color:var(--green);font:500 14px "Kanit",sans-serif}
.av-lg{width:96px;height:96px;font-size:38px}
.user-chip a{display:flex;align-items:center;gap:8px}
.prof{padding:36px 0 56px;background:linear-gradient(160deg,#eef3e8,#e0e9da);min-height:60vh}
.prof-card{max-width:560px;margin-inline:auto;background:#fffdf5;border-radius:12px;padding:26px 28px;box-shadow:0 4px 14px #1f3f2a14}
.prof-pic{display:flex;align-items:center;gap:20px;margin-bottom:22px}
.prof-pic small{display:block;color:var(--muted);font-size:12.5px;margin-top:6px}
.prof-pic label.btn{cursor:pointer}
.chk-row{display:block;font-size:13px;margin-top:6px}
.prof-card .fld{display:block;margin-bottom:14px;font-size:14px}
.prof-card .fld>span{display:block;margin-bottom:4px;font-weight:600}
.prof-card input[type=text]{width:100%;padding:9px 12px;border:1px solid #b9c9b4;border-radius:8px;font:inherit;background:#fff}
.prof-card input:disabled{background:#f1f1ec;color:var(--muted)}
.prof-card .acts{justify-content:flex-end}
.user-menu{position:relative}
.user-menu summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 12px 5px 6px;
  border:1px solid #ffffff55;border-radius:999px;font-family:"Kanit",sans-serif;font-size:14px}
.user-menu summary::-webkit-details-marker{display:none}
.user-menu summary:hover,.user-menu[open] summary{background:#ffffff22}
.um-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;padding:6px;background:#fffdf5;color:var(--ink);
  border-radius:12px;box-shadow:0 12px 30px #0003;z-index:60}
.um-panel a,.um-panel button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;border:0;background:none;
  border-radius:8px;font:inherit;font-size:14.5px;text-align:left;color:var(--ink)}
.um-panel a:hover,.um-panel button:hover{background:var(--green-l)}
.um-panel form{margin:0;border-top:1px solid #e3e9dd;margin-top:4px;padding-top:4px}
.addr-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.addr-bar p{color:var(--muted);font-size:14.5px}
.addr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.addr{background:#fffdf5;border-radius:12px;padding:18px 20px;box-shadow:0 4px 14px #1f3f2a12;border:2px solid transparent}
.addr.main{border-color:var(--green)}
.addr header{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-family:"Kanit",sans-serif}
.tag-main{font-size:12px;background:var(--green);color:#fff;border-radius:999px;padding:1px 10px}
.addr p{font-size:14.5px}
.addr-line{color:var(--muted);margin-top:2px}
.addr-act{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.addr-act form{margin:0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#addr-form textarea{width:100%;padding:9px 11px;border:1px solid #b9c9b4;border-radius:8px;font:inherit}
dialog#addr-dlg{width:min(540px,94vw)}
@media(max-width:700px){.user-menu summary span{display:none}.user-menu summary{padding:5px}.two{grid-template-columns:1fr}}
#addr-form select,#addr-form input[readonly]{width:100%;padding:9px 11px;border:1px solid #b9c9b4;border-radius:8px;font:inherit;background:#fff}
#addr-form input[readonly]{background:#f1f1ec}
#addr-form select:disabled{background:#f1f1ec}

.map-fld{display:block;margin-bottom:14px}
.map-fld>span{display:block;margin-bottom:5px;font-weight:600;font-size:14px}
.map-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.map-tools input{flex:1 1 180px;padding:8px 12px;border:1px solid #b9c9b4;border-radius:999px;font:inherit;font-size:14px;background:#fff}
#map{height:280px;border-radius:10px;border:1px solid #b9c9b4;z-index:0}
.map-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:6px}
.map-foot small{color:var(--muted);font-size:12.5px}
.addr-pin{font-size:13.5px;color:var(--green)}
.addr-pin a{text-decoration:underline}
.post.is-pending{border:1px dashed #c9a227;background:#fffbea}
.pending-note{background:#fff3cd;color:#7a5b00;border-radius:8px;padding:8px 12px;font-size:13.5px;margin-top:6px}
.comments li.is-pending{background:#fff3cd}
.pending-tag{display:block;margin-top:2px;font-style:normal;font-size:12px;color:#7a5b00}
.rate{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;margin-bottom:2px}
.rate small{color:var(--muted)}
.stars{display:inline-flex;gap:1px;color:#d4cdb8;font-size:15px}
.stars .on{color:var(--gold)}
.stars .on .ic{fill:currentColor}
dialog#dlg{width:min(560px,94vw);max-height:90vh;overflow:auto}
#dlg-rv{margin-bottom:18px}
.rv-sum{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #e3e9dd}
.rv-avg{font:600 34px/1 "Kanit",sans-serif;color:var(--green)}
.rv-sum small{display:block;color:var(--muted)}
.rv-list{list-style:none;padding:0;display:grid;gap:10px;max-height:240px;overflow:auto;margin-bottom:12px}
.rv-list li{background:#f1f5ec;border-radius:10px;padding:8px 12px;font-size:14px}
.rv-list li small{color:var(--muted);margin-left:6px;font-size:12px}
.rv-list p{margin:2px 0 0!important;font-size:14px!important}
.rv-note{font-size:13.5px!important;color:var(--muted);margin:6px 0 0!important}
.rv-form{display:grid;gap:8px;padding-top:12px;border-top:1px solid #e3e9dd}
.rv-form textarea{width:100%;padding:9px 11px;border:1px solid #b9c9b4;border-radius:8px;font:inherit;background:#fff}
.rv-form .btn{justify-self:start}
.star-in{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px;font-size:28px}
.star-in input{position:absolute;opacity:0;pointer-events:none}
.star-in label{cursor:pointer;color:#d4cdb8;line-height:1}
.star-in label:hover,.star-in label:hover~label,.star-in input:checked~label{color:var(--gold)}
.star-in input:checked~label .ic,.star-in label:hover .ic,.star-in label:hover~label .ic{fill:currentColor}
.star-in input:focus-visible+label{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}
.order-list{display:grid;gap:16px;max-width:760px;margin-inline:auto}
.order{background:#fffdf5;border-radius:12px;padding:18px 22px;box-shadow:0 4px 14px #1f3f2a12}
.order header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px;font-family:"Kanit",sans-serif}
.order header small{margin-left:auto;color:var(--muted);font-family:"Sarabun",sans-serif}
.ostatus{font-size:12.5px;border-radius:999px;padding:1px 12px;background:#eee}
.s-pending{background:#fff3cd;color:#7a5b00}.s-confirmed{background:#dbeafe;color:#1e40af}
.s-packing{background:#fdf0d5;color:#8a5a00}.s-shipped{background:#e0e7ff;color:#3730a3}.s-completed{background:#d8f0de;color:#176534}.s-cancelled{background:#fde0e0;color:#9b1c1c}
.oitems{list-style:none;padding:0;display:grid;gap:6px;margin-bottom:10px}
.oitems li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px}
.oitems .oprice{margin-left:auto;color:var(--muted)}
.oaddr{font-size:14px;color:var(--muted);padding-top:8px;border-top:1px solid #e3e9dd}
.order footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;background:none;padding:0;color:var(--ink);text-align:left;font-size:16px}
.order footer form{margin:0}
.tabbar,.app-back{display:none}
.acct-card{display:flex;align-items:center;gap:18px;background:#fffdf5;border-radius:16px;padding:20px 22px;margin:0 auto 16px;max-width:560px;box-shadow:0 4px 14px #1f3f2a12}
.acct-card h1{font-size:22px;color:var(--green)}
.acct-card p{color:var(--muted);font-size:14px;margin-bottom:8px}
.acct-card .av-lg{flex:none}
.menu-list{max-width:560px;margin:0 auto 16px;background:#fffdf5;border-radius:16px;overflow:hidden;box-shadow:0 4px 14px #1f3f2a12}
.menu-list a,.menu-list button{display:flex;align-items:center;gap:14px;width:100%;padding:16px 20px;border:0;border-bottom:1px solid #e9eee3;
  background:none;font:inherit;font-size:16px;color:var(--ink);text-align:left}
.menu-list>:last-child{border-bottom:0}
.menu-list .ic{font-size:21px;color:var(--green)}
.menu-list span{flex:1}
.menu-list a .ic:last-child{color:#a3b0a4;font-size:18px}
.menu-list .out,.menu-list .out .ic{color:#b42318}
.menu-list a:hover,.menu-list button:hover{background:var(--green-l)}
.logo.has-img{background:var(--cream);padding:4px;overflow:hidden}
.logo img{width:100%;height:100%;object-fit:contain}

.pd{padding:36px 0 56px;background:linear-gradient(160deg,#eef3e8,#e0e9da)}
.pd-back{display:inline-flex;align-items:center;gap:4px;margin-bottom:18px;color:var(--green);font-size:14.5px}
.pd-back:hover{text-decoration:underline}
.pd-g{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start;background:#fffdf5;border-radius:16px;padding:26px;box-shadow:0 4px 14px #1f3f2a12}
.pd-img .card-img{height:auto;aspect-ratio:4/3;border-radius:12px}
.pd-info h1{font-size:32px;color:var(--green);line-height:1.3}
.pd-sub{color:var(--muted);margin-bottom:6px}
.pd-rate{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.pd-rate .stars{font-size:20px}
.pd-rate span,.pd-rate a{color:var(--muted);font-size:14px}
.pd-rate a:hover{text-decoration:underline}
.pd-info .price{font-size:26px;font-family:"Kanit",sans-serif;margin-bottom:12px}
.pd-detail{line-height:1.9;margin-bottom:22px}
.pd-acts{justify-content:flex-start}
.pd-acts form{margin:0}
.pd-reviews{margin-top:26px;background:#fffdf5;border-radius:16px;padding:26px;box-shadow:0 4px 14px #1f3f2a12}
.pd-reviews .sec-h{font-size:24px;margin-bottom:18px}
.rv-top{display:grid;grid-template-columns:200px 1fr;gap:34px;align-items:center;margin-bottom:20px}
.rv-score{display:grid;justify-items:center;gap:2px;text-align:center}
.rv-big{font:600 56px/1 "Kanit",sans-serif;color:var(--green)}
.rv-of{color:var(--muted);font-size:13px}
.rv-score .stars{font-size:22px;margin-top:4px}
.rv-score small{color:var(--muted)}
.dist{display:grid;gap:6px}
.dist-row{display:grid;grid-template-columns:44px 1fr 32px;gap:10px;align-items:center;font-size:14px}
.dist-row span{display:inline-flex;align-items:center;gap:3px}
.dist-row .ic{color:var(--gold);fill:currentColor;font-size:14px}
.dist .bar{height:10px;background:#e6ebdf;border-radius:999px;overflow:hidden}
.dist .bar i{display:block;height:100%;background:var(--gold);border-radius:999px}
.dist small{color:var(--muted);text-align:right}
.pd-reviews .rv-list{max-height:none}
.rv-note a{color:var(--green);text-decoration:underline}
@media(max-width:760px){
  .pd{padding:18px 0 28px}
  .pd-g{grid-template-columns:1fr;gap:16px;padding:14px;border-radius:16px}
  .pd-info h1{font-size:24px}
  .pd-acts{flex-direction:column;align-items:stretch}
  .pd-acts .btn,.pd-acts form{width:100%}
  .pd-reviews{padding:16px;border-radius:16px}
  .rv-top{grid-template-columns:1fr;gap:16px}
}
.ads-sec{padding:40px 0 0;background:var(--cream)}
.ads-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.ad{display:block;overflow:hidden;border-radius:16px;background:var(--green-d);box-shadow:0 6px 20px #1f3f2a1f;transition:transform .2s,box-shadow .2s}
a.ad:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1f3f2a33}
.ad img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.ad-wide{grid-column:span 6;aspect-ratio:16/5}
.ad-half{grid-column:span 3;aspect-ratio:16/9}
.ad-third{grid-column:span 2;aspect-ratio:4/3}
@media(max-width:760px){
  .ads-sec{padding:22px 0 0}
  .ads-grid{gap:10px}
  .ad{border-radius:12px}
  .ad-wide,.ad-half{grid-column:span 6}
  .ad-wide{aspect-ratio:16/7}
  .ad-third{grid-column:span 3}
}
.slider-sec{padding:40px 0 8px;background:var(--cream)}
.slider{position:relative;background:var(--green-d);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #1f3f2a26}
.sl-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;outline-offset:-4px}
.sl-track::-webkit-scrollbar{display:none}
.sl-slide{position:relative;flex:0 0 100%;margin:0;scroll-snap-align:start;aspect-ratio:16/6;overflow:hidden}
.sl-slide a{display:block;height:100%}
.sl-slide img{width:100%;height:100%;object-fit:cover}
.sl-slide figcaption{position:absolute;left:0;right:0;bottom:0;display:grid;gap:2px;padding:48px 32px 30px;
  color:#fff;background:linear-gradient(0deg,#0b2417cc,#0b241700)}
.sl-slide figcaption b{font:500 clamp(20px,3.2vw,38px)/1.3 "Kanit",sans-serif}
.sl-slide figcaption span{font-size:clamp(13px,1.6vw,18px);opacity:.92}
.sl-btn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;
  background:#fffdf4cc;color:var(--green);font-size:24px;display:grid;place-items:center;box-shadow:0 4px 14px #0003}
.sl-btn:hover{background:#fff}
.sl-btn.prev{left:14px}
.sl-btn.next{right:14px}
.sl-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:8px}
.sl-dots button{width:10px;height:10px;padding:0;border:0;border-radius:999px;background:#ffffff88;transition:width .2s,background-color .2s}
.sl-dots button.on{width:26px;background:#fff}
@media(max-width:760px){
  .sl-slide{aspect-ratio:16/9}
  .sl-btn{display:none}
  .sl-slide figcaption{padding:34px 16px 28px}
}
@media(max-width:760px){.slider-sec{padding:22px 0 0}.slider{border-radius:14px}}

.rail-wrap{position:relative}
.p-grid.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;scrollbar-width:thin;scrollbar-color:#93a890 transparent}
.p-grid.rail .card{flex:0 0 min(270px,78%);scroll-snap-align:start}
.rail-btn{position:absolute;top:38%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border:0;border-radius:50%;
  background:#fffdf4;color:var(--green);font-size:22px;display:grid;place-items:center;box-shadow:0 4px 14px #0003}
.rail-btn:hover{background:#fff}
.rail-btn.prev{left:-14px}
.rail-btn.next{right:-14px}
@media(max-width:760px){
  .p-grid.rail{gap:12px;scrollbar-width:none;margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px}
  .p-grid.rail::-webkit-scrollbar{display:none}
  .p-grid.rail .card{flex-basis:64vw}
  .rail-btn{display:none}
}
/* ข้อความราคาส่งใต้ราคาขาย */
.wnote{margin:-6px 0 8px;font-size:12.5px;color:#7a5b00}
.wnote .ic{vertical-align:-2px;color:var(--gold)}

/* เมนูบนมี 6 รายการ: ไม่ให้ชื่อเมนูตัดบรรทัด และลดช่องไฟ/ซ่อนไอคอนเมื่อจอไม่กว้างพอ */
nav#nav a{white-space:nowrap}
.brand b{white-space:nowrap}
@media(max-width:1240px) and (min-width:761px){
  nav#nav{gap:16px;font-size:14.5px}
  nav#nav a .ic{display:none}
  .login-link span{white-space:nowrap}
}
@media(max-width:900px) and (min-width:761px){
  nav#nav{gap:10px;font-size:13.5px}
  .brand small{display:none}
  .login-link span{display:none}
}
.rv-who{display:flex;align-items:center;gap:10px}
.rv-av{flex:none;width:34px;height:34px;border-radius:50%;object-fit:cover;overflow:hidden;font-size:14px}
span.rv-av{display:inline-grid;place-items:center;background:var(--cream);color:var(--green)}
/* ตะกร้าปิด: ปุ่มตะกร้าในเมนูหน้าตาเหมือนตอนเปิดทุกอย่าง (กดแล้วเด้งแจ้งเตือนแทน) */
.cart-link.is-off,.tabbar .is-off{cursor:pointer}

/* ===== แผนที่หน้าติดต่อ ===== */
.ct-map{padding:0 0 44px;background:var(--sand)}
.ctm-card{background:#fff;border:1px solid #e3ddc9;border-radius:22px;padding:clamp(14px,2.4vw,24px);box-shadow:0 10px 30px rgba(31,63,42,.08)}
.ctm-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.ctm-ico{flex:none;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--green),var(--green-d));color:#fff;box-shadow:0 6px 16px rgba(27,94,63,.28)}
.ctm-ico .ic{width:22px;height:22px}
.ctm-head h2{margin:0;font-size:clamp(18px,.8vw + 15px,22px);color:var(--green);line-height:1.3}
.ctm-head p{margin:2px 0 0;font-size:13.5px;color:#6b7a6c}
.ctm-frame{position:relative;border-radius:16px;overflow:hidden;border:1px solid #e3ddc9;background:#e8efe3;height:clamp(260px,42vw,440px)}
.ctm-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.ctm-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.ctm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:12px;font-weight:700;font-size:14.5px;text-decoration:none;transition:all .2s ease}
.ctm-btn .ic{width:18px;height:18px}
.ctm-btn.pri{background:linear-gradient(135deg,var(--green),var(--green-d));color:#fff;box-shadow:0 6px 16px rgba(27,94,63,.28)}
.ctm-btn.pri:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(27,94,63,.38)}
.ctm-btn.sec{background:#fff;color:var(--green);border:1.5px solid #cfdcd3}
.ctm-btn.sec:hover{background:var(--green-l);border-color:var(--green)}
@media(max-width:560px){.ct-map{padding-bottom:28px}.ctm-btns{flex-direction:column}.ctm-btn{width:100%}.ctm-frame{border-radius:14px}}
.ctm-leaf{position:absolute;inset:0;z-index:0}
.ctm-pin{background:none;border:0}
.ctm-pin svg{width:40px;height:48px;display:block;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}

/* ===== ปุ่มสลับภาษา TH | EN ===== */
.lang-sw{display:inline-flex;align-items:center;padding:3px;gap:2px;border:1px solid #ffffff44;border-radius:999px;background:#ffffff14;margin-right:8px}
.lang-sw a{min-width:36px;padding:5px 10px;border-radius:999px;color:#ffffffcc;font:700 12.5px/1.2 "Kanit","Sarabun",sans-serif;letter-spacing:.4px;text-align:center;text-decoration:none;transition:background .2s,color .2s}
.lang-sw a:hover{background:#ffffff26;color:#fff}
.lang-sw a.on{background:#fff;color:var(--green);box-shadow:0 2px 6px rgba(0,0,0,.18)}
html[lang="en"] body{font-family:"Sarabun","Kanit",system-ui,sans-serif}
.login-link,.lang-sw a,nav#nav a{white-space:nowrap}
html[lang="en"] nav#nav a{font-size:14.5px}

/* ภาษาอังกฤษ: ชื่อร้านและเมนูยาวกว่าไทย — ย่อให้พอดีแถบบน ไม่ให้ไอคอนตะกร้าหลุดขอบจอ */
.cart-link,.lang-sw,.login-link,.user-menu,.burger{flex:none}
@media(min-width:761px){
  html[lang="en"] .hd-in{gap:14px}
  html[lang="en"] .brand b{font-size:18px}
  html[lang="en"] .brand small{display:none}
  html[lang="en"] nav#nav{gap:14px;font-size:14px}
  html[lang="en"] nav#nav a .ic{display:none}
  html[lang="en"] .lang-sw{margin-right:4px}
}
@media(min-width:761px) and (max-width:1100px){
  html[lang="en"] .brand b{font-size:15px}
  html[lang="en"] .logo{width:42px;height:42px;flex-basis:42px}
  html[lang="en"] nav#nav{gap:9px;font-size:13px}
  html[lang="en"] .login-link span{display:none}
  html[lang="en"] .login-link{padding:9px 11px}
}
@media(min-width:761px) and (max-width:900px){
  /* แท็บเล็ตแคบ (ทุกภาษา): เมนูยาวเกินแถบ — พับเป็นปุ่มเมนู เพื่อให้ตะกร้าและปุ่มภาษายังอยู่ในจอ */
  .burger{display:block}
  nav#nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:14px 6% 20px;background:var(--green);font-size:15px}
  nav#nav.open{display:flex}
  nav#nav a .ic{display:inline-block}
  .brand{margin-right:auto}
}

@media(min-width:761px) and (max-width:1100px){
  .brand small{display:none}
  .brand b{font-size:18px}
  nav#nav{gap:12px;font-size:14px}
  .lang-sw a{min-width:30px;padding:4px 8px}
}

/* video section — same size/ratio as the poster slider */
.video-sec{padding:40px 0 8px;background:var(--cream)}
.video-rail{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #1f3f2a26;background:var(--green-d)}
.video-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;outline-offset:-4px}
.video-track::-webkit-scrollbar{display:none}
.video-frame{position:relative;flex:0 0 100%;aspect-ratio:16/6;scroll-snap-align:start;overflow:hidden;background:#000}
.video-frame iframe,.video-play{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-play{padding:0;cursor:pointer;background:#000}
.video-play img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.video-play:hover img{transform:scale(1.03)}
.video-btn{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;display:grid;place-items:center;
  background:var(--gold);color:var(--green-d);box-shadow:0 0 0 10px rgba(255,255,255,.35);transition:transform .25s}
.video-play:hover .video-btn{transform:scale(1.1)}
.video-cap{position:absolute;left:0;right:0;bottom:0;padding:48px 32px 24px;text-align:left;color:#fff;font:500 clamp(18px,2.4vw,30px)/1.3 "Kanit",sans-serif;
  background:linear-gradient(transparent,rgba(0,0,0,.72));text-shadow:0 1px 3px rgba(0,0,0,.5)}
.video-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;cursor:pointer;display:grid;place-items:center;
  background:#ffffffd9;color:var(--green);z-index:2}
.video-nav:hover{background:#fff}
.video-nav.prev{left:14px}.video-nav.next{right:14px}
@media(max-width:760px){.video-frame{aspect-ratio:16/9}.video-nav{display:none}}
@media(max-width:760px){.video-sec{padding:22px 0 0}.video-rail{border-radius:14px}.video-btn{width:64px;height:64px;margin:-32px 0 0 -32px}
  .video-cap{padding:34px 16px 16px;font-size:16px}}
.video-unmute{position:absolute;top:12px;right:12px;z-index:3;display:flex;align-items:center;gap:8px;padding:10px 16px 10px 12px;border:0;border-radius:999px;cursor:pointer;
  background:var(--gold);color:var(--green-d);font:600 15px "Sarabun",sans-serif;box-shadow:0 4px 14px rgba(0,0,0,.4);animation:vu-pulse 1.6s infinite}
@keyframes vu-pulse{50%{transform:scale(1.06)}}
@media(prefers-reduced-motion:reduce){.video-unmute{animation:none}}
