/* PE888 — Industrial Corporate (ตามแบบ PE888-HTML-complete) */
:root{
  --navy:#102A43;--navy-2:#0A2236;--navy-3:#163A5C;--ink:#102A43;--ink-2:#3E5468;--muted:#5E7184;
  --gold:#D6A329;--gold-2:#EDBE45;--gold-ink:#7A5A0B;--pale:#E9EFF5;--pale-2:#F4F7FA;--line:#D3DEE8;--white:#fff;
  --red:#C8372D;--green:#1E7A4A;--radius:6px;--shadow:0 1px 2px rgb(16 42 67/.06),0 4px 14px rgb(16 42 67/.07);
  --shadow-up:0 2px 4px rgb(16 42 67/.08),0 10px 24px rgb(16 42 67/.12);
  --gut:16px;--max:1200px;--ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;font:400 16px/1.65 Kanit,"Noto Sans Thai",sans-serif;color:var(--ink);background:var(--white);padding-bottom:64px;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{line-height:1.3;font-weight:600;text-wrap:balance}
.nw{white-space:nowrap}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid #2B7BC0;outline-offset:2px;border-radius:2px}
.icon{width:20px;height:20px;flex:none;display:inline-block;vertical-align:middle}
.brand-logo{width:22px;height:22px;flex:none;display:inline-block;vertical-align:middle}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:-60px;z-index:100;background:#fff;padding:10px 16px;border-radius:var(--radius);box-shadow:var(--shadow)}
.skip-link:focus{top:10px}
.container{width:min(var(--max),100% - var(--gut)*2);margin-inline:auto}
.container.narrow{width:min(860px,100% - var(--gut)*2)}
.center{text-align:center}
.muted{color:var(--muted)}

/* ปุ่ม */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius);font-weight:500;line-height:1.25;text-align:center;transition:transform .2s var(--ease),box-shadow .2s var(--ease),filter .2s}
.btn .icon{width:18px;height:18px}
.btn:hover{filter:brightness(1.04);box-shadow:0 3px 10px rgb(16 42 67/.15)}
.btn:active{transform:translateY(1px)}
.btn.gold{background:linear-gradient(105deg,#D6A329,#EDBE45 45%,#D39C20);color:var(--navy);border-color:#E3B23C}
.btn.outline{background:#fff;color:var(--navy);border-color:#8A9CAD}
.btn.light-outline{color:#fff;border-color:rgb(255 255 255/.85);background:rgb(16 42 67/.25)}
.btn.gold-outline{color:var(--gold-2);border-color:var(--gold)}
.btn.small{min-height:38px;padding:6px 12px;font-size:15px}
.btn.big{min-height:50px;padding:12px 22px;font-size:17px}
.text-link{display:inline-flex;align-items:center;gap:6px;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.text-link .icon{width:16px;height:16px}

/* Header */
.site-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}
.site-header .header-inner{width:min(var(--max),100% - var(--gut)*2);margin-inline:auto;display:flex;align-items:center;gap:12px;min-height:64px}
.brand{width:104px;flex:none}
.header-content{flex:1;min-width:0;display:flex;justify-content:flex-end}
.utility{display:none}
.nav-line{display:flex;align-items:center;gap:8px}
.nav-line .hide-sm{display:none}
.quote-nav{gap:6px}
.count-pill{display:inline-flex;min-width:24px;height:24px;padding:0 7px;align-items:center;justify-content:center;border-radius:999px;background:var(--navy);color:#fff;font-size:13px;font-weight:600}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius)}
#main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgb(16 42 67/.12);padding:8px var(--gut) 16px;flex-direction:column}
#main-nav.open{display:flex}
#main-nav>a{padding:12px 4px;border-bottom:1px solid var(--pale);font-size:17px;font-weight:500}
#main-nav>a[aria-current]{color:var(--gold-ink)}
.nav-groups{display:flex;flex-direction:column;padding-top:8px}
.nav-groups a{display:flex;align-items:center;gap:10px;padding:10px 4px;color:var(--ink-2)}
.nav-groups .icon{color:var(--gold)}
.category-nav{background:linear-gradient(100deg,#163A5C,#0A2236);color:#fff;overflow-x:auto;scrollbar-width:none}
.category-nav::-webkit-scrollbar{display:none}
.category-nav .header-inner{display:flex;width:max-content;min-width:100%;padding:0 var(--gut)}
.category-nav a{display:flex;align-items:center;gap:8px;padding:11px 14px;font-size:15px;white-space:nowrap;border-right:1px solid rgb(255 255 255/.18)}
.category-nav a:last-child{border-right:0}
.category-nav a[aria-current]{background:rgb(255 255 255/.08)}
.category-nav .icon{width:22px;height:22px;color:var(--gold-2)}

/* Hero */
.hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(105deg,#0A2236 0%,#123659 58%,#0A2236 100%);isolation:isolate}
.hero-photo{position:relative;height:min(46vh,300px);overflow:hidden}
.hero-photo img{position:absolute;left:0;top:-12%;width:100%;height:124%;max-width:none;object-fit:cover;object-position:68% 38%;will-change:transform}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0F2D4A 2%,transparent 55%)}
.hero-accent{display:none}
.hero-content{position:relative;z-index:2;width:min(var(--max),100% - var(--gut)*2);margin:-28px auto 0;padding-bottom:34px}
.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#CBD7E3;margin-bottom:8px}
.hero h1{font-size:clamp(30px,7.6vw,36px);line-height:1.3;letter-spacing:-.01em}
.hero h1 span{color:var(--gold-2)}
.hero-sub{font-size:clamp(19px,4.8vw,22px);margin-top:10px;line-height:1.45}
.hero-description{font-size:16px;margin-top:8px;color:#DCE5EE}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* Benefits */
.benefits{padding:22px 0;border-bottom:1px solid var(--line)}
.benefits-grid{display:grid;gap:16px}
.benefits-grid>div{display:flex;align-items:center;gap:14px}
.benefits .icon{width:36px;height:36px;color:var(--navy)}
.benefits strong{display:block;font-size:17px;font-weight:600;line-height:1.35}
.benefits small{display:block;font-size:15px;color:var(--ink-2);line-height:1.5}

/* Section heading */
.section-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 16px;margin-bottom:22px}
.section-heading h2{font-size:clamp(24px,6vw,30px);position:relative;padding-bottom:12px}
.section-heading h2::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--gold-2))}
.section-heading>p{font-size:15px;color:var(--ink-2)}

/* Categories */
.categories-section{padding:36px 0;background:var(--pale)}
.search-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.search-form.single{grid-template-columns:1fr auto;max-width:520px;margin:24px auto}
.search-box{grid-column:1/-1;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:0 14px;min-height:48px}
.search-form.single .search-box{grid-column:auto}
.search-box .icon{color:var(--muted)}
.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;padding:10px 0}
select,input,textarea{font-size:16px}
.search-form select{min-height:46px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:0 10px;min-width:0}
.search-form .btn{grid-column:1/-1}
.search-form.single .btn{grid-column:auto}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.category{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;min-height:118px;padding:14px 6px;background:#fff;border:1px solid transparent;border-radius:var(--radius);font-size:14px;font-weight:500;line-height:1.45;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s}
.category .icon{width:36px;height:36px;color:var(--navy)}
.category:nth-child(4n+1) .icon{color:#B98510}
.category:last-child{grid-column:1/-1;flex-direction:row;min-height:64px}
.category:hover{transform:translateY(-3px);box-shadow:var(--shadow-up);border-color:var(--gold)}

/* Featured products (หน้าแรก) */
.products-section{padding:40px 0 28px}
.feature-grid{display:grid;gap:12px}
.feature-card{display:grid;grid-template-columns:44% 1fr;gap:4px;background:linear-gradient(112deg,#EEF3F7,#F7F9FB);border-radius:var(--radius);overflow:hidden;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-up)}
.feature-photo{display:flex;align-items:center;justify-content:center;padding:12px}
.feature-photo img{width:100%;height:auto;aspect-ratio:auto;mix-blend-mode:multiply}
.feature-info{padding:16px 14px 16px 10px;min-width:0}
.brand-line{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.feature-info h3{font-size:17px;line-height:1.35;margin:2px 0 4px}
.sku{font:500 14px/1.4 ui-monospace,Menlo,Consolas,monospace;color:var(--muted)}
.spec{font-size:14px;line-height:1.5;color:var(--ink-2)}
.price{font-size:24px;font-weight:600;color:#B5830B;margin:6px 0 8px;line-height:1.25}
.price.ask{font-size:17px;color:var(--navy)}
.quantity{display:inline-grid;grid-template-columns:40px 50px 40px;height:42px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}
.quantity button{display:flex;align-items:center;justify-content:center}
.quantity button .icon{width:16px;height:16px}
.quantity input{width:100%;border:0;border-inline:1px solid var(--pale);text-align:center;-moz-appearance:textfield;appearance:textfield;padding:0}
.quantity input::-webkit-inner-spin-button,.quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.add-product{width:100%;margin-top:8px;font-size:15px;padding-inline:8px}
.feature-info .add-product{white-space:nowrap;font-size:14px;gap:4px}
@media (max-width:479px){.feature-info .add-product .icon{display:none}}
.detail-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:15px;font-weight:500;text-decoration:underline;text-underline-offset:3px}
.detail-link .icon{width:16px;height:16px}
.price-note{text-align:center;color:var(--ink-2);font-size:15px;margin-top:22px}
.empty-note{padding:16px;background:var(--pale-2);border-radius:var(--radius);color:var(--ink-2)}

/* Product grid (หน้ารวม) */
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.product-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-up)}
.product-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:1;padding:10px;background:#fff}
.product-photo img{max-height:100%;width:auto;object-fit:contain}
.product-body{display:flex;flex-direction:column;flex:1;padding:10px 10px 12px;border-top:1px solid var(--pale)}
.product-body h3{font-size:16px;line-height:1.4;margin:2px 0}
.product-body h3 a:hover{text-decoration:underline}
.product-body .price{font-size:18px;margin:6px 0 10px}
.product-body .price.ask{font-size:15px}
.card-actions{margin-top:auto;display:grid;gap:8px}
.card-actions .quantity{width:100%;grid-template-columns:40px 1fr 40px}
.card-actions .add-product{margin:0}
.no-image{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;aspect-ratio:1;color:#9AAABA;background:var(--pale-2);border-radius:4px;font-size:13px}
.no-image .icon{width:40px;height:40px}

/* About band */
.about-section{padding:40px 0;color:#fff;background:radial-gradient(ellipse at 30% 10%,#1B4A70,transparent 65%),linear-gradient(110deg,#0A2236,#0F2D4A)}
.about-grid{display:grid;gap:28px}
.about-copy h2{font-size:clamp(26px,6.6vw,32px);position:relative;padding-bottom:14px;margin-bottom:16px}
.about-copy h2::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:4px;border-radius:2px;background:var(--gold)}
.about-copy h3{font-size:18px;margin-bottom:6px}
.about-copy p{color:#D5E0EA;margin-bottom:18px}
.sets{display:grid;gap:10px}
.set{display:grid;grid-template-columns:44px 1fr 20px;grid-template-areas:"ic num arrow" "ic title arrow" "ic desc arrow";column-gap:14px;align-items:center;padding:16px;border:1px solid rgb(255 255 255/.16);border-radius:var(--radius);background:rgb(255 255 255/.03);transition:background .2s,transform .2s var(--ease)}
.set:hover{background:rgb(255 255 255/.08);transform:translateY(-2px)}
.set .set-icon{grid-area:ic;width:40px;height:40px;color:var(--gold-2)}
.set .number{grid-area:num;font-size:14px;color:var(--gold-2);font-weight:600}
.set strong{grid-area:title;font-size:18px;font-weight:500}
.set small{grid-area:desc;font-size:14px;color:#C3D1DE;line-height:1.5}
.set .set-arrow{grid-area:arrow;color:var(--gold-2)}

/* Documents */
.documents-section{padding:40px 0}
.documents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.document-card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:128px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s}
.document-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-up);border-color:var(--gold)}
.document-card>.icon{position:absolute;right:14px;top:16px;width:20px;height:20px;color:var(--ink-2)}
.document-card strong{font-size:15px;font-weight:500;line-height:1.45}
.document-card small{color:var(--muted);font-size:13px;margin-top:auto}
.pdf-file{display:flex;align-items:flex-end;justify-content:center;width:28px;height:36px;padding-bottom:5px;color:#fff;font:700 9px/1 Arial,sans-serif;background:linear-gradient(110deg,#F06262,#D3202B);clip-path:polygon(0 0,66% 0,100% 26%,100% 100%,0 100%);flex:none}

/* Quote CTA + steps */
.quote-cta{padding:40px 0;background:var(--pale)}
.quote-steps{display:grid;gap:12px;margin-bottom:22px}
.quote-steps li{display:flex;align-items:flex-start;gap:12px}
.quote-steps li>span{display:flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border-radius:50%;background:linear-gradient(100deg,var(--gold),var(--gold-2));color:var(--navy);font-weight:600}
.quote-steps strong{display:block;font-size:17px;font-weight:600}
.quote-steps small{display:block;color:var(--ink-2);font-size:15px}
.quote-steps.compact{display:flex;justify-content:space-between;gap:8px;margin-bottom:18px}
.quote-steps.compact li{align-items:center;gap:8px;font-weight:500;font-size:15px}
.quote-steps.compact li>span{width:30px;height:30px;font-size:14px}

/* Contact band */
.contact-section{padding:36px 0 40px;color:#fff;background:radial-gradient(ellipse at 15% 50%,#163F61,transparent 70%),#0A2236}
.contact-grid{display:grid;gap:22px}
.contact-copy h2{font-size:clamp(24px,6vw,28px);margin-bottom:8px}
.contact-copy p{color:#D5E0EA}
.channels{display:flex;flex-wrap:wrap;gap:8px 18px}
.channels a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:500}
.channels .icon{color:var(--gold-2)}
.location{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid rgb(255 255 255/.25);border-radius:var(--radius)}
.location>span{display:flex;align-items:center;gap:8px;font-weight:500}
.location .icon{color:var(--gold-2)}
.opening{display:flex;gap:12px;padding-top:18px;border-top:1px solid rgb(255 255 255/.18)}
.opening>.icon{width:26px;height:26px;color:var(--gold-2)}
.opening h3{font-size:16px;font-weight:500}
.opening p{color:#D5E0EA;font-size:15px}

/* Footer */
.site-footer{padding:28px 0;border-top:1px solid var(--line);background:#fff}
.footer-grid{display:grid;gap:14px}
.footer-brand{width:110px}
.footer-company{font-size:14px;color:var(--ink-2);line-height:1.55}
.footer-company strong{font-weight:500;color:var(--ink)}
.site-footer nav{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:15px}
.site-footer nav a{padding:6px 0}
.site-footer nav a:hover{text-decoration:underline}
.footer-social{display:flex;gap:10px}
.footer-social a{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center}
.footer-social .brand-logo{width:30px;height:30px}
.copyright{font-size:13px;color:var(--muted)}

/* ปุ่มลอยมือถือ: ไลน์ + โทรเท่านั้น สูงไม่เกิน 60px */
.mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:1fr 1.25fr;gap:8px;padding:6px 10px calc(6px + env(safe-area-inset-bottom));background:rgb(255 255 255/.96);border-top:1px solid var(--line);backdrop-filter:blur(8px)}
.mobile-bar a{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:var(--radius);font-weight:600;font-size:15px}
.mb-line{background:#06C755;color:#fff}
.mb-line .brand-logo rect{fill:#fff}.mb-line .brand-logo path:first-of-type{fill:#06C755}.mb-line .brand-logo path:last-of-type{fill:#fff}
.mb-call{background:var(--navy);color:#fff}
.mb-call .icon{width:18px;height:18px}

/* Page head / breadcrumbs */
.page-head{padding:22px 0 26px;background:var(--pale)}
.page-head.slim{padding:14px 0 6px;background:#fff}
.page-head.dark{background:linear-gradient(110deg,#0A2236,#123659);color:#fff}
.page-head.dark .breadcrumbs,.page-head.dark .page-intro{color:#CFDAE5}
.page-head h1{font-size:clamp(28px,7vw,40px)}
.page-intro{margin-top:8px;color:var(--ink-2);max-width:70ch}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:2px 0;font-size:14px;color:var(--muted);margin-bottom:8px}
.breadcrumbs li+li::before{content:"/";margin:0 8px;color:#A3B2C1}
.breadcrumbs a:hover{text-decoration:underline}

/* List page */
.list-section{padding:22px 0 40px}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:12px;scrollbar-width:thin}
.chip{display:inline-flex;align-items:center;gap:6px;flex:none;min-height:40px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;white-space:nowrap}
.chip .icon{width:18px;height:18px;color:var(--navy)}
.chip span{font-size:13px;color:var(--muted)}
.chip.on{border-color:var(--gold);background:#FFF8E6;font-weight:500}
.list-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;font-size:15px}
.sort-form{display:flex;align-items:center;gap:8px}
.sort-form select{min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:0 10px}
.no-results{padding:28px 18px;text-align:center;background:var(--pale-2);border-radius:var(--radius)}
.no-results h2{font-size:20px}
.no-results p{margin:8px auto 16px;max-width:52ch;color:var(--ink-2)}
.row-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}
.pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}
.pager a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius)}

/* Product detail */
.product-detail{padding:8px 0 32px}
.pd-grid{display:grid;gap:22px}
.pd-grid>*{min-width:0}
.gallery-main{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--radius);padding:12px}
.gallery-main img{max-height:min(520px,62vh);width:auto;object-fit:contain}
.no-image.big{aspect-ratio:4/3}
.thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto}
.thumbs button{flex:none;width:72px;height:72px;padding:4px;border:2px solid transparent;border-radius:var(--radius);background:var(--pale-2)}
.thumbs button[aria-current]{border-color:var(--gold)}
.thumbs img{width:100%;height:100%;object-fit:contain}
.pd-info h1{font-size:clamp(26px,6.4vw,34px);margin:4px 0}
.name-en{color:var(--ink-2);font-size:16px}
.pd-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0;padding:14px;background:var(--pale-2);border-radius:var(--radius)}
.pd-meta dt{font-size:13px;color:var(--muted)}
.pd-meta dd{margin:0;font-weight:500;word-break:break-word}
.pd-meta dd a{text-decoration:underline;text-underline-offset:3px}
.standards{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px}
.standards span{font-size:14px;color:var(--muted);margin-right:4px}
.standards b{font-weight:600;font-size:14px;padding:4px 10px;border-radius:999px;background:#FFF5D9;color:var(--gold-ink);border:1px solid #F0D58D}
.summary{display:grid;gap:4px;margin-bottom:6px}
.summary li{position:relative;padding-left:16px}
.summary li::before{content:"";position:absolute;left:2px;top:.7em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.pd-buy{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pd-buy .add-product{width:auto;flex:1;min-width:220px;margin:0}
.pd-buy .quantity{height:50px}
.pd-contact{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:15px}
.pd-contact a{display:inline-flex;align-items:center;gap:6px;min-height:40px}
.pd-docs{margin-top:22px}
.pd-docs h2{font-size:18px;margin-bottom:8px}
.pd-docs a{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:8px}
.pd-docs a:hover{border-color:var(--gold)}
.pd-docs a>span:nth-child(2){flex:1;min-width:0}
.pd-docs small{display:block;color:var(--muted);font-size:13px}
.pd-sections{padding:10px 0 32px}
.pd-block{padding:22px 0;border-top:1px solid var(--line)}
.pd-block h2{font-size:22px;margin-bottom:12px}
.prose p+p{margin-top:12px}
.prose{max-width:72ch}
.spec-table{width:100%;border-collapse:collapse;font-size:15px}
.spec-table th,.spec-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.spec-table th{width:44%;font-weight:500;background:var(--pale-2)}
.ticks{display:grid;gap:8px}
.ticks li{display:flex;gap:10px;align-items:flex-start}
.ticks .icon{color:var(--green);margin-top:3px;width:18px;height:18px}
.ticks.warn .icon{color:#B5830B}
.video{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.related{padding:32px 0;background:var(--pale)}

/* About page */
.about-page{padding:36px 0}
.about-page h2{font-size:26px}
.about-page .prose{margin-top:16px}
.points{padding:36px 0;background:var(--pale)}
.center-title{text-align:center;font-size:clamp(24px,6vw,30px);margin-bottom:22px}
.points-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.point{padding:18px 14px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}
.point .icon{width:34px;height:34px;color:var(--gold)}
.point h3{font-size:17px;margin:10px 0 4px}
.point p{font-size:15px;color:var(--ink-2)}
.customers{padding:32px 0}
.customers h2{font-size:24px;margin-bottom:14px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags li{padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--pale-2);font-size:15px}

/* Quote page */
.quotation-section{padding:22px 0 40px;background:var(--pale)}
.quote-grid{display:grid;gap:14px}
.panel{background:#fff;border-radius:var(--radius);padding:18px 14px;box-shadow:var(--shadow)}
.panel h2{font-size:20px;margin-bottom:12px}
.table-wrap{overflow-x:auto}
.quote-table{width:100%;border-collapse:collapse;font-size:15px}
.quote-table th{text-align:left;font-weight:500;font-size:14px;padding:10px 8px;background:var(--pale)}
.quote-table td{padding:12px 6px;border-bottom:1px solid var(--pale);vertical-align:middle}
.quote-table th:nth-child(2){width:96px}
.quote-table th:last-child{width:44px}
.qp{display:flex;align-items:center;gap:10px;min-width:0}
.qp img{width:52px;height:52px;object-fit:contain;flex:none;background:#fff}
.qp .no-thumb{width:52px;height:52px;flex:none;border-radius:4px;background:var(--pale-2)}
.qp strong{display:block;font-weight:500;line-height:1.4}
.qp small{display:block;color:var(--muted);font-size:13px}
.quote-qty{width:84px;height:44px;text-align:center;border:1px solid var(--line);border-radius:var(--radius)}
.remove-item{display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--red)}
.more-items{margin-top:14px}
.form-grid{display:grid;gap:12px}
.field label,.status-form label{display:block;font-size:15px;font-weight:500;margin-bottom:4px}
.field label b{color:var(--red);font-weight:500}
.field input,.field textarea,.status-form input{width:100%;min-height:48px;padding:10px 12px;border:1px solid #B9C8D6;border-radius:var(--radius);background:#fff;font-size:16px}
.field textarea{min-height:120px;resize:vertical;line-height:1.6}
.field [aria-invalid=true]{border-color:var(--red);background:#FFF8F7}
.field-error,.form-error{color:var(--red);font-size:14px;margin-top:4px}
.form-error{padding:10px 12px;background:#FFF1EF;border-radius:var(--radius);margin-top:12px}
.file-control{position:relative;display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;min-height:64px;border:1px dashed #9FB1C2;border-radius:var(--radius);background:var(--pale-2);cursor:pointer}
.file-control strong{display:block;font-weight:500;word-break:break-all}
.file-control small{display:block;color:var(--muted);font-size:13px}
.file-control input{position:absolute;inset:0;opacity:0;cursor:pointer}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.submit-quote,#contact-form .btn.big{width:100%;margin-top:14px}
.consent{font-size:13px;color:var(--muted);margin-top:10px;text-align:center}
.consent a{text-decoration:underline}
.status-link{text-align:center;margin-top:18px}
.status-link a{display:inline-flex;align-items:center;gap:6px;font-weight:500;text-decoration:underline}

/* Thanks / status */
.thanks{padding:56px 0}
.big-check{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#E5F4EC;color:var(--green);margin-bottom:16px}
.big-check .icon{width:36px;height:36px}
.big-check.muted-ic{background:var(--pale);color:var(--navy)}
.thanks h1{font-size:clamp(26px,6.4vw,34px);margin-bottom:8px}
.quote-no{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;margin:22px 0 10px;padding:14px 18px;border:2px dashed var(--gold);border-radius:var(--radius);background:#FFFBF0}
.quote-no small{width:100%;color:var(--muted)}
.quote-no strong{font:600 26px/1.2 ui-monospace,Menlo,monospace;letter-spacing:.04em}
.status-section{padding:22px 0 40px;background:var(--pale)}
.status-form{display:grid;gap:12px}
.status-result{margin-top:16px}
.status-result h2{font-size:18px;margin:20px 0 10px}
.status-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.status-head small{display:block;color:var(--muted)}
.status-head strong{font:600 22px/1.2 ui-monospace,Menlo,monospace}
.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:14px;font-weight:500;background:var(--pale);color:var(--navy)}
.badge.s-new{background:#FFF3D1;color:var(--gold-ink)}
.badge.s-done,.badge.s-shipped,.badge.s-confirmed{background:#E2F3E9;color:#16613A}
.badge.s-cancelled{background:#FDE8E6;color:#9C2A21}
.progress{display:grid;gap:6px;margin-top:16px}
.progress li{display:flex;align-items:center;gap:10px;color:var(--muted)}
.progress li span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--line);font-size:13px;flex:none;background:#fff}
.progress li.done{color:var(--ink)}
.progress li.done span{background:var(--green);border-color:var(--green);color:#fff}
.progress li.done span .icon{width:14px;height:14px}
.progress li.now{color:var(--ink);font-weight:600}
.progress li.now span{border-color:var(--gold);background:#FFF3D1;color:var(--gold-ink)}
.tracking{margin-top:14px;padding:10px 12px;background:var(--pale-2);border-radius:var(--radius)}
.timeline{display:grid;gap:0;border-left:2px solid var(--line);margin-left:6px}
.timeline li{position:relative;padding:0 0 14px 18px}
.timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--gold);border:2px solid #fff}
.timeline time{display:block;font-size:13px;color:var(--muted)}
.timeline p{color:var(--ink-2);font-size:15px}
.mini-table{width:100%;border-collapse:collapse;font-size:15px}
.mini-table th,.mini-table td{text-align:left;padding:8px;border-bottom:1px solid var(--pale)}
.mini-table td small{display:block;color:var(--muted);font-size:13px}
.notice{margin-top:12px;padding:12px;background:#FDE8E6;border-radius:var(--radius)}

/* Contact page */
.contact-page{padding:28px 0 40px}
.contact-page-grid{display:grid;gap:18px}
.contact-cards{display:grid;gap:10px}
.ccard{display:flex;gap:14px;align-items:flex-start;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
a.ccard:hover{transform:translateY(-2px);box-shadow:var(--shadow-up)}
.ccard>.icon,.ccard>.brand-logo{width:30px;height:30px;color:var(--gold)}
.ccard small{display:block;color:var(--muted);font-size:14px}
.ccard strong{display:block;font-weight:500;font-size:17px;line-height:1.5;word-break:break-word}
.ccard .text-link{margin-top:6px;font-size:15px}

/* Toast */
.toast{position:fixed;left:50%;bottom:76px;transform:translateX(-50%);z-index:60;max-width:calc(100% - 32px);padding:12px 18px;border-radius:var(--radius);background:var(--navy);color:#fff;box-shadow:0 8px 24px rgb(0 0 0/.2);font-size:15px;text-align:center}
.toast a{color:var(--gold-2);text-decoration:underline;margin-left:8px}

/* อนิเมชัน: ปรากฏตอนเลื่อนถึง (เล่นครั้งเดียว) */
.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i,0) * 70ms)}
.js .reveal.in{opacity:1;transform:none}

@media (min-width:480px){
  .category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .points-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hero-photo{height:min(52vh,340px)}
  .documents-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:768px){
  body{padding-bottom:0}
  .mobile-bar{display:none}
  .toast{bottom:28px}
  :root{--gut:24px}
  .utility{display:flex;justify-content:flex-end;align-items:center;gap:14px;font-size:14px;font-weight:500}
  .utility a{display:inline-flex;align-items:center;gap:6px}
  .utility .icon{width:16px;height:16px}
  .utility .brand-logo{width:18px;height:18px}
  .separator{width:1px;height:16px;background:var(--line)}
  .header-content{flex-direction:column;align-items:stretch;gap:2px;padding:6px 0}
  .site-header .header-inner{min-height:80px}
  .brand{width:132px}
  .nav-line{justify-content:flex-end}
  .nav-line .hide-sm{display:inline-flex}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .feature-grid{grid-template-columns:1fr 1fr;gap:14px}
  .feature-card{grid-template-columns:50% 1fr}
  .benefits-grid{grid-template-columns:repeat(3,1fr);gap:20px}
  .search-form{grid-template-columns:2.3fr 1fr 1fr auto}
  .search-box,.search-form .btn{grid-column:auto}
  .search-form .btn{padding-inline:22px}
  .hero{min-height:420px;display:flex;align-items:center}
  .hero-photo{position:absolute;inset:0 0 0 auto;width:54%;height:100%;clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}
  .hero-photo::after{background:linear-gradient(100deg,rgb(10 34 54/.35),transparent 60%)}
  .hero-accent{display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(120deg,#D9B13F,#FFE27A,#C8951C);clip-path:polygon(57.9% 0,59.2% 0,46.6% 100%,45.3% 100%)}
  .hero-content{margin:0 auto;padding:40px 0}
  .hero-content>*{max-width:46%}
  .hero h1{font-size:clamp(34px,4.2vw,54px)}
  .hero-sub{font-size:clamp(20px,2.2vw,28px)}
  .hero-description{font-size:17px}
  .quote-steps{grid-template-columns:repeat(3,1fr);gap:20px}
  .quote-grid{grid-template-columns:1fr 1fr;align-items:start}
  .form-grid{grid-template-columns:1fr 1fr}
  .field.full{grid-column:1/-1}
  .contact-grid{grid-template-columns:1fr 1.5fr;align-items:start}
  .opening{grid-column:1/-1}
  .about-grid{grid-template-columns:1fr 1.25fr;align-items:center;gap:36px}
  .pd-grid{grid-template-columns:1fr 1fr;gap:36px;align-items:start}
  .gallery{position:sticky;top:110px}
  .contact-page-grid{grid-template-columns:1fr 1.3fr;align-items:start}
  .footer-grid{grid-template-columns:auto 1fr auto;align-items:center}
  .site-footer nav{grid-column:1/-1}
  .status-form{grid-template-columns:1fr 1fr auto;align-items:end}
  .panel{padding:22px}
}
@media (min-width:1024px){
  .menu-toggle{display:none}
  #main-nav{display:flex;position:static;flex-direction:row;align-items:center;gap:22px;padding:0;border:0;box-shadow:none;background:none;margin-right:auto;margin-left:8px}
  #main-nav>a{padding:8px 0;border:0;font-size:15px;position:relative}
  #main-nav>a[aria-current]{color:var(--ink)}
  #main-nav>a[aria-current]::after,#main-nav>a:hover::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--gold)}
  .nav-groups{display:none}
  .header-content{flex-direction:column}
  .nav-line{justify-content:space-between}
  .site-header::after{content:"";position:absolute;right:0;top:0;width:56px;height:100%;background:linear-gradient(125deg,#E4B33F,#C6911F);clip-path:polygon(100% 0,100% 100%,0 100%);pointer-events:none}
  .site-header .header-inner{padding-right:28px}
  .category-nav .header-inner{width:min(var(--max),100% - var(--gut)*2);margin-inline:auto;padding:0;justify-content:space-between}
  .category-nav a{flex:1;justify-content:center;font-size:16px}
  .category-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
  .category:last-child{grid-column:span 2;flex-direction:column;min-height:118px}
  .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .documents-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .sets{grid-template-columns:repeat(3,1fr)}
  .set{grid-template-columns:1fr;grid-template-areas:"ic" "num" "title" "desc" "arrow";justify-items:center;text-align:center;row-gap:8px;padding:22px 14px}
  .hero{min-height:480px}
  .points-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .contact-grid{grid-template-columns:1fr 1.6fr 1fr}
  .opening{grid-column:auto;border-top:0;border-left:1px solid rgb(255 255 255/.18);padding:0 0 0 18px}
  .categories-section,.products-section,.documents-section,.quote-cta,.about-section{padding:52px 0}
}
@media (min-width:1280px){
  .hero{min-height:520px}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
}
@media print{
  .site-header,.category-nav,.mobile-bar,.site-footer,.contact-section,.toast{display:none!important}
}
