/* V15-1 · เอกลักษณ์ของตัวเอง: เขียว–ขอบทอง ลายกราฟิกเรียบ (จุดตาราง + เส้นวงโค้ง)
   โหลดต่อจาก v15.css (ซึ่งเปลี่ยนโทนส้ม → เขียวแล้ว) ไฟล์นี้เก็บส่วนที่ทำให้หน้าตาต่างจาก V15: ลาย รูปทรง ส่วนหัว/ท้าย และการจัดวาง */
:root {
  --ink:var(--g-ink); --g1:var(--g-950); --g2:var(--g-900); --g3:var(--g-700); --mint:var(--g-80,#e7f3ec); --paper:#f7f8f3; --gold15:var(--gold); --gold-deep15:var(--gold-700,#8a6410); --gold-line:rgba(var(--gold-rgb,232,178,58),.7); --r15:18px;
  /* ลายกราฟิก ไม่มีไฟล์ภาพ: จุดตารางจางบนพื้นเขียวเข้ม · เส้นวงโค้งทองที่มุมขวาบนของแถบใหญ่ */
  --pat-dots:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22'%3E%3Ccircle cx='2' cy='2' r='1.2' fill='%23fff' fill-opacity='.1'/%3E%3C/svg%3E");
  --rings:radial-gradient(circle at 100% 0,transparent 0 139px,rgba(var(--gold-rgb,232,178,58),.45) 140px 141.5px,transparent 142.5px 219px,rgba(var(--gold-rgb,232,178,58),.28) 220px 221.5px,transparent 222.5px 299px,rgba(var(--gold-rgb,232,178,58),.16) 300px 301.5px,transparent 302.5px);
  --o:var(--g-700); --o2:var(--g-600); --o-dark:var(--g-900); --y:var(--gold); --ink15:var(--g-ink); --grey15:var(--g-text,#33503f);
}
body.v15 { font-family:"Anuphan","Noto Sans Thai",system-ui,sans-serif; font-weight:400; background:var(--paper); }
.v15 :is(h1,h2,h3,.t15,.h15,.nav-top,.more15,.hd15-brand strong) { font-family:"Bai Jamjuree","Noto Sans Thai",system-ui,sans-serif; }
.v15 :focus-visible { outline:3px solid var(--gold15); outline-offset:2px; }

/* ── ปุ่มและหัวข้อ ── */
.more15 { border:0; border-radius:10px; background:var(--gold15); color:var(--g1); font-weight:600; padding:.45rem 1.4rem; box-shadow:0 3px 0 var(--gold-deep15); }
.more15:hover { background:var(--g2); color:#fff; box-shadow:0 3px 0 var(--g1); }
.more15.sm { padding:.3rem 1rem; } .more15.teal, .more15.ghost, .more15.white { background:var(--gold15); color:var(--g1); border-radius:10px; }
.t15 { color:var(--g1); font-weight:700; font-size:clamp(1.5rem,2.8vw,2.1rem); }
.t15 b { color:var(--gold-deep15); font-weight:700; }
.t15::after, .t15.line::after { content:""; display:block; width:56px; height:4px; border-radius:99px; margin:.7rem auto 1.5rem; background:var(--gold15); }
.t15.big { color:var(--g1); }
.h15 { font-weight:700; color:var(--g1); display:flex; align-items:center; gap:.6rem; } .h15.lg { font-size:1.5rem; }
.h15::before { content:""; width:6px; height:1.2em; border-radius:99px; background:var(--gold15); flex:none; }
.hs-btn { border-radius:10px; border-color:var(--mint); color:var(--g3); } .hs-btn:hover { background:var(--g2); border-color:var(--g2); }
.hs-dots i, .home15 .dots i { width:8px; height:8px; border-radius:99px; }
.hs-dots i.on, .home15 .dots i.on { width:24px; background:var(--gold15); }

/* ── ส่วนหัว: พื้นเขียวเข้ม ขอบลายจุด ── */
.hd15 { background:var(--pat-dots) 0 0/22px 22px var(--g1); border-bottom:0; box-shadow:0 8px 20px -12px rgba(0,0,0,.6); }
.hd15::after { content:""; position:absolute; left:0; right:0; top:100%; height:3px; background:var(--gold15); pointer-events:none; }
.hd15-in { height:92px; }
.hd15-logo { align-self:center; margin-top:0; width:70px; height:70px; border-radius:20px; background:#fff; box-shadow:0 0 0 3px var(--gold15); padding:5px; }
.hd15-logo img { border-radius:14px; }
.hd15.compact .hd15-logo { width:48px; height:48px; margin-top:0; border-radius:14px; box-shadow:0 0 0 2px var(--gold15); }
.hd15-brand strong { color:#fff; font-weight:700; } .hd15-brand small { color:var(--gold15); letter-spacing:.14em; text-transform:uppercase; font-size:.68rem; }
.hd15-lbl { color:#bfd8c9; }
.lang15, .font15, .sq15 { background:rgba(255,255,255,.12); color:#fff; border-radius:8px; }
.lang15.on, .font15[aria-pressed="true"] { background:var(--gold15); color:var(--g1); font-weight:600; }
.sq15.plain { color:#fff; } .sq15[aria-pressed="true"] { background:#ff0; color:#000; }
.hd15 .menu-toggle { background:var(--gold15); border-color:var(--gold15); color:var(--g1); }
@media (min-width:1024px) {
  .hd15-nav { align-self:center; padding-bottom:0; } .hd15.compact .hd15-nav { padding-bottom:0; }
  .hd15 .has-mega + .has-mega { border-left:0; }
  .hd15 .nav-top { color:#fff; font-weight:600; font-size:1rem; padding:.5rem 1.1rem; border-radius:10px; }
  .hd15 .nav-top:hover, .hd15 .has-mega:hover .nav-top { color:var(--g1); background:var(--gold15); }
  .hd15 .nav-top::after { display:none; }
  .hd15 .mega15 { top:calc(100% + 3px); border-top:0; border-radius:0 0 var(--r15) var(--r15); background:#fff; }
  .hd15 .mega::before { top:-22px; height:22px; }
}
.mega15-col strong { color:var(--g1); border-bottom:2px solid var(--gold15); padding-bottom:.3rem; display:inline-block; }
.mega15-col a { border-radius:8px; padding-left:.6rem; } .mega15-col a:hover { background:var(--mint); color:var(--g1); }
@media (max-width:1023px) { .hd15-in { height:68px; } .hd15-logo { width:48px; height:48px; border-radius:14px; margin-top:0; } .hd15 .main-nav .nav-top { color:var(--g1); } }

/* ── สไลด์: อยู่ในกรอบโค้ง ไม่เต็มจอ ── */
.hero15 { background:linear-gradient(var(--g2),var(--g2)) top/100% 62% no-repeat var(--paper); padding:1.9rem 1rem 3.2rem; }
.hero15-stage { max-width:1340px; margin:0 auto; height:clamp(210px,31vw,500px); border-radius:26px; border:3px solid var(--gold15); box-shadow:0 26px 50px -26px rgba(8,40,27,.8); background:var(--g1); }
.hero15 .dots { bottom:16px; left:auto; right:2rem; transform:none; }
.login15 { right:max(2.2rem,calc(50% - 640px)); top:3rem; background:var(--gold15); color:var(--g1); border-radius:10px; font-weight:600; } .login15:hover { background:#fff; }
.ask15 { bottom:.6rem; border-radius:16px; border:2px solid var(--gold15); padding:.45rem .45rem .45rem 1rem; background:#fff; }
.ask15 input { text-align:left; } .ask15-go { background:var(--g2); border-radius:11px; font-size:1.05rem; font-weight:600; font-family:"Bai Jamjuree",sans-serif; } .ask15-go:hover { background:var(--g3); }
.chip15 { border-radius:99px; padding:.3rem .8rem; } .chip15.g { background:var(--mint); color:var(--g1); } .chip15.p { background:var(--gold-50); color:#6b4a06; }
.hot15 { border-top:0; border-radius:var(--r15); border:2px solid var(--gold15); }
@media (max-width:767px) { .hero15 { padding:1rem .75rem 1rem; } .hero15-stage { border-radius:18px; } .ask15 { margin:.9rem auto 0; } .ask15 .chip15, .ask15 .hot15 { display:none; } .login15 { top:1.6rem; right:1.4rem; } }

/* ── แถบประกาศ ── */
.ticker15 { background:var(--paper); border-top:0; max-width:1340px; margin:0 auto 1.4rem; height:48px; border-radius:99px; box-shadow:inset 0 0 0 1px #ddd6c2; width:calc(100% - 2rem); }
.ticker15 > strong { background:var(--g2); clip-path:none; border-radius:99px; font-style:normal; font-size:1.05rem; color:var(--gold15); padding:0 1.6rem; }

/* ── e-Service | ร้องเรียน: การ์ดสองใบ ── */
.strip15 { background:none; padding:0 1rem 2.5rem; }
.strip15-in { max-width:1340px; gap:1.2rem; grid-template-columns:1fr 1fr; }
.strip15-a, .strip15-b { border-radius:var(--r15); padding:1.3rem 1.3rem 1.2rem; clip-path:none; }
.strip15-a { background:#fff; box-shadow:0 14px 30px -24px rgba(8,40,27,.7); border:1.5px solid var(--gold-line); }
.strip15-b { background:var(--pat-dots) 0 0/22px 22px var(--g2); }
.strip15 h2 { font-weight:700; font-size:1.2rem; } .strip15-a h2 { color:var(--g1); } .strip15-b h2 { color:#fff; }
.tile15 { border-right:0; gap:.6rem; font-weight:500; }
.tile15 i { width:64px; height:64px; display:grid; place-items:center; font-size:1.6rem; border-radius:20px; background:var(--mint); color:var(--g3); transform:none; transition:background .2s,color .2s; }
.tile15:hover i { background:var(--gold15); color:var(--g1); transform:none; }
.tiles15.light .tile15 { color:#fff; } .tiles15.light .tile15 i { background:rgba(255,255,255,.12); color:var(--gold15); } .tiles15.light .tile15:hover i { background:var(--gold15); color:var(--g1); }
@media (max-width:900px) { .strip15-in { grid-template-columns:1fr; } }

/* ── ข่าว ── */
.news15 { background:#fff; padding:2.6rem 0 2.6rem; border-block:1px solid #e6e0cf; }
.tabs15 { border-bottom:0; gap:.5rem; justify-content:center; flex-wrap:wrap; }
.tabs15 button { border:1.5px solid var(--g-150,#cfe3d7); border-radius:99px; padding:.35rem 1.1rem; background:#fff; color:var(--g1); font-weight:500; }
.tabs15 button[aria-selected="true"] { background:var(--g2); border-color:var(--g2); color:#fff; }
.news15-hs { --gap:1rem; }
.ncard15 { border-radius:var(--r15); overflow:hidden; box-shadow:0 12px 26px -20px rgba(8,40,27,.8); border:1.5px solid var(--gold-line); transition:transform .2s; } .ncard15:hover { transform:translateY(-4px); }
.ncard15 time { order:2; align-self:flex-start; margin:.8rem .9rem 0; padding:.1rem .7rem; border-radius:99px; background:var(--gold-50); color:#6b4a06; font-size:.74rem; font-weight:500; }
.ncard15 h3 { order:3; padding:.5rem .9rem .2rem; font-weight:500; font-size:.95rem; min-height:5.4em; } .ncard15 h3 a:hover { color:var(--g3); }
.line15 { order:4; align-self:flex-start; margin:.4rem .9rem 0; border-radius:99px; border-color:var(--g-150,#cfe3d7); }
.board15 { border-radius:var(--r15); overflow:hidden; border:1.5px solid var(--gold-line); } .fb15 { border-radius:var(--r15); }

/* ── จัดซื้อจัดจ้าง ── */
.proc15 { background:var(--paper); padding:2.6rem 0; }
.proc15-box { background:#fff; border-radius:var(--r15); box-shadow:0 14px 30px -24px rgba(8,40,27,.7); }
.proc15-side { background:var(--pat-dots) 0 0/22px 22px var(--g2); padding:1rem; gap:.3rem; }
.proc15-side button { border-radius:10px; font-size:.95rem; font-weight:500; }
.proc15-side button[aria-selected="true"] { background:var(--gold15); color:var(--g1); }
.subtabs15 { border:0; background:var(--mint); border-radius:12px; padding:4px; gap:4px; } .subtabs15 button { background:none; border-radius:9px; font-weight:500; color:var(--g1); } .subtabs15 button[aria-selected="true"] { background:var(--g2); }
.plist15 li { border-bottom:1px solid #e6f0ea; padding:.65rem 0; } .plist15 a::before { content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--gold15); margin-right:.7rem; vertical-align:middle; }
.plist15 time { color:#557163; font-size:.82rem; }

/* ── ทางลัด ── */
.short15 { background:var(--paper); padding:0 0 2.8rem; }
.short15-item { border:1.5px solid var(--gold-line); border-radius:14px; background:#fff; min-height:70px; box-shadow:0 8px 18px -16px rgba(8,40,27,.8); } .short15-item:hover { background:#fff; border-color:var(--gold15); }
.short15-logo { width:64px; background:var(--mint); padding:0; } .short15-logo img { width:40px; height:40px; }
.short15-item strong { font-weight:500; font-size:.98rem; }

/* ── คำขวัญ + ผู้บริหาร: แถบเขียวเดียวกัน ── */
.vision15 { background:var(--pat-dots) 0 0/22px 22px var(--g1); color:#fff; padding:2.6rem 1rem 1.2rem; }
.vision15::before { content:""; position:absolute; inset:0 0 auto; display:none; }
.pill15 { border:0; border-radius:12px; } .pill15 span { background:rgba(255,255,255,.14); color:#fff; } .pill15 b { background:var(--gold15); color:var(--g1); font-weight:700; }
.cctv15 { background:none; border:2px solid var(--gold15); border-radius:12px; color:var(--gold15); box-shadow:none; font-size:1.05rem; } .cctv15 i { font-size:1.4rem; } .cctv15:hover { background:var(--gold15); color:var(--g1); }
.quote15 { color:#fff; font-family:"Bai Jamjuree",sans-serif; font-weight:600; max-width:1000px; margin-inline:auto !important; line-height:1.6; }
.sky15 { display:none; }
.exec15 { background:var(--pat-dots) 0 0/22px 22px var(--g1); padding:1.4rem 0 2.6rem; }
.exec15-grid { align-items:stretch; gap:1.2rem; }
.exec15-banner { margin-bottom:0; border-radius:var(--r15); overflow:visible; align-self:stretch; aspect-ratio:auto; min-height:240px; }
.exec15-banner .act-slide { border-radius:var(--r15); overflow:hidden; }
.exec15-card { border-radius:var(--r15); background:linear-gradient(var(--g-600),var(--g-900)); border:2px solid rgba(var(--gold-rgb,232,178,58),.6); aspect-ratio:210/300; }
.exec15-card span { left:0; right:0; bottom:0; border-radius:0; background:var(--gold15); color:var(--g1); padding:.5rem .7rem; text-align:center; } .exec15-card strong { font-weight:700; }
.exec15-meet { margin-bottom:0; border-radius:var(--r15); background:#fff; color:var(--g1); display:flex; flex-direction:column; }
.exec15-meet em { font-weight:700; font-family:"Bai Jamjuree",sans-serif; color:var(--gold-deep15); } .exec15-meet img { flex:none; aspect-ratio:4/3; } .exec15-meet span { background:none; }

/* ── ตัวเลขเมือง ── */
.stat15 { min-height:0; padding:3rem 0 3.4rem; background:linear-gradient(rgba(247,248,243,.93),rgba(247,248,243,.82)),var(--bg) center/cover; }
.stat15-grid { margin-top:1rem; gap:1.2rem; }
.stat15-card { background:#fff; border-radius:var(--r15); padding:1.3rem .6rem; color:var(--g-text,#33503f); font-weight:500; border:1.5px solid var(--gold-line); box-shadow:0 14px 30px -24px rgba(8,40,27,.7); backdrop-filter:none; }
.stat15-card b { color:var(--g2); font-weight:700; font-family:"Bai Jamjuree",sans-serif; }

/* ── นโยบาย ── */
.pol15 { background:var(--paper); grid-template-columns:1fr; padding:0 0 3rem; }
.pol15-head { background:none; color:var(--g1); clip-path:none; flex-direction:row; gap:.7rem; padding:0 1rem 1.4rem; align-items:baseline; flex-wrap:wrap; }
.pol15-head > b { font-size:3.4rem; color:var(--gold-deep15); text-shadow:none; font-family:"Bai Jamjuree",sans-serif; line-height:1; }
.pol15-head h2 { font-size:1.9rem; font-weight:700; } .pol15-head h2 span { display:inline; font-size:inherit; font-weight:700; } .pol15-head small { flex-basis:100%; opacity:.7; margin:0; }
.pol15-body { padding:0 1rem; max-width:1340px; margin:0 auto; width:100%; }
.pol15-card { border-radius:var(--r15); overflow:hidden; box-shadow:0 14px 30px -24px rgba(8,40,27,.7); position:relative; }
.pol15-card h3 { position:absolute; left:.8rem; top:.8rem; border:0; background:var(--c); color:#fff; border-radius:99px; padding:.15rem .9rem; font-size:.85rem; font-weight:600; }
.pol15-card p { font-weight:500; }

/* ── ภาพกิจกรรม ── */
.gal15 { background:var(--pat-dots) 0 0/22px 22px var(--g1); padding:2.8rem 0 2rem; }
.gal15-tabs button { border-radius:12px; font-size:1.05rem; font-weight:600; background:rgba(255,255,255,.12); color:#fff; padding:.4rem 1.5rem; }
.gal15-tabs button[aria-selected="true"] { background:var(--gold15); color:var(--g1); }
.gal15-hs { --gap:1rem; padding:0 3rem; max-width:1340px; margin:0 auto; } .gal15-hs .hs-btn.prev { left:.4rem; } .gal15-hs .hs-btn.next { right:.4rem; }
.gal15-item { border:0; border-radius:var(--r15); aspect-ratio:4/3; }
.gal15-item span { text-align:left; padding:2.2rem 1rem .8rem; }

/* ── รางวัล ── */
.award15 { background:var(--paper); padding:2.8rem 0; }
.award15-grid > div { background:#fff; border-radius:var(--r15); padding:1.3rem; box-shadow:0 14px 30px -24px rgba(8,40,27,.7); align-self:stretch; }
.award15 h2 { color:var(--g1); font-weight:700; font-size:1.3rem; }
.award15-cup img { border:3px solid var(--gold15); border-radius:10px; } .award15-cup i { color:var(--gold15); }
.award15-stage { border-radius:14px; } .award15-staff { box-shadow:none; padding:0; } .award15-staff img { border-radius:14px; }

/* ── One Stop Service | เอกสาร ── */
.oss15 { max-width:1340px; margin:0 auto 3rem; gap:1.2rem; padding:0 1rem; }
.oss15-a { background:#fff; border-radius:var(--r15); box-shadow:0 14px 30px -24px rgba(8,40,27,.7); border:1.5px solid var(--gold-line); }
.oss15-a h2 { color:var(--g2); font-size:2.4rem; font-weight:700; } .oss15-face { color:var(--gold15); } .oss15-face span { color:var(--g1); background:var(--mint); box-shadow:none; }
.oss15-tile span { border:0; border-radius:20px; background:var(--mint); box-shadow:none; color:var(--g3); } .oss15-tile:hover span { background:var(--gold15); color:var(--g1); }
.oss15-b { background:var(--pat-dots) 0 0/22px 22px var(--g2); border-radius:var(--r15); }
.oss15-bh h2 { font-weight:700; font-size:1.6rem; } .oss15-bh form { border-radius:12px; } .oss15-bh button { background:var(--gold15); color:var(--g1); }
.oss15-nav { gap:4px; } .oss15-nav button { border-radius:10px; background:rgba(255,255,255,.1); color:#fff; } .oss15-nav button i { color:var(--gold15); }
.oss15-nav button[aria-selected="true"] { background:var(--gold15); color:var(--g1); } .oss15-nav button[aria-selected="true"] i { color:var(--g1); }
.oss15-list h3 { border-left:0; padding-left:0; font-weight:700; font-size:1.2rem; color:var(--gold15); } .oss15-list li { border-bottom:1px solid rgba(255,255,255,.18); }

/* ── ท่องเที่ยว · ต้องไม่พลาด · ตลาด ── */
.travel15 { max-width:1340px; margin:0 auto; border-radius:26px; overflow:hidden; border:3px solid var(--gold15); background:var(--g2); }
.travel15-find { background:rgba(var(--g-rgb,11,58,38),.9); border-radius:0 0 var(--r15) 0; } .tv15-go { background:var(--gold15); color:var(--g1); font-weight:600; } .tv15-q i { color:var(--g3); }
.tv15-pin b { border-radius:9px; background:var(--g2); border-color:var(--gold15); }
.tv15-pin:hover b, .tv15-pin.on b { background:var(--gold15); color:var(--g1); }
.tv15-pin span { background:rgba(var(--g-rgb,11,58,38),.88); border-radius:99px; padding:0 .7rem; }
.travel15-tabs a { border-radius:99px; font-weight:500; } .travel15-tabs a.on, .travel15-tabs a:hover { background:var(--gold15); color:var(--g1); }
.must15 { background:var(--paper); color:var(--g1); padding:3rem 0 0; }
.must15-t { font-style:normal; font-weight:700; color:var(--g1); font-size:clamp(1.5rem,2.8vw,2.1rem); }
.must15-tabs button { color:var(--g1); opacity:1; border:1.5px solid var(--g-150,#cfe3d7); border-radius:99px; padding:.3rem 1.1rem; background:#fff; font-size:.95rem; font-weight:500; }
.must15-tabs button[aria-selected="true"] { background:var(--g2); border-color:var(--g2); color:#fff; } .must15-tabs button i { color:var(--gold15) !important; }
.cf15 { --s:330px; }
.cf15-ring { height:calc(var(--s) + 20px); }
.cf15-item { width:var(--s); height:var(--s); margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2); transform:translateX(calc(var(--d,0) * var(--s) * .65)) scale(max(.2,calc(1 - var(--a,0) * .2))); border-radius:28px; border:5px solid #fff; } .cf15-item.on { border-color:var(--gold15); }
.cf15-info { margin-top:calc(var(--s) / -2); padding-top:calc(var(--s) / 2 + 1.6rem); }
@media (max-width:1000px) { .cf15 { --s:280px; } }
@media (max-width:640px) { .cf15 { --s:230px; } }
.cf15-info { background:var(--pat-dots) 0 0/22px 22px var(--g2); color:#fff; } .cf15-info h3, .cf15-info p { font-style:normal; } .cf15-info h3 { color:var(--gold15); font-weight:700; }
.market15 { background:#fff; padding:3rem 0; }
.market15-t { color:var(--g1); font-weight:700; text-shadow:none; font-size:clamp(1.5rem,2.8vw,2.1rem); } .market15-t b { color:var(--gold-deep15); font-weight:700; }
.market15-item { background:#fff; border-radius:var(--r15); overflow:hidden; box-shadow:0 14px 30px -24px rgba(8,40,27,.7); border:1.5px solid var(--gold-line); } .market15-item img { border-radius:0; box-shadow:none; } .market15-item span { padding:.8rem 1rem 1rem; font-weight:500; }

/* ── สื่อ · แนะนำ · ลิงก์ · แอป ── */
.media15 { background:var(--paper); padding:3rem 0; }
.media15-t > span:first-child { color:var(--g1); font-weight:700; font-family:"Bai Jamjuree",sans-serif; } .media15-t b { color:var(--gold-deep15); font-weight:700; letter-spacing:0; }
.media15-col h3 { font-weight:700; color:var(--g1); } .journal15, .cal15 { border-radius:var(--r15); overflow:hidden; box-shadow:0 14px 30px -24px rgba(8,40,27,.7); } .journal15-cover { background:linear-gradient(160deg,var(--g3),var(--g1)); border-bottom:5px solid var(--gold15); }
.video15 { border:0; border-radius:var(--r15); } .media15-col.mid p { border-radius:12px; box-shadow:none; background:none; text-align:center; }
.cal15-head { background:var(--g2); padding:.5rem .7rem; } .cal15-head strong { color:#fff; font-weight:600; } .cal15-head button { background:var(--gold15); color:var(--g1); border-radius:6px; }
.cal15 td.today { border-radius:0; box-shadow:inset 0 0 0 2px var(--gold15); } .cal15 td button { background:var(--g2); border-radius:8px; } .cal15 .sun { color:#c0504d; }
.reco15 { background:#fff; padding:2.4rem 0; border-top:1px solid #e6e0cf; }
.reco15-card { border-radius:14px; overflow:hidden; box-shadow:none; border:1.5px solid var(--gold-line); } .reco15-img { background:var(--mint); color:var(--g3); } .reco15-card strong { font-weight:500; } .reco15-card:hover { border-color:var(--gold15); }
.links15 { background:var(--pat-dots) 0 0/22px 22px var(--g1); grid-template-columns:.8fr 1fr 1fr 1fr; padding:3rem max(1rem,calc(50% - 670px)); }
.links15-hero { text-align:left; align-self:center; } .links15-hero p { background:none; padding:0; font-family:"Bai Jamjuree",sans-serif; font-size:1.9rem; font-weight:600; } .links15-hero b { color:var(--gold15); font-weight:700; }
.links15-panel { background:rgba(255,255,255,.07); border-radius:var(--r15); border:1px solid rgba(255,255,255,.14); } .links15-panel h3 { color:#fff; font-weight:600; } .links15-panel h3::after { background:var(--gold15); }
.links15-tiles { gap:.6rem; } .links15-tiles a, .links15-ext { border:0; border-radius:14px; aspect-ratio:1/1; font-weight:500; }
.links15-tiles i { color:var(--g3); font-size:2.2rem; } .links15-tiles .t1 { background:var(--gold15); color:var(--g1); } .links15-tiles .t1 i { color:var(--g1); } .links15-tiles .t2 { background:var(--mint); }
.links15-tiles a:hover, .links15-ext:hover { box-shadow:inset 0 0 0 3px var(--gold15); }
@media (max-width:1100px) { .links15 { grid-template-columns:1fr 1fr; background:var(--pat-dots) 0 0/22px 22px var(--g1); } } @media (max-width:640px) { .links15 { grid-template-columns:1fr; } }
.app15 { background:var(--paper); padding:2.6rem 0; } .app15-icon { border-radius:24px; background:var(--g2); } .app15 h2 { font-weight:700; color:var(--g1); } .app15 h2 b { font-style:normal; color:var(--gold-deep15); }
.app15-phone { color:var(--g3); } .app15-qr { border-radius:14px; border:3px solid var(--gold15); } .app15-stores a { background:var(--g1); border-radius:10px; }
.app15 li::before, .app15 li:nth-child(2)::before, .app15 li:nth-child(3)::before { background:var(--gold15); border-radius:50%; }

/* ── ส่วนท้าย ── */
.ft15-main { position:relative; background:var(--pat-dots) 0 0/22px 22px var(--g1); border-top:0; padding:3rem 0 2rem; }
.ft15-main::before { content:""; position:absolute; inset:0 0 auto; height:4px; background:var(--gold15); }
.ft15 h2 { font-weight:700; } .ft15-org h2 { color:var(--gold15); }
.ft15-logo { border-radius:26px; padding:8px; box-shadow:0 0 0 3px var(--gold15); }
.ft15-btns a { background:var(--gold15); color:var(--g1); border-radius:8px; font-weight:600; padding:.25rem 1rem; } .ft15-btns a:hover { background:#fff; }
.ft15-social p { gap:.5rem; } .ft15-social p a { border-radius:10px; padding:.35rem 1rem; font-weight:600; }
.ft15-contact dt { border-radius:10px; background:var(--gold15); color:var(--g1); }
.ft15-policy { background:var(--g2); } .ft15-policy a, .ft15-policy button { border-right-color:rgba(255,255,255,.35); }
.ft15-copy { background:var(--paper); } .counter15 { background:var(--g1); border-radius:6px; } .counter15.total { background:var(--g2); border-color:var(--gold15); color:var(--gold15); } .staff15 { border-radius:6px; border-color:var(--g3); color:var(--g1); }

/* ── ส่วนลอย ── */
.side15 { top:auto; bottom:6.5rem; border-radius:0 var(--r15) var(--r15) 0; background:var(--g1); box-shadow:0 8px 20px rgba(8,40,27,.4); }
.side15 a { color:#fff; border-bottom-color:rgba(255,255,255,.12); } .side15 a i { color:var(--gold15); } .side15 a:hover { background:var(--g2); }
.side15 .tag { background:var(--gold15); color:var(--g1); font-weight:700; } .side15 .tag.ita { background:var(--g2); color:#fff; font-style:normal; }
.pm15 { top:auto; bottom:11.5rem; border-radius:var(--r15); width:180px; } .pm15 b { font-size:3.2rem; font-family:"Bai Jamjuree",sans-serif; }
.bot15-btn { border:0; border-radius:var(--r15); background:var(--g2); color:#fff; } .bot15-face { background:var(--gold15); color:var(--g1); border-radius:14px; } .bot15-btn b { color:var(--gold15); }
.bot15-panel { border-top:0; border-radius:var(--r15); border:2px solid var(--gold15); }
.x15 { border-radius:8px; }
.v15 .to-top { background:var(--gold15); color:var(--g1); border-radius:14px; }
.cookie.cookie15 { background:var(--g1); border-radius:var(--r15); border:1px solid var(--gold15); }
.v15 .splash-stage { border-color:var(--gold15); border-radius:var(--r15); } .v15 .splash-x { background:var(--gold15); border-radius:10px; color:var(--g1); }
.v15 .page-head { background:var(--pat-dots) 0 0/22px 22px var(--g1); } .v15 .page-head::after { background:var(--gold15); height:4px; }
html[data-contrast="1"] .hd15::after, html[data-contrast="1"] .vision15::before, html[data-contrast="1"] .ft15-main::before { display:none; }

/* ── ลายกราฟิก: วงโค้งทองบนแถบเขียวใหญ่ · มุมวงกลมสีอ่อนบนพื้นขาว ── */
.vision15, .gal15, .links15, .ft15-main, .v15 .page-head { background:var(--rings) right top/520px 520px no-repeat, var(--pat-dots) 0 0/22px 22px var(--g1); }
.news15, .market15 { background:radial-gradient(circle at 0 0,var(--mint) 0 190px,transparent 191px), radial-gradient(circle at 100% 100%,var(--gold-50) 0 150px,transparent 151px), #fff; border-block:0; }
@media (max-width:640px) { .vision15, .gal15, .links15, .ft15-main, .v15 .page-head { background-size:300px 300px, 22px 22px; } }

/* ── ขอบทองบาง ๆ ให้การ์ดทุกใบเป็นชุดเดียวกัน ── */
.proc15-box, .award15-grid > div, .pol15-card, .exec15-meet, .gal15-item, .video15, .links15-panel, .tv15-card, .ticker15, .hd15 .mega15 { border:1.5px solid var(--gold-line); }
.ticker15 { box-shadow:none; }
.tabs15 button, .must15-tabs button { border-color:var(--gold-line); }
.tabs15 button[aria-selected="true"], .must15-tabs button[aria-selected="true"] { border-color:var(--g2); }
.ncard15, .short15-item, .stat15-card, .pol15-card, .market15-item, .award15-grid > div, .strip15-a, .oss15-a, .proc15-box, .journal15, .cal15 { box-shadow:0 10px 24px -22px rgba(8,40,27,.55); }
html[data-contrast="1"] .v15 :is(.vision15,.gal15,.links15,.ft15-main,.news15,.market15,.page-head) { background:#000 !important; }

/* ── เก็บรายละเอียดให้ดูเรียบ ── */
.gal15 .hs-dots i.on { background:var(--gold15); }
.travel15-map > svg text { display:none; }
.links15-tiles .t1, .links15-tiles .t2 { background:#fff; color:var(--ink15); } .links15-tiles .t1 i { color:var(--g3); }
.oss15 { align-items:start; }

/* ── ผู้บริหารอยู่ต่อจากสไลด์และเด่นขึ้น: การ์ดบุคคลขึ้นก่อน ใหญ่ขึ้น กรอบทอง ป้ายชื่อใหญ่ ── */
.exec15-head { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-bottom:1.3rem; }
.exec15-head h2 { color:#fff; font-weight:700; font-size:clamp(1.4rem,2.6vw,1.9rem); display:flex; align-items:center; gap:.7rem; }
.exec15-head h2::before { content:""; width:7px; height:1.15em; border-radius:99px; background:var(--gold15); }
.exec15 { padding:2rem 0 3rem; }
.exec15-grid { grid-template-columns:1.3fr 1.3fr 1.6fr 1fr; gap:1.4rem; }
.exec15-card { order:-1; aspect-ratio:210/285; border:3px solid var(--gold15); border-radius:22px; box-shadow:0 0 0 7px rgba(var(--gold-rgb,232,178,58),.14), 0 26px 44px -22px rgba(0,0,0,.75); transition:transform .25s; }
.exec15-card:hover { transform:translateY(-6px); }
.exec15-card span { padding:.7rem .8rem .8rem; background:linear-gradient(180deg,var(--gold-300,#f2c75c),var(--gold15)); }
.exec15-card strong { font-size:clamp(1rem,1.5vw,1.25rem); line-height:1.35; } .exec15-card small { display:block; font-size:.88rem; font-weight:500; margin-top:.1rem; }
.exec15-card em { display:inline-block; font-style:normal; font-size:.8rem; font-weight:600; margin-top:.4rem; padding:.1rem .8rem; border-radius:99px; background:var(--g1); color:#fff; } .exec15-card em i { color:var(--gold15); font-size:.7rem; }
.exec15 + .ticker15 { margin-top:1.8rem; }
@media (max-width:900px) { .exec15-grid { grid-template-columns:1fr 1fr; } .exec15-card { order:-1; } }

/* ── บาร์บนสุด: เปลี่ยนภาษา + ปรับขนาดอักษร (สีครีมทอง ต่างจากแถบเมนูสีเขียว) เลื่อนหน้าแล้วบาร์นี้หลบขึ้นไป ── */
:root { --top15:38px; }
.hd15 { transition:top .3s; } .hd15.compact { top:calc(var(--top15) * -1); }
.top15 { background:var(--gold-50); border-bottom:1px solid var(--gold-line); color:var(--g1); font-size:.8rem; }
.top15-in { max-width:1440px; margin:0 auto; height:var(--top15); padding:0 1.25rem 0 2.2rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.top15-info { margin:0; display:flex; gap:1.4rem; white-space:nowrap; overflow:hidden; } .top15-info i { color:var(--gold-deep15); margin-right:.25rem; } .top15-info a:hover { text-decoration:underline; }
.top15 .hd15-tools { flex-direction:row; align-items:center; gap:1.3rem; font-size:.78rem; margin-left:auto; }
.top15 .hd15-row, .hd15.compact .top15 .hd15-row + .hd15-row { display:flex; }
.top15 .hd15-lbl { display:inline; color:var(--g-text,#33503f); }
.top15 :is(.lang15,.font15,.sq15) { background:#fff; color:var(--g1); box-shadow:inset 0 0 0 1px var(--gold-line); height:24px; }
.top15 .lang15.on, .top15 .font15[aria-pressed="true"] { background:var(--g1); color:#fff; box-shadow:none; }
.top15 .sq15[aria-pressed="true"] { background:#000; color:#ff0; }
.hd15-in > .search-trigger { margin-left:0; width:38px; height:38px; border-radius:10px; background:rgba(255,255,255,.12); font-size:1rem; flex:none; }
.hd15-in > .search-trigger:hover { background:var(--gold15); color:var(--g1); }
@media (max-width:1023px) { .top15-in { padding:0 1rem; } .top15-info span + span { display:none; } .top15 .hd15-tools { gap:.8rem; } .top15 .hd15-tools .lang15, .top15 .hd15-tools #contrast-toggle { display:inline-block; } }
@media (max-width:560px) { .top15-info, .top15 .hd15-row:first-child .hd15-lbl { display:none; } .top15 .hd15-tools { margin:0; width:100%; justify-content:space-between; } }
html[data-contrast="1"] .top15 { background:#000; border-color:#ff0; }
@media print { .top15 { display:none; } }

/* ── สไลด์เต็มความกว้างจอ (ไม่มีกรอบ) ── */
.hero15 { padding:0 0 3.2rem; background:var(--paper); }
.hero15-stage { max-width:none; height:clamp(230px,33.3vw,680px); border:0; border-radius:0; box-shadow:none; }
.hero15 .dots { right:2.2rem; bottom:20px; }
@media (max-width:767px) { .hero15 { padding:0 .75rem 1rem; } .hero15-stage { margin:0 -.75rem; border-radius:0; } }

/* ── ผู้บริหาร: นายกคนเดียว ภาพใหญ่กรอบทอง ชื่อตัวใหญ่ ── */
.exec15-solo { display:grid; grid-template-columns:minmax(230px,.85fr) 1.45fr 1.2fr; gap:2.4rem; align-items:center; }
.exec15-photo { margin:0; aspect-ratio:4/5; border-radius:28px; border:4px solid var(--gold15); background:linear-gradient(var(--g-600),var(--g-900)); box-shadow:0 0 0 9px rgba(var(--gold-rgb,232,178,58),.16), 0 30px 50px -24px rgba(0,0,0,.8); overflow:hidden; }
.exec15-photo img { width:100%; height:100%; object-fit:cover; object-position:top; }
.exec15-info { color:#fff; }
.exec15-eyebrow { display:inline-flex; align-items:center; gap:.7rem; color:var(--gold15); font-weight:600; letter-spacing:.08em; font-size:.95rem; }
.exec15-eyebrow::before { content:""; width:34px; height:3px; border-radius:99px; background:var(--gold15); }
.exec15-info h2 { color:#fff; font-weight:700; font-size:clamp(1.7rem,3vw,2.6rem); line-height:1.25; margin:.5rem 0 .3rem; } .exec15-info h2 span { white-space:nowrap; }
.exec15-role { color:var(--gold15); font-size:clamp(1.05rem,1.6vw,1.35rem); font-weight:500; }
.exec15-acts { display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; margin-top:1.4rem !important; }
.exec15-tel { display:inline-flex; align-items:center; gap:.5rem; background:#fff; color:var(--g1); font-weight:600; border-radius:10px; padding:.45rem 1.2rem; } .exec15-tel i { color:var(--gold-deep15); font-size:.85rem; } .exec15-tel:hover { background:var(--mint); }
.exec15-solo .exec15-banner { align-self:center; aspect-ratio:455/270; min-height:0; margin:0; }
@media (max-width:1000px) { .exec15-solo { grid-template-columns:minmax(200px,.8fr) 1.2fr; } .exec15-solo .exec15-banner { grid-column:1/-1; margin-bottom:1.5rem; } }
@media (max-width:600px) { .exec15-solo { grid-template-columns:1fr; text-align:center; gap:1.5rem; } .exec15-photo { width:min(280px,80%); margin:0 auto; } .exec15-acts { justify-content:center; } }
