/*
Theme Name: P&P Clean Elementor 2026
Theme URI: https://ppglobaltrading.com/
Author: P&P Global Trading
Description: ธีมฐานสะอาดสำหรับ Elementor ไม่มี Header เมนูหรือแบนเนอร์ซ้ำ และมี Footer ข้อมูลบริษัทแบบ Responsive
Version: 2.8.1
Text Domain: ppgt-clean
*/
:root{--pp-navy:#082b70;--pp-blue:#0c4598;--pp-gold:#d4a23e;--pp-white:#fff}
*{box-sizing:border-box}html{margin:0!important;scroll-behavior:smooth}body{margin:0;background:#fff;color:#18233a;font-family:"Noto Sans Thai",Arial,sans-serif;overflow-x:hidden}img{max-width:100%;height:auto}.ppgt-site{min-height:100vh}.ppgt-content{width:100%;margin:0;padding:0}.ppgt-content>article{margin:0}.entry-content{margin:0}.entry-content>*:first-child{margin-top:0}.entry-content>*:last-child{margin-bottom:0}
body.home .ppgt-content,body.home .ppgt-content>article,body.home .entry-content,body.home .ppgt-content .elementor{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body.home .ppgt-content .elementor>.e-con:first-child,body.home .ppgt-content .elementor-section-wrap>.elementor-section:first-child{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;gap:0!important}body.home .ppgt-content .elementor-widget-html:first-child,body.home .ppgt-content .elementor-widget-html:first-child>.elementor-widget-container{margin:0!important;padding:0!important}body.home #ppgt-home,body.home #ppgt-home>.hero{margin-top:0!important}
body.home #ppgt-home .hero-picture,body.home #ppgt-home .hero-picture img{display:block!important;width:100%!important;margin:0!important;padding:0!important}body.home #ppgt-home .hero-picture img{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
body.home #ppgt-home>.hero{display:none!important}
.ppgt-alt-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;margin-top:8px;padding:12px 22px;background:#d4a23e;color:#071a43;text-decoration:none;font-size:14px;font-weight:900;transition:.2s}.ppgt-alt-button:hover{background:#082b70;color:#fff;transform:translateY(-2px)}
.ppgt-video-hero{position:relative;isolation:isolate;min-height:clamp(640px,76vh,860px);display:flex;align-items:center;justify-content:center;overflow:visible;background:#071a43 url('assets/hero-desktop.jpg') center/cover no-repeat;color:#fff}.ppgt-hero-video{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover}.ppgt-hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(2,14,43,.92) 0%,rgba(5,30,76,.77) 44%,rgba(4,22,55,.42) 100%)}.ppgt-hero-copy{width:min(100%,1400px);margin:0 auto;padding:clamp(70px,9vw,130px) clamp(20px,6vw,88px);text-align:center}.ppgt-hero-copy h1{max-width:1180px;margin:0 auto 24px;color:#fff;font:800 clamp(40px,4.6vw,68px)/1.16 'Noto Sans Thai',sans-serif}.ppgt-hero-copy h1 span{font-size:.76em}.ppgt-hero-copy>p{max-width:1050px;margin:0 auto;color:#eef4ff;font-size:clamp(18px,2.3vw,26px);line-height:1.75}.ppgt-hero-buttons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:29px}.ppgt-btn{display:inline-flex;align-items:center;justify-content:center;min-width:165px;min-height:54px;padding:12px 23px;border:1px solid #fff;color:#fff;text-decoration:none;font-size:14px;font-weight:800}.ppgt-btn-gold{border-color:#d4a23e;background:#d4a23e;color:#071a43}.ppgt-btn-outline{background:rgba(5,25,66,.28)}.ppgt-btn:hover{transform:translateY(-2px)}
.ppgt-logo-bar{min-height:92px;display:flex;align-items:center;background:#0b2f73;border-bottom:4px solid var(--pp-gold)}.ppgt-logo-wrap{position:relative;width:min(100%,1600px);margin:auto;padding:0 clamp(18px,3vw,52px);display:flex;align-items:center;justify-content:space-between;gap:18px}.ppgt-logo-link{display:inline-flex;flex:0 0 auto;align-items:center;text-decoration:none}.ppgt-logo-link img{display:block;width:auto;max-width:min(285px,24vw);height:54px;object-fit:contain}.ppgt-primary-nav{display:block;min-width:0;margin-left:auto}.ppgt-menu{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.35vw,25px);margin:0;padding:0;list-style:none}.ppgt-menu li{position:relative;margin:0}.ppgt-menu a{display:flex;align-items:center;min-height:50px;color:#fff;text-decoration:none;font-size:14px;font-weight:700;white-space:nowrap}.ppgt-menu>li>a:hover,.ppgt-menu>.current-menu-item>a,.ppgt-menu>.current-menu-ancestor>a{color:#f3bd42}.ppgt-menu .menu-item-has-children>a::after{content:"⌄";margin-left:5px;font-size:12px}.ppgt-menu .sub-menu{position:absolute;z-index:99999;top:calc(100% - 2px);left:-18px;display:block;min-width:235px;margin:0;padding:10px;background:#fff;border:1px solid #dce5f5;border-radius:13px;box-shadow:0 14px 35px rgba(0,20,65,.2);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.ppgt-menu li:hover>.sub-menu,.ppgt-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.ppgt-menu .sub-menu a{min-height:42px;padding:8px 12px;border-radius:8px;color:#16356f;white-space:normal}.ppgt-menu .sub-menu a:hover{background:#edf4ff;color:#a36d08}.ppgt-menu .sub-menu .sub-menu{top:0;left:100%}.ppgt-menu-toggle{display:none;width:46px;height:46px;padding:10px;border:1.5px solid var(--pp-gold);border-radius:12px;background:transparent;cursor:pointer}.ppgt-menu-toggle span{display:block;width:23px;height:2px;margin:5px auto;background:#fff;transition:.2s}.ppgt-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:9px}.ppgt-header-action{min-height:45px;display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1.5px solid var(--pp-gold);border-radius:999px;color:#fff;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap}.ppgt-header-action img{width:24px;height:24px;border-radius:50%;object-fit:cover}.ppgt-header-action:hover{background:var(--pp-gold);color:#082b70}
.ppgt-smart-contact{position:fixed;z-index:99990;right:18px;bottom:24px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.ppgt-smart-icons{display:grid;gap:9px;max-height:0;opacity:0;overflow:hidden;transform:translateY(15px);transition:max-height .35s ease,opacity .25s ease,transform .35s ease}.ppgt-smart-contact.is-open .ppgt-smart-icons{max-height:390px;opacity:1;transform:none}.ppgt-smart-icons a{width:52px;height:52px;display:grid;place-items:center;padding:7px;border:3px solid #fff;border-radius:50%;background:#fff;box-shadow:0 7px 20px rgba(0,0,0,.24);transition:.2s}.ppgt-smart-icons a:hover{transform:scale(1.08)}.ppgt-smart-icons img{display:block;width:100%;height:100%;border-radius:50%;object-fit:contain}.ppgt-consult-toggle{min-height:50px;padding:11px 19px;border:0;border-radius:999px;background:#147d31;color:#fff;font:800 16px "Noto Sans Thai",Arial,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.22);cursor:pointer}.ppgt-consult-toggle::before{content:"♧";margin-right:7px}
@media(max-width:1180px){
  .ppgt-menu-toggle{display:none}
  .ppgt-logo-bar{min-height:auto;padding-bottom:2px}
  .ppgt-logo-wrap{flex-wrap:wrap;row-gap:4px}
  .ppgt-primary-nav{position:static;display:block;order:3;flex:0 0 100%;width:100%;max-width:100%;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .ppgt-primary-nav::-webkit-scrollbar{display:none;height:0}
  .ppgt-menu{display:flex;flex-wrap:nowrap;gap:16px;margin:0;padding:2px 2px 10px;list-style:none}
  .ppgt-menu li{flex:0 0 auto;margin:0}
  .ppgt-menu a{min-height:34px;padding:4px 2px;font-size:13px;white-space:nowrap}
  .ppgt-menu .sub-menu{position:absolute;top:calc(100% - 2px);left:0;min-width:200px;margin:0;padding:8px;background:#fff;border:1px solid #dce5f5;border-radius:12px;box-shadow:0 12px 30px rgba(0,20,65,.2);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}
  .ppgt-menu li:hover>.sub-menu,.ppgt-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
  .ppgt-menu .sub-menu a{color:#16356f;font-size:13px;min-height:38px;padding:6px 10px;white-space:normal}
  .ppgt-menu .sub-menu .sub-menu{position:absolute;top:0;left:100%}
  .ppgt-header-action span{display:none}
  .ppgt-header-action{width:43px;height:43px;min-height:43px;padding:8px;justify-content:center}
}
/* มือถือ: เมนูบนสุดเหลือแค่ Home + ผลงานของเรา (เมนูล่างดูแลรายการอื่นครบแล้ว) */
@media(max-width:767px){
  .ppgt-menu>li{display:none}
  .ppgt-menu>li:first-child,
  .ppgt-menu>li:has(>a[href$="/our-work/"]){display:flex}
}
@media(max-width:700px){.ppgt-logo-bar{min-height:76px}.ppgt-logo-link img{height:45px;max-width:48vw}.ppgt-logo-wrap{gap:9px}.ppgt-header-actions{gap:6px}.ppgt-smart-contact{right:9px;bottom:72px}.ppgt-smart-icons a{width:47px;height:47px}}
@media(max-width:1920px){.ppgt-logo-wrap,.ppgt-footer-wrap{max-width:1600px}}@media(max-width:1600px){.ppgt-logo-wrap,.ppgt-footer-wrap{max-width:1440px}}@media(max-width:1440px){.ppgt-logo-wrap,.ppgt-footer-wrap{max-width:1320px}}@media(max-width:1366px){.ppgt-logo-wrap,.ppgt-footer-wrap{max-width:1240px}}@media(max-width:1280px){.ppgt-logo-wrap,.ppgt-footer-wrap{padding-inline:34px}}@media(max-width:1200px){.ppgt-logo-link img{height:54px}}@media(max-width:1024px){.ppgt-footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:900px){.ppgt-header-action span{font-size:14px}}@media(max-width:768px){.ppgt-logo-wrap,.ppgt-footer-wrap{padding-inline:20px}}@media(max-width:600px){.ppgt-footer-grid{grid-template-columns:1fr}}@media(max-width:480px){.ppgt-logo-wrap,.ppgt-footer-wrap{padding-inline:16px}}@media(max-width:390px){.ppgt-consult-toggle{font-size:14px;padding-inline:15px}}@media(max-width:360px){.ppgt-logo-wrap,.ppgt-footer-wrap{padding-inline:12px}.ppgt-logo-link img{max-width:44vw}}
.ppgt-theme-footer{padding:52px 0 20px;background:linear-gradient(145deg,var(--pp-navy),var(--pp-blue));color:#fff}.ppgt-footer-wrap{width:min(100%,1440px);margin:auto;padding:0 clamp(18px,4vw,64px)}.ppgt-footer-grid{display:grid;grid-template-columns:1.25fr 1fr .8fr 1fr;gap:30px}.ppgt-footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ppgt-footer-logo{display:block;width:auto;height:56px;object-fit:contain}.ppgt-footer-brand strong{display:block;font-size:20px}.ppgt-footer-brand small{display:block;color:#d7e4ff}.ppgt-footer-col h2{margin:0 0 15px;color:#fff;font-size:20px}.ppgt-footer-col p{margin:7px 0;color:#dce7ff;line-height:1.7}.ppgt-footer-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.ppgt-footer-list a,.ppgt-footer-list span{color:#fff;text-decoration:none}.ppgt-footer-social{display:flex;gap:9px;margin-top:17px}.ppgt-footer-social a{width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-weight:800}.ppgt-footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.2);color:#cddcff;font-size:14px}
@media(max-width:1000px){.ppgt-footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.ppgt-footer-grid{grid-template-columns:1fr}.ppgt-footer-bottom{display:block;text-align:center}.ppgt-footer-bottom span{display:block;margin:5px 0}}
/* Hero responsive: 13 breakpoints */
@media(max-width:1920px){.ppgt-video-hero{min-height:min(76vh,850px)}}
@media(max-width:1600px){.ppgt-hero-copy{max-width:1320px}}
@media(max-width:1366px){.ppgt-video-hero{min-height:720px}}
@media(max-width:1200px){.ppgt-hero-copy h1{font-size:clamp(40px,5vw,62px)}}
@media(max-width:1024px){.ppgt-video-hero{min-height:680px;background-image:url('assets/hero-tablet.jpg')}}
@media(max-width:900px){.ppgt-hero-copy{padding-inline:30px}}
@media(max-width:768px){.ppgt-video-hero{min-height:620px;align-items:flex-start}.ppgt-hero-copy{padding:100px 22px 70px}}
@media(max-width:600px){.ppgt-video-hero{min-height:640px;background-image:url('assets/hero-mobile.jpg');background-position:center top}.ppgt-hero-video{display:block;object-position:center center}.ppgt-hero-shade{background:linear-gradient(180deg,rgba(2,14,43,.28),rgba(2,14,43,.78) 54%,rgba(2,14,43,.96))}.ppgt-hero-copy{padding-top:430px}.ppgt-hero-copy h1{font-size:28px}}
@media(max-width:480px){.ppgt-video-hero{min-height:600px}.ppgt-hero-copy{padding:400px 16px 60px}.ppgt-hero-copy h1{font-size:32px}.ppgt-btn{min-width:140px}}
@media(max-width:390px){.ppgt-video-hero{min-height:580px}.ppgt-hero-copy{padding-top:380px}.ppgt-hero-copy h1{font-size:29px}}
@media(max-width:360px){.ppgt-hero-copy{padding-inline:12px}}
/* Alternating homepage content: integrated with the same 13 responsive widths */
@media(max-width:600px){.ppgt-alt-button{width:100%;text-align:center}}
@media(max-width:390px){.ppgt-alt-button{padding-inline:14px}}

/* =========================================================================
   เพิ่มเติม: Mega Sale Popup + แถบลัดติดต่อด่วนลอยซ้าย + เมนูล่างมือถือ
   ========================================================================= */

/* ---- 1) Mega Sale Popup (กลางจอ) ---- */
.ppgt-mega-overlay{position:fixed;inset:0;z-index:99997;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(5,15,35,.6);backdrop-filter:blur(2px)}
.ppgt-mega-overlay.is-open{display:flex}
.ppgt-mega-card{position:relative;width:250px;max-width:calc(100vw - 32px);padding:26px 20px;background:linear-gradient(135deg,#fb923c 0%,#dc2626 58%,#b91c1c 100%);border-radius:20px;box-shadow:0 30px 70px rgba(0,0,0,.35);text-align:center;isolation:isolate}
@media(min-width:768px){.ppgt-mega-card{width:320px}}
.ppgt-mega-card::before{content:"";position:absolute;inset:-22px;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#ffd700 45%,transparent 50%),radial-gradient(circle,#ffe27a 45%,transparent 50%),radial-gradient(circle,#ffd700 45%,transparent 50%),radial-gradient(circle,#fff2b8 45%,transparent 50%),radial-gradient(circle,#ffd700 45%,transparent 50%),radial-gradient(circle,#ffe27a 45%,transparent 50%),radial-gradient(circle,#ffd700 45%,transparent 50%),radial-gradient(circle,#fff2b8 45%,transparent 50%);background-repeat:no-repeat;background-size:8px 8px,6px 6px,7px 7px,5px 5px,8px 8px,6px 6px,7px 7px,5px 5px;background-position:4% 8%,16% 92%,88% 12%,94% 80%,2% 52%,50% 2%,96% 46%,58% 96%;animation:ppgt-confetti-twinkle 2.4s ease-in-out infinite}
@keyframes ppgt-confetti-twinkle{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}
.ppgt-mega-close{position:absolute;top:10px;right:10px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#7c2d12;font-size:14px;line-height:1;cursor:pointer;z-index:1}
.ppgt-mega-close:hover{background:#fff}
.ppgt-mega-body{display:block;text-decoration:none;cursor:pointer}
.ppgt-mega-canvas-wrap{display:block;width:100%;aspect-ratio:1/1}
.ppgt-mega-canvas-wrap canvas{display:block;width:100%;height:100%}
.ppgt-mega-trigger{position:fixed;z-index:99989;left:14px;bottom:24px;display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:200px;height:100px;padding:8px;border:0;border-radius:16px;background:linear-gradient(135deg,#fb923c 0%,#dc2626 60%,#b91c1c 100%);color:#fff;text-align:center;box-shadow:0 10px 26px rgba(0,0,0,.3);cursor:pointer;font:700 13px "Noto Sans Thai",Arial,sans-serif}
.ppgt-mega-trigger.is-visible{display:flex}
.ppgt-mega-trigger-sub{display:block;color:#fff;font-size:10px;font-weight:600}

/* ---- 3) เมนูล่างมือถือ/แท็บเล็ต ---- */
.ppgt-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:99991;display:none;background:rgba(255,255,255,.97);backdrop-filter:blur(6px);border-top:1px solid #e2e8f0;box-shadow:0 -4px 18px rgba(8,43,112,.08);padding:4px 4px calc(env(safe-area-inset-bottom,4px) + 2px)}
.ppgt-bottom-nav-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;max-width:480px;margin:auto}
.ppgt-bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;padding:6px 2px;border:0;border-radius:12px;background:none;color:#64748b;text-decoration:none;font:700 10px "Noto Sans Thai",Arial,sans-serif;cursor:pointer}
.ppgt-bottom-nav-item svg{width:19px;height:19px}
.ppgt-bottom-nav-item.is-active{color:var(--pp-navy);background:#eef2fb}
.ppgt-bottomnav-item-wrap{position:relative;display:flex}
.ppgt-bottomnav-item-wrap .ppgt-bottom-nav-item{width:100%;font-family:inherit}
.ppgt-bottomnav-submenu{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(6px);display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px;box-shadow:0 10px 24px rgba(8,43,112,.18);min-width:150px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease;white-space:nowrap;z-index:99992}
.ppgt-bottomnav-submenu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.ppgt-bottomnav-submenu a{display:block;padding:9px 12px;border-radius:8px;font:700 13px "Noto Sans Thai",Arial,sans-serif;color:var(--pp-navy);text-decoration:none}
.ppgt-bottomnav-submenu a:hover{background:#eef2fb}
.ppgt-bottomnav-submenu::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:7px solid transparent;border-top-color:#fff}
@media(max-width:1023px){
  .ppgt-bottom-nav{display:block}
  body{padding-bottom:66px}
  /* เมนูล่างมือถือ/แท็บเล็ตครอบคลุมช่องทางติดต่อแล้ว จึงซ่อนปุ่มปรึกษาทีมงานลอยเดิมบนจอเล็ก */
  .ppgt-smart-contact{display:none}
  .ppgt-mega-trigger{bottom:96px}
}

/* ---- 4) Typography spec: Noto Sans Thai ---- */
h1,.text-h1{font-size:48px;font-weight:700;line-height:1.25}
h2,.text-h2{font-size:36px;font-weight:700;line-height:1.30}
h3,.text-h3{font-size:28px;font-weight:600;line-height:1.35}
h4,.text-h4{font-size:22px;font-weight:600;line-height:1.40}
h5,.text-h5{font-size:18px;font-weight:600;line-height:1.45}
.text-body-lg{font-size:18px;font-weight:400;line-height:1.70}
body,p,.text-body{font-size:16px;font-weight:400;line-height:1.70}
.text-btn,.ppgt-btn{font-size:16px;font-weight:500;line-height:1.50}
.text-body-sm{font-size:14px;font-weight:400;line-height:1.60}
.text-caption{font-size:12px;font-weight:400;line-height:1.50}
@media(max-width:640px){
  h1,.text-h1{font-size:32px;line-height:1.3}
  h2,.text-h2{font-size:26px;line-height:1.3}
  h3,.text-h3{font-size:22px;line-height:1.35}
}

/* ---- 5) Responsive box scaling (ใช้กับ container ที่ต้องหด/ขยายตามสเปก) ----
   ใส่ class "responsive-box-container" ให้ container ใน Elementor
   (Advanced > CSS Classes) เพื่อให้กว้างตามสเปก: Mobile 80-85% / Tablet 75-82% /
   Laptop 72-78% / Desktop 70-75% / Large Desktop 65-75% */
.responsive-box-container{width:82%;margin-left:auto;margin-right:auto}
@media(min-width:640px){.responsive-box-container{width:78%}}
@media(min-width:1024px){.responsive-box-container{width:76%}}
@media(min-width:1280px){.responsive-box-container{width:72%}}
@media(min-width:1536px){.responsive-box-container{width:68%}}

/* =========================================================================
   Phase 2: หน้าสินค้า / แพ็กเกจ / คำนวณค่าไฟ / ผลงาน / เกี่ยวกับเรา&ติดต่อ
   ========================================================================= */
.ppgt-page-hero{position:relative;isolation:isolate;min-height:clamp(300px,32vw,420px);display:flex;align-items:flex-end;background:#071a43 center/cover no-repeat;color:#fff}
.ppgt-page-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(4,20,55,.35),rgba(3,15,42,.88))}
.ppgt-page-hero-inner{position:relative;z-index:1;width:min(calc(100% - 48px),1280px);margin:0 auto;padding:60px 0 44px}
.ppgt-page-hero-tag{display:inline-block;margin-bottom:10px;padding:5px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);font-size:12px;font-weight:700;letter-spacing:.06em}
.ppgt-page-hero h1{margin:0 0 10px;color:#fff}
.ppgt-page-hero p{margin:0;max-width:720px;color:#eef4ff;font-size:16px;line-height:1.7}

.ppgt-page-section{width:min(calc(100% - 48px),1280px);margin:0 auto;padding:56px 0}
.ppgt-page-section+.ppgt-page-section{border-top:1px solid #e7ecf5}
.ppgt-page-section-head{max-width:760px;margin:0 auto 34px;text-align:center}
.ppgt-page-section-head h2{margin:0 0 10px;color:#082b70}
.ppgt-page-section-head p{margin:0;color:#46536b}

.ppgt-brand-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center;padding:40px 0;scroll-margin-top:96px}
.ppgt-brand-row+.ppgt-brand-row{border-top:1px solid #e7ecf5}
.ppgt-brand-row-reverse{direction:rtl}.ppgt-brand-row-reverse>*{direction:ltr}
.ppgt-brand-media{margin:0;border-radius:16px;overflow:hidden;box-shadow:0 18px 45px rgba(5,34,80,.12)}
.ppgt-brand-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.ppgt-brand-copy h3{margin:0 0 6px;color:#082b70}
.ppgt-brand-copy .ppgt-brand-eyebrow{display:block;margin-bottom:8px;color:#9a6b13;font-size:12px;font-weight:900;letter-spacing:.1em}
.ppgt-brand-copy p{color:#46536b}
.ppgt-brand-copy ul{margin:14px 0 20px;padding:0;list-style:none;display:grid;gap:9px}
.ppgt-brand-copy ul li{position:relative;padding-left:18px;color:#46536b;font-size:14px;line-height:1.75}
.ppgt-brand-copy ul li::before{content:"";position:absolute;top:.7em;left:0;width:7px;height:7px;border-radius:50%;background:#d4a23e}

.ppgt-cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.ppgt-cat-card{padding:26px 22px;border:1px solid #e7ecf5;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(8,43,112,.06);text-align:left;text-decoration:none;display:block;transition:.2s}
.ppgt-cat-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(8,43,112,.12)}
.ppgt-cat-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:14px;border-radius:12px;background:#eef2fb;color:#082b70;font-size:22px}
.ppgt-cat-card h4{margin:0 0 6px;color:#082b70}
.ppgt-cat-card p{margin:0;color:#46536b;font-size:14px;line-height:1.7}

.ppgt-cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:30px clamp(20px,4vw,44px);border-radius:20px;background:linear-gradient(135deg,var(--pp-navy),var(--pp-blue));color:#fff}
.ppgt-cta-band h3{margin:0 0 4px;color:#fff}
.ppgt-cta-band p{margin:0;color:#d7e4ff}
.ppgt-cta-band-actions{display:flex;gap:12px;flex-wrap:wrap}

.ppgt-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.ppgt-package-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e7ecf5;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(8,43,112,.06)}
.ppgt-package-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.ppgt-package-body{padding:22px}
.ppgt-package-body h3{margin:0 0 6px;color:#082b70;font-size:20px}
.ppgt-package-tag{display:inline-block;margin-bottom:10px;padding:3px 10px;border-radius:999px;background:#fef2f2;color:#dc2626;font-size:12px;font-weight:700}
.ppgt-package-body ul{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:7px}
.ppgt-package-body ul li{position:relative;padding-left:16px;color:#46536b;font-size:13px;line-height:1.7}
.ppgt-package-body ul li::before{content:"✓";position:absolute;left:0;top:0;color:#147d31;font-size:12px;font-weight:800}
.ppgt-package-body .ppgt-alt-button{width:100%;text-align:center}

.ppgt-calc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(28px,4vw,56px);align-items:start}
.ppgt-calc-form{padding:26px;border:1px solid #e7ecf5;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(8,43,112,.06)}
.ppgt-calc-form label{display:block;margin-bottom:6px;color:#082b70;font-size:14px;font-weight:700}
.ppgt-calc-field{margin-bottom:18px}
.ppgt-calc-field input[type=number],.ppgt-calc-field input[type=range]{width:100%;font-family:inherit}
.ppgt-calc-field input[type=number]{padding:11px 14px;border:1px solid #dbe3f0;border-radius:10px;font-size:16px}
.ppgt-calc-field .ppgt-calc-range-row{display:flex;justify-content:space-between;font-size:12px;color:#94a3b8;margin-top:4px}
.ppgt-calc-field output{font-weight:800;color:#082b70}
.ppgt-calc-btn{width:100%;min-height:52px;border:0;border-radius:12px;background:#d4a23e;color:#071a43;font-size:16px;font-weight:800;cursor:pointer}
.ppgt-calc-btn:hover{background:#082b70;color:#fff}
.ppgt-calc-result{margin-top:20px;padding:18px;border-radius:14px;background:#f7f9fc;display:none}
.ppgt-calc-result.is-visible{display:block}
.ppgt-calc-result-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e7ecf5;font-size:14px;color:#46536b}
.ppgt-calc-result-row:last-child{border-bottom:0}
.ppgt-calc-result-row strong{color:#082b70;font-size:16px}
.ppgt-calc-note{margin-top:14px;color:#94a3b8;font-size:12px;line-height:1.6}
.ppgt-calc-media{border-radius:18px;overflow:hidden;box-shadow:0 18px 45px rgba(5,34,80,.12)}
.ppgt-calc-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

.ppgt-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.ppgt-gallery-item{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(8,43,112,.1)}
.ppgt-gallery-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.ppgt-gallery-item:hover img{transform:scale(1.04)}
.ppgt-gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;background:linear-gradient(0deg,rgba(4,20,55,.85),transparent);color:#fff;font-size:14px;font-weight:700}

.ppgt-contact-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(28px,4vw,56px);align-items:start}
.ppgt-contact-card{padding:26px;border:1px solid #e7ecf5;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(8,43,112,.06)}
.ppgt-contact-card+.ppgt-contact-card{margin-top:20px}
.ppgt-contact-card h3{margin:0 0 16px;color:#082b70}
.ppgt-contact-list{margin:0;padding:0;list-style:none;display:grid;gap:14px}
.ppgt-contact-list li{display:flex;gap:12px;align-items:flex-start;color:#46536b;font-size:15px;line-height:1.7}
.ppgt-contact-list a{color:#082b70;text-decoration:none;font-weight:700}
.ppgt-contact-list a:hover{text-decoration:underline}
.ppgt-contact-icon{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eef2fb;color:#082b70;font-size:16px}
.ppgt-contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.ppgt-contact-map{border-radius:18px;overflow:hidden;box-shadow:0 18px 45px rgba(5,34,80,.12);min-height:360px}
.ppgt-contact-map iframe{display:block;width:100%;height:100%;min-height:360px;border:0}

.ppgt-footer-map{margin-top:14px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.25)}
.ppgt-footer-map iframe{display:block;width:100%;height:150px;border:0;filter:grayscale(.15)}
/* ---- 6) แก้ไอคอนติดต่อซ้ำ: แถบลัดลอยซ้าย (.ppgt-left-dock) ครอบคลุม LINE/โทร/TikTok/Facebook/อีเมลครบแล้ว
   จึงปิดวิดเจ็ตติดต่อเดิมฝั่งขวา (.ppgt-smart-contact) ทุกขนาดจอ เพื่อไม่ให้ไอคอนซ้ำกัน ---- */
.ppgt-smart-contact{display:none}

@media(max-width:900px){.ppgt-brand-row{grid-template-columns:1fr}.ppgt-calc-grid{grid-template-columns:1fr}.ppgt-contact-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ppgt-page-hero{min-height:280px}.ppgt-page-section{padding:40px 0}.ppgt-cta-band{flex-direction:column;align-items:flex-start}.ppgt-cta-band-actions{width:100%}.ppgt-cta-band-actions .ppgt-alt-button{width:100%;text-align:center}}
