:root{
  --orange:#f5a400;
  --orange-dark:#df8d00;
  --ink:#171717;
  --muted:#686868;
  --line:#e8e8e8;
  --soft:#f7f7f5;
  --white:#fff;
  --green:#06c755;
  --blue:#1550b8;
  --shadow:0 18px 55px rgba(24,24,24,.11);
  --radius:24px;
  --container:1140px;
  --header:66px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:#fff;color:var(--ink);font-family:"Mitr",sans-serif;font-weight:300;line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
svg{display:block;fill:currentColor}
h1,h2,h3,p,figure,blockquote{margin:0}
h1,h2,h3{font-family:"Kanit",sans-serif;line-height:1.2}
button{color:inherit}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.section{padding:106px 0}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.skip-link{position:fixed;z-index:9999;left:16px;top:-80px;background:#fff;color:#000;padding:12px 18px;border-radius:0 0 8px 8px;box-shadow:var(--shadow)}
.skip-link:focus{top:0}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition-duration:.01ms!important}}

/* Header */
.site-header{height:var(--header);position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(20,20,20,.07);backdrop-filter:blur(12px)}
.header-inner{width:min(1240px,calc(100% - 36px));height:100%;margin:auto;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:9px;min-width:226px}
.brand img{width:54px;height:54px;object-fit:contain}
.brand span{display:grid;line-height:1}
.brand b{font-family:"Kanit";font-size:18px;font-weight:800;letter-spacing:.8px;font-style:italic}
.brand small{font-family:"Kanit";font-size:9px;letter-spacing:3.2px;margin-top:4px;color:#626262}
.desktop-nav{display:flex;justify-content:center;align-items:center;gap:28px;flex:1;height:100%}
.desktop-nav a{font-family:"Kanit";font-size:14px;font-weight:400;white-space:nowrap;position:relative;padding:21px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:13px;height:2px;background:var(--orange);transition:right .25s}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{right:0}
.header-call{height:44px;display:flex;align-items:center;gap:9px;padding:0 16px;background:var(--ink);color:#fff;border-radius:5px;white-space:nowrap}
.header-call svg{width:20px;height:20px;color:var(--orange)}
.header-call span{display:grid;line-height:1.15}.header-call small{font-size:9px;color:#bcbcbc}.header-call b{font-family:"Kanit";font-size:14px;font-weight:500}
.menu-toggle{display:none;width:43px;height:43px;border:0;background:#111;padding:11px;border-radius:4px;align-content:center;cursor:pointer}
.menu-toggle i{display:block;height:2px;background:#fff;margin:4px 0;transition:.25s}
.menu-toggle[aria-expanded="true"] i:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded="true"] i:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-panel{position:fixed;inset:var(--header) 0 0;background:#fff;padding:20px;overflow:auto}
.mobile-panel nav{display:grid}.mobile-panel nav a{font-family:"Kanit";font-size:21px;border-bottom:1px solid var(--line);padding:15px 4px}
.mobile-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}

/* Controls */
.btn{height:52px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 23px;border:0;border-radius:4px;font-family:"Kanit";font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:19px;height:19px}
.btn-primary{background:var(--orange);color:#111;box-shadow:0 12px 35px rgba(245,164,0,.3)}
.btn-primary:hover{background:#ffb316}
.btn-ghost{border:1px solid rgba(255,255,255,.55);color:#fff;background:rgba(0,0,0,.2);backdrop-filter:blur(8px)}
.btn-dark{background:#151515;color:#fff}
.btn-line{background:var(--green);color:#fff}

/* Hero */
.hero{height:662px;min-height:600px;position:relative;overflow:hidden;background:#111;color:#fff;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-3;background-image:linear-gradient(90deg,rgba(5,5,5,.9) 0%,rgba(5,5,5,.64) 48%,rgba(5,5,5,.28) 100%),url('./assets/hero-nonthaburi-construction.webp');background-size:cover;background-position:center 58%}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.76));}
.hero-gridline{position:absolute;inset:0;z-index:-2;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,#000,transparent 75%)}
.hero-logo{position:absolute;width:304px;height:304px;top:20px;left:50%;transform:translateX(-50%)!important;border-radius:50%;background:rgba(0,0,0,.68);display:grid;place-items:center;box-shadow:0 0 0 1px rgba(255,255,255,.15),0 22px 70px rgba(0,0,0,.35);backdrop-filter:blur(4px);z-index:2}
.hero-logo img{width:280px;height:280px;object-fit:contain;filter:drop-shadow(0 15px 20px rgba(0,0,0,.35))}
.hero-copy{position:absolute;z-index:3;left:max(38px,calc((100% - var(--container))/2));bottom:78px;max-width:660px}
.hero-eyebrow{font-family:"Kanit";font-size:14px;font-weight:500;letter-spacing:5px;color:var(--orange);margin-bottom:10px}
.hero h1{font-size:72px;font-weight:700;letter-spacing:-1.5px;text-shadow:0 4px 25px rgba(0,0,0,.4)}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero-copy>p:not(.hero-eyebrow){font-size:23px;font-weight:400;margin-top:12px;letter-spacing:.3px}
.hero-actions{display:flex;gap:11px;margin-top:24px}
.hero-circles{position:absolute;right:max(20px,calc((100% - 1260px)/2));top:98px;width:430px;height:470px;z-index:1}
.hero-circle{position:absolute;border-radius:50%;overflow:hidden;border:7px solid rgba(255,255,255,.92);box-shadow:0 24px 55px rgba(0,0,0,.35)}
.hero-circle img{width:100%;height:100%;object-fit:cover}
.hero-circle-a{width:260px;height:260px;right:0;top:0}.hero-circle-b{width:205px;height:205px;right:205px;top:205px}.hero-circle-c{width:150px;height:150px;right:25px;bottom:0}
.hero-caption{position:absolute;right:-22px;bottom:48px;transform:rotate(-90deg);transform-origin:right bottom;font-family:"Kanit";letter-spacing:5px;font-size:10px;color:rgba(255,255,255,.58)}

/* Floating quick cards */
.quick-contact{position:relative;z-index:8;height:0}
.quick-grid{width:min(760px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;transform:translateY(-34px)}
.quick-card{height:110px;background:#fff;border-radius:18px;box-shadow:0 15px 45px rgba(19,19,19,.16);padding:20px;display:flex;align-items:center;gap:12px;transition:transform .25s,box-shadow .25s;border:1px solid rgba(0,0,0,.03)}
.quick-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(19,19,19,.2)}
.quick-icon{flex:0 0 45px;height:45px;border-radius:50%;background:var(--orange);display:grid;place-items:center}.quick-icon.line{background:var(--green)}.quick-icon svg{width:22px;height:22px;color:#fff}
.quick-card>span:nth-child(2){display:grid;min-width:0}.quick-card small{font-size:11px;color:#818181}.quick-card b{font-family:"Kanit";font-size:15px;line-height:1.25;white-space:nowrap}
.quick-arrow{width:16px;height:16px;margin-left:auto;color:#777;flex:0 0 auto}

/* Headings */
.section-heading{margin-bottom:55px}.section-heading.centered{text-align:center;max-width:680px;margin-left:auto;margin-right:auto}
.section-heading>span{display:block;font-family:"Kanit";font-size:12px;font-weight:600;letter-spacing:4px;color:var(--orange);margin-bottom:8px}
.section-heading h2{font-size:52px;font-weight:600;letter-spacing:-.7px}
.section-heading p{color:var(--muted);font-size:16px;margin-top:10px}

/* Services */
.services{padding-top:165px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:78px 28px}
.service-card{min-width:0;text-align:center;padding:0 14px}
.service-card.featured{padding:18px 18px 24px;border-radius:34px;background:#fff;box-shadow:var(--shadow);margin-top:-18px}
.service-image{aspect-ratio:1;border-radius:50%;overflow:hidden;position:relative;background:#eee}
.service-image::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 8px rgba(255,255,255,.18)}
.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.service-card:hover .service-image img{transform:scale(1.055)}
.service-copy{position:relative;padding-top:20px}.service-copy>span{position:absolute;left:4px;top:11px;font-family:"Kanit";font-size:31px;font-weight:700;color:#eee;z-index:-1}
.service-copy h3{font-size:27px;font-weight:500}.service-copy p{font-size:14px;color:var(--muted);max-width:310px;margin:8px auto 0;min-height:47px}
.service-copy a{display:inline-flex;align-items:center;gap:6px;margin-top:13px;font-family:"Kanit";font-size:13px;font-weight:500;color:var(--orange-dark)}.service-copy a svg{width:14px;height:14px}

/* Why */
.why{padding-top:100px;background:linear-gradient(#fff,#fbfbfa)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}
.why-item{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:start;min-height:145px;padding:22px 10px;border-bottom:1px solid var(--line)}
.why-icon{width:64px;height:64px;border:1px solid #e2e2e2;border-radius:50%;display:grid;place-items:center;color:#161616;position:relative;background:#fff}
.why-icon::after{content:"";position:absolute;width:19px;height:19px;border-radius:50%;right:-3px;bottom:2px;background:var(--orange)}
.why-icon svg{width:31px;height:31px;fill:none}
.why-item h3{font-size:20px;font-weight:500;margin:2px 0 7px}.why-item p{font-size:13px;color:var(--muted);line-height:1.6}
.stat-strip{margin-top:58px;background:#171717;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:31px 20px;border-bottom:5px solid var(--orange)}
.stat-strip div{text-align:center;border-right:1px solid rgba(255,255,255,.15)}.stat-strip div:last-child{border-right:0}.stat-strip b{display:block;font-family:"Kanit";font-size:31px;color:var(--orange)}.stat-strip span{font-size:12px;color:#c7c7c7}

/* Reviews */
.reviews{background:#fff}
.review-collage{display:grid;grid-template-columns:1.08fr .92fr 1fr;grid-auto-rows:260px;gap:18px}
.review-photo,.review-quote{position:relative;overflow:hidden;background:#eee}
.review-photo.tall{grid-row:span 2}.review-photo.wide{grid-column:span 2}
.review-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.review-photo:hover img{transform:scale(1.04)}
.review-photo::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.review-photo figcaption{position:absolute;z-index:2;bottom:20px;left:21px;right:21px;color:#fff;display:grid}.review-photo figcaption b{font-family:"Kanit";font-size:18px;font-weight:500}.review-photo figcaption span{font-size:12px;color:#ddd}
.review-quote{padding:30px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #ececec;background:#fff}
.review-quote.dark{background:#191919;color:#fff;border:0}.review-quote.dark p span{color:#aaa}
.stars{display:flex;gap:3px;color:var(--orange)}.stars svg{width:17px;height:17px}
.review-quote blockquote{font-family:"Kanit";font-size:18px;font-weight:400;line-height:1.55;margin:15px 0}
.review-quote p{display:grid}.review-quote p b{font-size:13px;font-weight:500}.review-quote p span{font-size:11px;color:#888}

/* Contact + FAQ */
.contact-zone{position:relative;padding:105px 0 115px;isolation:isolate;overflow:hidden}
.contact-zone-bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(118deg,#f9b41f 0%,#f5a400 56%,#e58e00 100%)}
.contact-zone-bg::after{content:"NGE";position:absolute;right:-45px;bottom:-130px;font-family:"Kanit";font-size:360px;line-height:1;font-weight:800;color:rgba(255,255,255,.1)}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(330px,.86fr);gap:46px;align-items:start}
.contact-zone .section-heading{margin-bottom:34px}.contact-zone .section-heading>span{color:#171717}.contact-zone .section-heading h2{font-size:50px}.contact-zone .section-heading p{color:rgba(0,0,0,.66)}
.accordion{display:grid;gap:10px}
.faq-item{background:#fff;border-radius:2px;overflow:hidden;box-shadow:0 10px 25px rgba(95,55,0,.08)}
.faq-item button{width:100%;min-height:66px;border:0;background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px 22px;cursor:pointer;font-family:"Kanit";font-size:16px;font-weight:500}
.faq-item button i{width:24px;height:24px;position:relative;flex:0 0 24px;margin-left:14px}.faq-item button i::before,.faq-item button i::after{content:"";position:absolute;background:#191919;left:5px;right:5px;top:11px;height:2px}.faq-item button i::after{transform:rotate(90deg);transition:transform .25s}.faq-item.open button{background:#171717;color:#fff}.faq-item.open button i::before,.faq-item.open button i::after{background:var(--orange)}.faq-item.open button i::after{transform:rotate(0)}
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}.faq-answer p{overflow:hidden;padding:0 22px;color:#5f5f5f;font-size:14px}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer p{padding-top:17px;padding-bottom:20px}
.lead-card{background:#fff;box-shadow:0 22px 65px rgba(91,52,0,.22);padding:30px}
.lead-card-head>span{font-family:"Kanit";font-size:10px;font-weight:600;letter-spacing:2.5px;color:var(--orange-dark)}.lead-card-head h2{font-size:28px;font-weight:600;margin-top:3px}.lead-card-head p{font-size:12px;color:#777;margin:6px 0 21px}
.form-row{display:grid;margin-bottom:12px}.form-row.two{grid-template-columns:1fr 1fr;gap:10px}.form-row.two>div{display:grid}
.form-row label{font-family:"Kanit";font-size:11px;font-weight:400;margin-bottom:4px;color:#4b4b4b}
.form-row input,.form-row select,.form-row textarea{width:100%;border:1px solid #dedede;background:#fafafa;border-radius:2px;padding:10px 11px;color:#171717;outline:0;font-size:13px;transition:border-color .2s,box-shadow .2s}.form-row input,.form-row select{height:42px}.form-row textarea{resize:vertical;min-height:76px}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(245,164,0,.13);background:#fff}.form-row input:user-invalid,.form-row select:user-invalid{border-color:#c73535}
.check-row{display:flex;gap:8px;align-items:flex-start;font-size:10px;color:#666;margin:8px 0;cursor:pointer}.check-row input{margin-top:3px;accent-color:var(--orange)}.text-button{border:0;background:none;padding:0;color:#a36300;text-decoration:underline;cursor:pointer}
.hp-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.submit-btn{width:100%;height:50px;border:0;background:#171717;color:#fff;display:flex;align-items:center;justify-content:center;gap:12px;font-family:"Kanit";font-size:15px;font-weight:500;margin-top:14px;cursor:pointer}.submit-btn:hover{background:#292929}.submit-btn:disabled{opacity:.6;cursor:wait}.submit-btn svg{width:18px;height:18px;color:var(--orange)}
.form-status{min-height:18px;font-size:11px;margin-top:7px}.form-status.error{color:#b32323}.form-status.success{color:#087d3b}
.lead-direct{border-top:1px solid var(--line);margin-top:16px;padding-top:15px}.lead-direct>span{display:block;font-size:10px;color:#888;margin-bottom:8px}.lead-direct>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lead-direct a{border:1px solid #ddd;display:flex;align-items:center;justify-content:center;gap:7px;height:39px;font-family:"Kanit";font-size:12px}.lead-direct a svg{width:17px;height:17px}.lead-direct a:last-child svg{color:var(--green)}

/* Projects */
.projects{padding-bottom:115px;background:#fff}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.project-card{border:1px solid #e8e8e8;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.045);transition:transform .25s,box-shadow .25s}
.project-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(0,0,0,.1)}
.project-image{width:100%;height:250px;border:0;padding:0;overflow:hidden;position:relative;background:#ddd;cursor:zoom-in}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.045)}
.project-image::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.48);opacity:0;transition:.25s}.project-image span{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-35%);color:#fff;font-family:"Kanit";font-size:12px;border:1px solid rgba(255,255,255,.7);padding:7px 12px;opacity:0;transition:.25s;white-space:nowrap}.project-image:hover::after,.project-image:hover span{opacity:1}.project-image:hover span{transform:translate(-50%,-50%)}
.project-body{padding:22px 22px 20px}.project-body small{font-family:"Kanit";font-size:10px;letter-spacing:1.3px;color:var(--orange-dark)}.project-body h3{font-size:21px;font-weight:500;margin:5px 0 9px;min-height:50px}.project-body p{display:flex;align-items:center;gap:5px;color:#777;font-size:12px}.project-body p svg{width:15px;height:15px;fill:none}.project-body>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:16px;font-family:"Kanit";font-size:12px;font-weight:500}.project-body>a svg{width:14px;height:14px;color:var(--orange)}
.closing-cta{background:var(--orange);padding:39px 0}.closing-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing-cta span{font-size:12px;letter-spacing:2px}.closing-cta h2{font-size:34px;font-weight:600}.closing-cta .btn{min-width:220px}

/* Footer */
.site-footer{background:#0c0c0c;color:#fff;position:relative;overflow:hidden}
.footer-grid{min-height:370px;display:grid;grid-template-columns:335px 150px 190px 1fr;gap:42px;align-items:center;padding-top:20px;padding-bottom:20px}
.footer-brand{align-self:stretch;display:grid;place-items:center;position:relative}.footer-brand::after{content:"";position:absolute;width:318px;height:318px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.footer-brand img{width:290px;height:290px;object-fit:contain;filter:drop-shadow(0 18px 35px rgba(0,0,0,.5))}
.footer-col{display:grid;gap:10px;align-content:center}.footer-col h2{font-size:15px;color:var(--orange);font-weight:500;margin-bottom:7px}.footer-col a{font-size:12px;color:#bcbcbc;transition:color .2s}.footer-col a:hover{color:#fff}
.footer-about>span{font-family:"Kanit";letter-spacing:3px;font-size:10px;color:var(--orange)}.footer-about h2{font-size:30px;font-weight:500;margin:7px 0 11px}.footer-about>p{font-size:12px;color:#aaa;max-width:380px}.footer-actions{display:flex;gap:10px;margin-top:20px}.footer-actions>a{height:50px;border:1px solid #333;display:flex;align-items:center;gap:8px;padding:0 13px;min-width:150px}.footer-actions>a>svg{width:20px;height:20px;color:var(--orange)}.footer-actions>a:last-child>svg{color:var(--green)}.footer-actions span{display:grid}.footer-actions small{font-size:9px;color:#888}.footer-actions b{font-family:"Kanit";font-size:12px;font-weight:400}
.footer-bottom{border-top:1px solid #252525;min-height:57px;display:flex;align-items:center;justify-content:space-between;color:#777;font-size:10px}.footer-bottom div{display:flex;gap:18px}.footer-bottom button{border:0;background:none;color:#888;padding:5px;cursor:pointer;font-size:10px}

/* Floating UI */
.floating-actions{position:fixed;right:20px;bottom:22px;z-index:700;display:grid;gap:8px}.floating-actions>a,.back-top{width:49px;height:49px;border-radius:50%;display:grid;place-items:center;border:3px solid #fff;box-shadow:0 7px 22px rgba(0,0,0,.18)}.floating-actions svg{width:22px;height:22px}.float-line{background:var(--green);color:#fff}.float-phone{background:var(--orange);color:#111}.back-top{border:0;background:#171717;color:#fff;font-size:19px;cursor:pointer;opacity:0;pointer-events:none;transition:.2s}.back-top.show{opacity:1;pointer-events:auto}
.mobile-dock{display:none}
.toast{position:fixed;z-index:1500;right:22px;top:84px;max-width:360px;padding:12px 16px;background:#171717;color:#fff;font-size:12px;box-shadow:var(--shadow);transform:translateY(-18px);opacity:0;pointer-events:none;transition:.25s;border-left:4px solid var(--orange)}.toast.show{opacity:1;transform:none}

/* Cookie + dialogs */
.cookie-banner{position:fixed;z-index:1200;right:18px;bottom:18px;width:min(460px,calc(100% - 36px));background:#164eb4;color:#fff;padding:18px;display:grid;grid-template-columns:45px 1fr;gap:13px;box-shadow:0 20px 65px rgba(0,0,0,.3);border-radius:4px}.cookie-banner[hidden]{display:none}.cookie-icon{width:43px;height:43px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:23px}.cookie-banner h2{font-size:18px;font-weight:500}.cookie-banner p{font-size:11px;color:#e3eaff;line-height:1.5;margin-top:3px}.cookie-banner p button{background:none;border:0;color:#fff;text-decoration:underline;padding:0;cursor:pointer}.cookie-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}.cookie-actions button{border:0;height:34px;padding:0 11px;font-size:10px;font-family:"Kanit";cursor:pointer}.cookie-settings{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)!important}.cookie-necessary{background:#fff;color:#174a9f}.cookie-accept{background:var(--orange);color:#111}
.site-dialog{border:0;padding:0;background:transparent;max-width:none}.site-dialog::backdrop{background:rgba(0,0,0,.64);backdrop-filter:blur(3px)}.dialog-shell{width:min(540px,calc(100vw - 32px));background:#fff;padding:28px;box-shadow:var(--shadow)}.dialog-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:16px}.dialog-head h2{font-size:24px}.dialog-head button{border:0;background:none;font-size:28px;line-height:1;cursor:pointer}.dialog-shell>p{font-size:13px;color:#666}.consent-list{display:grid;margin-top:18px}.consent-list label{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-top:1px solid var(--line)}.consent-list label span{display:grid}.consent-list b{font-family:"Kanit";font-size:14px}.consent-list small{font-size:10px;color:#777}.consent-list input{width:20px;height:20px;accent-color:var(--orange)}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.dialog-actions a,.dialog-actions button{height:40px;padding:0 17px;display:inline-flex;align-items:center;border:0;font-family:"Kanit";font-size:12px;cursor:pointer}.btn-lite{background:#eee;color:#333}.btn-save{background:var(--orange);color:#111}.privacy-content{max-height:55vh;overflow:auto;padding-right:8px}.privacy-content p{font-size:13px;color:#555;margin:0 0 13px}.privacy-dialog .dialog-shell{width:min(680px,calc(100vw - 32px))}
.lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:rgba(0,0,0,.94);color:#fff;overflow:hidden}.lightbox::backdrop{background:#000}.lightbox figure{width:100%;height:100%;display:grid;place-items:center;padding:58px 85px}.lightbox img{max-width:100%;max-height:calc(100dvh - 100px);object-fit:contain}.lightbox figcaption{position:absolute;bottom:17px;font-family:"Kanit";font-size:12px;color:#bbb}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;z-index:2;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}.lightbox-close{right:20px;top:17px;width:42px;height:42px;font-size:30px}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:50px;height:70px;font-size:48px;line-height:1}.lightbox-prev{left:18px}.lightbox-next{right:18px}

/* Tablet */
@media (max-width:1100px){
  .desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.header-call{display:none}.brand{min-width:190px}
  .hero-logo{left:57%}.hero-circles{right:-55px;opacity:.8}.hero-copy{left:40px}.hero h1{font-size:64px}
  .footer-grid{grid-template-columns:270px 130px 160px 1fr;gap:25px}.footer-brand img{width:245px;height:245px}.footer-brand::after{width:268px;height:268px}
}
@media (max-width:900px){
  .desktop-nav{display:none}.header-inner{justify-content:space-between}.menu-toggle{display:block}.brand{min-width:0}
  .section{padding:82px 0}.section-heading h2{font-size:44px}
  .hero{height:680px}.hero-logo{width:245px;height:245px;left:auto;right:30px;top:35px;transform:none!important}.hero-logo img{width:225px;height:225px}.hero-circles{right:-100px;top:215px;transform:scale(.85)}.hero-copy{bottom:88px;max-width:570px}.hero h1{font-size:59px}
  .quick-grid{width:calc(100% - 32px)}.quick-card{padding:16px}.quick-icon{flex-basis:39px;height:39px}.quick-card b{font-size:13px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .review-collage{grid-template-columns:1fr 1fr}.review-photo.wide{grid-column:auto}.review-photo.tall{grid-row:span 2}
  .contact-layout{grid-template-columns:1fr}.lead-card{max-width:620px;width:100%;margin:auto}.contact-zone-bg::after{font-size:250px}
  .project-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:240px 1fr 1fr;padding:45px 0}.footer-about{grid-column:2/4}.footer-brand{grid-row:span 2}.footer-bottom{padding:15px 0}
}

/* Mobile */
@media (max-width:640px){
  :root{--header:62px;--radius:18px}.container{width:calc(100% - 28px)}.section{padding:70px 0}.section-heading{margin-bottom:35px}.section-heading h2{font-size:38px}.section-heading p{font-size:13px}.section-heading>span{font-size:10px;letter-spacing:3px}
  .header-inner{width:calc(100% - 22px)}.brand img{width:49px;height:49px}.brand b{font-size:16px}.brand small{font-size:8px;letter-spacing:2.7px}.menu-toggle{width:41px;height:41px}
  .mobile-panel-actions{grid-template-columns:1fr}.mobile-panel{padding-bottom:90px}
  .hero{height:calc(100svh - var(--header));min-height:680px;max-height:780px}.hero-bg{background-image:linear-gradient(180deg,rgba(5,5,5,.24),rgba(5,5,5,.83) 70%),url('./assets/hero-nonthaburi-construction-mobile.webp');background-position:center;background-size:cover}.hero-gridline{background-size:55px 55px;mask-image:linear-gradient(#000,transparent 80%)}
  .hero-logo{width:220px;height:220px;right:auto;left:50%;top:34px;transform:translateX(-50%)!important;background:rgba(0,0,0,.58)}.hero-logo img{width:204px;height:204px}.hero-circles{display:none}.hero-copy{left:22px;right:22px;bottom:68px;text-align:center}.hero-eyebrow{font-size:10px;letter-spacing:3px}.hero h1{font-size:47px;letter-spacing:-.6px}.hero-copy>p:not(.hero-eyebrow){font-size:16px}.hero-actions{justify-content:center;flex-wrap:wrap}.hero-actions .btn{height:48px;padding:0 18px}.hero-caption{display:none}
  .quick-contact{height:auto;background:#fff}.quick-grid{width:calc(100% - 28px);grid-template-columns:1fr;transform:translateY(-29px);gap:9px}.quick-card{height:82px;border-radius:12px;padding:14px 16px}.quick-card small{font-size:10px}.quick-card b{font-size:14px}
  .services{padding-top:43px}.service-grid{grid-template-columns:1fr;gap:47px}.service-card{padding-inline:10px}.service-card.featured{padding:15px 15px 23px;margin:0}.service-image{width:min(100%,350px);margin:auto}.service-copy p{min-height:0}.service-copy h3{font-size:25px}
  .why{padding-top:64px}.why-grid{grid-template-columns:1fr}.why-item{grid-template-columns:63px 1fr;min-height:120px;padding:18px 3px;gap:15px}.why-icon{width:57px;height:57px}.why-item h3{font-size:19px}.stat-strip{grid-template-columns:1fr 1fr;margin-top:38px;padding:17px 10px}.stat-strip div{padding:12px 5px}.stat-strip div:nth-child(2){border-right:0}.stat-strip div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.15)}.stat-strip b{font-size:25px}.stat-strip span{font-size:10px}
  .review-collage{grid-template-columns:1fr;grid-auto-rows:245px;gap:12px}.review-photo.tall{grid-row:span 2}.review-photo.wide{grid-column:auto}.review-quote{padding:25px}.review-quote blockquote{font-size:17px}
  .contact-zone{padding:71px 0 78px}.contact-zone .section-heading h2{font-size:38px}.contact-layout{gap:36px}.faq-item button{font-size:14px;padding:13px 16px}.faq-answer p{padding-left:16px;padding-right:16px}.lead-card{padding:22px 17px}.lead-card-head h2{font-size:25px}.form-row.two{grid-template-columns:1fr}.lead-direct>div{grid-template-columns:1fr 1fr}
  .project-grid{grid-template-columns:1fr;gap:20px}.project-image{height:250px}.project-body h3{min-height:0}.projects{padding-bottom:78px}
  .closing-cta{padding:31px 0}.closing-cta .container{display:grid;text-align:center}.closing-cta h2{font-size:27px}.closing-cta .btn{width:100%}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding:35px 0}.footer-brand{grid-column:1/3;grid-row:auto;height:245px}.footer-brand img{width:235px;height:235px}.footer-brand::after{width:245px;height:245px}.footer-about{grid-column:1/3}.footer-about h2{font-size:27px}.footer-actions{display:grid;grid-template-columns:1fr 1fr}.footer-actions>a{min-width:0}.footer-bottom{display:grid;text-align:center;justify-content:center;gap:7px;padding:16px 0 84px}.footer-bottom div{justify-content:center}
  .floating-actions{display:none}.mobile-dock{position:fixed;z-index:850;bottom:0;left:0;right:0;height:66px;padding-bottom:env(safe-area-inset-bottom);background:#fff;display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 -5px 25px rgba(0,0,0,.12)}.mobile-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:"Kanit";font-size:10px;border-right:1px solid #eee}.mobile-dock a:last-child{border:0;background:var(--orange);color:#111}.mobile-dock svg{width:20px;height:20px;margin-bottom:2px}.mobile-dock a:nth-child(2) svg{color:var(--green)}
  .cookie-banner{right:10px;left:10px;bottom:76px;width:auto;grid-template-columns:36px 1fr;padding:14px;gap:10px}.cookie-icon{width:36px;height:36px;font-size:19px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions button{padding:0 6px}.cookie-settings{grid-column:1/3;grid-row:2}.cookie-banner h2{font-size:16px}
  .toast{right:12px;left:12px;top:74px;max-width:none}.lightbox figure{padding:60px 12px 80px}.lightbox-prev,.lightbox-next{top:auto;bottom:13px;height:44px}.lightbox-prev{left:15px}.lightbox-next{right:15px}.lightbox figcaption{bottom:25px}
}

/* Multipage experience and Thai typography refinement */
html[lang="th"] body{line-break:strict;word-break:normal;overflow-wrap:normal}
:where(h1,h2,h3,h4,p,a,button,label,small,span,li){word-break:normal;overflow-wrap:normal;hyphens:none}
:where(h1,h2,h3,.section-heading p,.page-lead){text-wrap:balance}
:where(.readable-copy p,.page-copy p,.project-body p,.service-copy p,.why-item p){text-wrap:pretty}
.phrase-lock{display:inline-block;white-space:nowrap}
.desktop-nav a[aria-current="page"]::after{right:0}.desktop-nav a[aria-current="page"]{font-weight:500}

.page-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#fbfaf7 0%,#f4efe5 100%);padding:86px 0 78px;border-bottom:1px solid #ebe5d9}.page-hero::before,.page-hero::after,.abstract-section::before,.abstract-section::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(1px);pointer-events:none}.page-hero::before{width:520px;height:520px;left:-280px;top:-250px;background:radial-gradient(circle at 70% 70%,rgba(245,164,0,.2),transparent 68%)}.page-hero::after{width:600px;height:600px;right:-320px;bottom:-360px;border:90px solid rgba(23,23,23,.035)}.page-hero .container{position:relative}.page-kicker{display:block;font-family:"Kanit";font-size:11px;font-weight:500;letter-spacing:4px;color:var(--orange-dark);margin-bottom:14px}.page-hero h1{max-width:980px;font-size:clamp(44px,6.5vw,76px);line-height:1.08;letter-spacing:-1.2px}.page-hero h1 em{font-style:normal;color:var(--orange-dark)}.page-lead{max-width:790px;font-size:18px;color:#5e5b55;margin-top:20px;line-height:1.8}.page-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}.page-actions .btn svg{width:18px;height:18px}.page-proof{display:grid;grid-template-columns:repeat(4,1fr);background:#151515;color:#fff}.page-proof div{min-height:108px;padding:23px 25px;border-right:1px solid rgba(255,255,255,.1);display:grid;align-content:center}.page-proof div:last-child{border:0}.page-proof b{font-family:"Kanit";font-size:22px;color:var(--orange);font-weight:600}.page-proof span{font-size:10px;color:#aaa;margin-top:3px}

.abstract-section{position:relative;isolation:isolate;overflow:hidden}.abstract-section::before{width:380px;height:380px;left:-260px;top:12%;border:60px solid rgba(245,164,0,.07)}.abstract-section::after{width:450px;height:450px;right:-320px;bottom:3%;background:repeating-linear-gradient(45deg,rgba(23,23,23,.035) 0 2px,transparent 2px 17px)}

.home-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-route-card{min-height:230px;background:#fff;border:1px solid #e9e5dc;padding:28px;display:flex;flex-direction:column;position:relative;box-shadow:0 14px 40px rgba(0,0,0,.055);transition:transform .3s,box-shadow .3s}.home-route-card::before{content:"";position:absolute;left:0;top:0;width:5px;height:54px;background:var(--orange)}.home-route-card:hover{transform:translateY(-7px);box-shadow:0 24px 54px rgba(0,0,0,.11)}.home-route-card small{font-family:"Kanit";font-size:10px;letter-spacing:2px;color:var(--orange-dark)}.home-route-card h2{font-size:26px;margin:13px 0 10px}.home-route-card p{font-size:12px;color:#666;line-height:1.75}.home-route-card>span{margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-family:"Kanit";font-size:12px;font-weight:500}.home-route-card svg{width:16px;height:16px;color:var(--orange-dark)}

.credibility-band{background:#151515;color:#fff}.credibility-grid{display:grid;grid-template-columns:1.2fr repeat(4,1fr);align-items:stretch}.credibility-intro{padding:34px 32px;border-right:1px solid rgba(255,255,255,.1);display:grid;align-content:center}.credibility-intro small{color:var(--orange);font-family:"Kanit";letter-spacing:2px}.credibility-intro h2{font-size:25px;margin-top:5px}.credibility-item{padding:27px 22px;border-right:1px solid rgba(255,255,255,.1);display:grid;align-content:center}.credibility-item:last-child{border:0}.credibility-item b{font-family:"Kanit";font-size:24px;color:var(--orange)}.credibility-item span{font-size:10px;color:#a9a9a9;line-height:1.55}.credibility-item a{text-decoration:underline;text-underline-offset:4px;color:#fff}

.company-story-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:70px;align-items:start}.readable-copy{max-width:760px}.readable-copy p{color:#5e5a54;font-size:14px;line-height:1.95;margin-bottom:16px}.readable-copy .story-lead{font-family:"Kanit";font-size:20px;color:#23201c;line-height:1.65}.story-facts{display:grid;gap:12px}.story-fact{background:#151515;color:#fff;padding:25px 26px;border-left:5px solid var(--orange)}.story-fact b{font-family:"Kanit";font-size:18px;color:var(--orange)}.story-fact p{font-size:11px;color:#aaa;margin-top:5px}.company-timeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:58px;border-top:1px solid #ded8cd}.timeline-item{padding:28px 26px 0;position:relative}.timeline-item::before{content:"";position:absolute;top:-7px;left:25px;width:13px;height:13px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px #fff}.timeline-item b{font-family:"Kanit";font-size:25px}.timeline-item h3{font-size:17px;margin:7px 0}.timeline-item p{font-size:11px;color:#68635d}

.download-profile-card{background:linear-gradient(120deg,#151515,#292929);color:#fff;padding:34px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;box-shadow:0 22px 58px rgba(0,0,0,.18)}.download-profile-card small{font-family:"Kanit";letter-spacing:3px;color:var(--orange)}.download-profile-card h2{font-size:31px;margin:5px 0}.download-profile-card p{font-size:12px;color:#aaa}.download-profile-card .btn{white-space:nowrap}.download-profile-card svg{width:20px;height:20px}

.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e7e1d6;margin-top:55px}.process-step{background:#fff;padding:28px;min-height:205px}.process-step>span{font-family:"Kanit";font-size:40px;color:#e3ded5}.process-step h3{font-size:20px;margin:15px 0 8px}.process-step p{font-size:11px;color:#666}.trust-system{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.trust-system article{border:1px solid #e5ded2;background:#fff;padding:23px}.trust-system b{font-family:"Kanit";font-size:17px}.trust-system p{font-size:11px;color:#666;margin-top:6px}

.contact-page-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:54px;align-items:start}.contact-direct-card{background:#151515;color:#fff;padding:34px;position:sticky;top:96px}.contact-direct-card h2{font-size:30px}.contact-direct-card>p{font-size:12px;color:#aaa;margin:10px 0 25px}.contact-methods{display:grid;gap:10px}.contact-method{border:1px solid #363636;padding:15px 17px;display:flex;align-items:center;gap:14px}.contact-method svg{width:24px;height:24px;color:var(--orange)}.contact-method.facebook svg{color:#4592ff}.contact-method span{display:grid}.contact-method small{font-size:9px;color:#888}.contact-method b{font-family:"Kanit";font-size:14px;font-weight:400}.form-disclosure{font-size:9px;color:#777;line-height:1.55;text-align:center;margin-top:11px}.form-disclosure a{text-decoration:underline}.lead-card.page-form{max-width:none;padding:34px}.lead-card.page-form .lead-card-head h2{font-size:31px}

.quick-icon.facebook{background:#1877f2;color:#fff;box-shadow:0 0 0 7px rgba(24,119,242,.11)}
.cookie-simple{grid-template-columns:45px 1fr}.cookie-simple p a{color:#fff;text-decoration:underline}.cookie-simple .cookie-actions{display:flex;justify-content:flex-end}.cookie-simple .cookie-accept{min-width:145px}

.footer-grid{grid-template-columns:220px 1.25fr .62fr .68fr .8fr;gap:26px;min-height:390px}.footer-brand-light::after{display:none}.footer-logo-disc{width:200px;height:200px;border-radius:50%;background:linear-gradient(145deg,#fff,#e9e6df);display:grid;place-items:center;box-shadow:0 20px 55px rgba(0,0,0,.38),0 0 0 8px rgba(245,164,0,.08)}.footer-brand-light img{width:184px;height:184px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}.footer-links,.footer-contact{display:grid;gap:8px;align-content:center}.footer-links h3,.footer-contact h3{font-size:14px;color:var(--orange);margin-bottom:8px}.footer-links a{font-size:11px;color:#aaa}.footer-links a:hover{color:#fff}.footer-contact>a{display:grid;border-bottom:1px solid #292929;padding:8px 0}.footer-contact small{font-size:8px;color:#777}.footer-contact b{font-family:"Kanit";font-size:13px;font-weight:400}.footer-contact p{font-size:9px;color:#777;margin-top:5px}.footer-profile-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:#fff;font-family:"Kanit";font-size:11px;border:1px solid #343434;padding:10px 12px;width:max-content}.footer-profile-link svg{width:17px;height:17px;color:var(--orange)}.footer-bottom a{color:#888}.footer-bottom a:hover{color:#fff}

@media (max-width:1100px){.footer-grid{grid-template-columns:200px 1.2fr .7fr .8fr}.footer-contact{grid-column:2/5}.home-route-grid{grid-template-columns:repeat(2,1fr)}.credibility-grid{grid-template-columns:repeat(4,1fr)}.credibility-intro{grid-column:1/5;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.company-story-grid{gap:42px}}
@media (max-width:900px){.page-proof{grid-template-columns:1fr 1fr}.page-proof div:nth-child(2){border-right:0}.page-proof div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}.company-story-grid,.contact-page-grid{grid-template-columns:1fr}.company-timeline,.process-grid{grid-template-columns:1fr 1fr}.contact-direct-card{position:static}.footer-grid{grid-template-columns:190px 1fr 1fr}.footer-about{grid-column:2/4}.footer-contact{grid-column:2/4}.footer-brand{grid-row:span 2}}
@media (max-width:640px){.phrase-lock{white-space:normal}.page-hero{padding:60px 0 54px}.page-hero h1{font-size:39px;letter-spacing:-.5px}.page-lead{font-size:14px}.page-actions{display:grid;grid-template-columns:1fr}.page-actions .btn{width:100%}.page-proof{grid-template-columns:1fr 1fr}.page-proof div{padding:17px 15px;min-height:92px}.page-proof b{font-size:18px}.home-route-grid,.trust-system{grid-template-columns:1fr}.home-route-card{min-height:205px}.credibility-grid{grid-template-columns:1fr 1fr}.credibility-intro{grid-column:1/3}.credibility-item:nth-child(odd){border-right:0}.company-timeline,.process-grid{grid-template-columns:1fr}.timeline-item{padding-left:15px}.download-profile-card{grid-template-columns:1fr;padding:27px 22px}.download-profile-card h2{font-size:25px}.download-profile-card .btn{width:100%}.contact-page-grid{gap:28px}.contact-direct-card,.lead-card.page-form{padding:24px 18px}.lead-card.page-form .lead-card-head h2{font-size:26px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px}.footer-brand{grid-column:1/3;grid-row:auto;min-height:230px}.footer-about{grid-column:1/3}.footer-contact{grid-column:1/3}.footer-logo-disc{width:190px;height:190px}.footer-logo-disc img{width:176px;height:176px}.cookie-simple{grid-template-columns:36px 1fr}.cookie-simple .cookie-actions{display:block}.cookie-simple .cookie-accept{width:100%}}
@media (max-width:380px){.hero h1{font-size:41px}.hero-logo{width:194px;height:194px}.hero-logo img{width:180px;height:180px}.hero{min-height:640px}.quick-card b{font-size:13px}.project-image{height:225px}.footer-actions{grid-template-columns:1fr}}

/* 2026 credibility, motion and conversion pass */
h1,h2,h3,.btn,.quick-card b,.project-body h3{text-wrap:balance}
.hero-bg{background-image:linear-gradient(90deg,rgba(5,5,5,.91) 0%,rgba(5,5,5,.7) 48%,rgba(5,5,5,.34) 100%),url('./assets/hero-nonthaburi-construction.webp')}
.hero-engineer{position:absolute;z-index:3;right:max(3%,calc((100% - 1320px)/2));bottom:-98px;width:min(39vw,530px);height:700px;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;filter:drop-shadow(0 24px 26px rgba(0,0,0,.45))}
.hero-engineer img{height:100%;width:auto;max-width:none;object-fit:contain;object-position:center bottom;animation:engineerEnter 1s cubic-bezier(.2,.8,.2,1) both}
.hero-copy{max-width:690px}
.hero-copy>p:not(.hero-eyebrow){max-width:560px}
.hero-trust{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}.hero-trust span{display:flex;align-items:center;gap:6px;font-size:11px;color:#e8e8e8}.hero-trust svg{width:16px;height:16px;color:var(--orange)}
@keyframes engineerEnter{from{opacity:0;transform:translateX(70px) scale(.96)}to{opacity:1;transform:none}}

.about-company{position:relative;background:#f7f4ee;overflow:hidden}.about-company::before{content:"40";position:absolute;right:-45px;top:-115px;font:800 410px/1 "Kanit";color:rgba(245,164,0,.065);pointer-events:none}.about-company-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:70px;align-items:center}.about-company .section-heading{margin-bottom:24px}.about-company .section-heading h2{font-size:clamp(38px,4vw,56px);line-height:1.12}.about-company-copy{position:relative;z-index:1}.about-company-copy>p{color:#5e5b56;font-size:14px;line-height:1.9;margin:0 0 15px}.about-company-copy .about-lead{font-family:"Kanit";font-size:18px;line-height:1.65;color:#27231e}.about-company-copy .about-lead strong{color:#b96f00;font-weight:500}.about-points{display:grid;gap:9px;margin:22px 0 25px}.about-points span{display:flex;align-items:flex-start;gap:9px;color:#3e3a34;font-size:12px}.about-points svg{width:17px;height:17px;color:#13844c;flex:0 0 auto;margin-top:2px}.about-stats{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;background:#151515;color:#fff;box-shadow:0 28px 70px rgba(0,0,0,.22)}.about-stats article{min-height:205px;padding:34px 30px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.about-stats article:nth-child(2n){border-right:0}.about-stats article:nth-child(n+3){border-bottom:0}.about-stats article::after{content:"";position:absolute;left:0;top:0;width:46px;height:5px;background:var(--orange);transition:width .35s}.about-stats article:hover::after{width:100%}.about-stats strong{font-family:"Kanit";font-size:48px;line-height:1;color:var(--orange);letter-spacing:-1px}.about-stats strong sup{font-size:24px}.about-stats span{font-family:"Kanit";font-size:11px;letter-spacing:1.2px;color:#d8d8d8;margin-top:8px}.about-stats p{font-size:11px;color:#8f8f8f;margin-top:8px;line-height:1.55}.about-stats article:nth-child(3) strong,.about-stats article:nth-child(4) strong{font-size:27px;letter-spacing:0}

.quick-grid{width:min(900px,calc(100% - 40px));gap:14px}
.quick-card{height:112px;border-radius:16px;padding:20px 21px;position:relative;overflow:hidden;border:1px solid #ececec;box-shadow:0 18px 50px rgba(19,19,19,.14);isolation:isolate}
.quick-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--orange),#ffc64a);transform:scaleX(.28);transform-origin:left;transition:transform .35s ease}
.quick-card::after{content:"";position:absolute;z-index:-1;width:90px;height:220%;left:-125px;top:-60%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);transform:rotate(16deg);transition:left .65s ease}
.quick-card:hover{transform:translateY(-7px);box-shadow:0 24px 62px rgba(19,19,19,.19)}.quick-card:hover::before{transform:scaleX(1)}.quick-card:hover::after{left:115%}
.quick-icon{flex-basis:48px;height:48px;box-shadow:0 0 0 7px rgba(245,164,0,.11)}.quick-icon.line{box-shadow:0 0 0 7px rgba(6,199,85,.1)}
.quick-card small{font-size:11px;white-space:nowrap}.quick-card b{font-size:clamp(13px,1.15vw,16px)}.quick-arrow{transition:transform .25s}.quick-card:hover .quick-arrow{transform:translateX(4px)}

.btn,.submit-btn,.project-body>a{position:relative;overflow:hidden;isolation:isolate}.btn::after,.submit-btn::after{content:"";position:absolute;z-index:-1;inset:-60% auto -60% -70%;width:45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-18deg);transition:left .65s ease}.btn:hover::after,.submit-btn:hover::after{left:130%}
.btn:active,.submit-btn:active{transform:translateY(1px) scale(.985)}

.service-card{padding:0 14px;transition:transform .35s ease}.service-card:hover{transform:translateY(-8px)}
.service-image{box-shadow:0 18px 42px rgba(0,0,0,.13)}.service-image::before{content:"";position:absolute;z-index:2;inset:0;border-radius:50%;border:1px solid rgba(255,255,255,.55)}
.service-copy h3{min-height:34px}.service-copy p{min-height:46px}

.review-disclosure{max-width:780px;margin:-25px auto 34px;border:1px solid #e3e8ee;background:#f8fafc;padding:12px 16px;display:flex;align-items:flex-start;gap:10px;color:#657080;font-size:11px}.review-disclosure svg{width:19px;height:19px;fill:none;color:#2773d1;flex:0 0 auto}.review-disclosure span{line-height:1.55}.review-disclosure b{color:#293544}
.review-platforms{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.review-summary{min-height:112px;border:1px solid #e4e7eb;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.06);display:flex;align-items:center;gap:18px;padding:20px 25px}.review-summary>div{display:grid;gap:3px}.review-summary b{font-family:"Kanit";font-size:18px;font-weight:500}.review-summary small{font-size:10px;color:#89919b}.platform-logo{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-family:Arial,sans-serif;font-weight:800;font-size:28px;flex:0 0 auto}.google-logo{background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0);color:#fff;box-shadow:inset 0 0 0 8px #fff}.facebook-logo{background:#1877f2;color:#fff}.review-summary .stars{gap:2px}.review-summary .stars svg{width:15px;height:15px}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{min-height:265px;border:1px solid #e4e7eb;border-radius:8px;background:#fff;padding:22px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(0,0,0,.055);transition:transform .28s,box-shadow .28s}.review-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(0,0,0,.1)}.review-card header{display:grid;grid-template-columns:44px 1fr 28px;gap:11px;align-items:center}.review-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:"Kanit";font-size:17px}.avatar-orange{background:#ed7d31}.avatar-blue{background:#3977d7}.avatar-green{background:#3f9873}.avatar-purple{background:#805bb5}.avatar-red{background:#c75955}.avatar-navy{background:#34506f}.review-card header div{display:grid}.review-card header b{font-family:"Kanit";font-size:14px;font-weight:500}.review-card header small{font-size:9px;color:#8a929d}.source-mini{width:28px;height:28px;font-size:15px;box-shadow:inset 0 0 0 4px #fff}.review-card>.stars{margin:17px 0 7px}.review-card>.stars svg{width:15px;height:15px}.review-card>.recommend-mark{margin:17px 0 7px}.review-card p{font-size:13px;color:#4f5965;line-height:1.75;flex:1}.review-card footer{display:flex;justify-content:space-between;border-top:1px solid #edf0f2;margin-top:18px;padding-top:11px;color:#8a929d;font-size:10px}.recommend-mark{display:flex;align-items:center;gap:6px;color:#1877f2;font-family:"Kanit";font-size:12px;font-weight:500}.recommend-mark svg{width:17px;height:17px;color:#fff;background:#1877f2;border-radius:50%;padding:3px}

.lead-card{border-radius:4px;border-top:6px solid #171717}.lead-benefits{display:flex;gap:9px;flex-wrap:wrap;margin:-9px 0 17px}.lead-benefits span{display:flex;align-items:center;gap:3px;font-size:9px;color:#6b747c}.lead-benefits svg{width:13px;height:13px;color:#148848}
.optional-fields{border:1px dashed #d7d7d7;margin:4px 0 10px;background:#fbfbfb}.optional-fields summary{cursor:pointer;padding:10px 12px;font-size:11px;color:#6e6e6e;list-style:none;display:flex;align-items:center;justify-content:space-between}.optional-fields summary::after{content:"+";font-size:18px;color:var(--orange-dark)}.optional-fields[open] summary::after{content:"−"}.optional-content{border-top:1px dashed #ddd;padding:12px 12px 1px}.submit-btn{border-radius:3px;background:linear-gradient(90deg,#151515,#2c2c2c);box-shadow:0 12px 28px rgba(0,0,0,.2);transition:transform .2s,box-shadow .2s}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(0,0,0,.25)}

.project-image{display:block;cursor:pointer}.project-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.project-facts span{background:#f3f3f1;border-left:2px solid var(--orange);padding:4px 7px;font-family:"Kanit";font-size:9px;color:#525252}.project-body h3{min-height:50px}.project-body>a svg{transition:transform .25s}.project-body>a:hover svg{transform:translateX(5px)}
.legal-company{border-left:3px solid var(--orange);padding-left:10px;margin-top:14px!important;color:#cfcfcf!important}.legal-company b{font-family:"Kanit";font-size:13px;font-weight:400;color:#fff}

@media (max-width:1100px){.hero-engineer{right:-10px;width:440px;height:630px}.hero-copy{max-width:610px}.quick-grid{width:min(820px,calc(100% - 34px))}}
@media (max-width:900px){.hero-engineer{right:-70px;width:400px;height:590px;opacity:.9}.hero-copy{max-width:540px}.about-company-grid{grid-template-columns:1fr;gap:42px}.about-company-copy{max-width:720px}.review-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){
  .hero{min-height:730px;max-height:830px}.hero-bg{background-image:linear-gradient(180deg,rgba(5,5,5,.25),rgba(5,5,5,.94) 72%),url('./assets/hero-nonthaburi-construction-mobile.webp')}.hero-engineer{top:15px;right:-50px;bottom:auto;width:340px;height:500px;opacity:.9}.hero-copy{bottom:68px;z-index:5}.hero h1{font-size:40px;line-height:1.12}.hero-copy>p:not(.hero-eyebrow){font-size:13px;line-height:1.55}.hero-trust{justify-content:center;gap:7px 10px;margin-top:11px}.hero-trust span{font-size:8px}.hero-actions{margin-top:15px}
  .about-company::before{font-size:250px;top:-50px}.about-company-grid{gap:32px}.about-company .section-heading h2{font-size:34px}.about-company-copy .about-lead{font-size:16px}.about-company-copy>p{font-size:13px}.about-stats{grid-template-columns:1fr}.about-stats article{min-height:145px;padding:25px 24px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)!important}.about-stats article:last-child{border-bottom:0!important}.about-stats strong{font-size:42px}.about-stats article:nth-child(3) strong,.about-stats article:nth-child(4) strong{font-size:25px}
  .quick-grid{width:calc(100% - 22px)}.quick-card{height:85px;padding:14px 16px}.quick-card::before{height:3px}.quick-card small{font-size:10px}.quick-card b{font-size:14px}.quick-icon{flex-basis:42px;height:42px;box-shadow:0 0 0 5px rgba(245,164,0,.1)}
  .service-copy h3{min-height:0}.service-copy p{min-height:0}
  .review-disclosure{margin-top:-14px}.review-platforms,.review-grid{grid-template-columns:1fr}.review-summary{min-height:94px}.review-card{min-height:235px}.review-card p{font-size:12px}
  .lead-benefits{gap:6px}.lead-benefits span{font-size:8px}.project-body h3{min-height:0}
}

/* Homepage v7: separated floating cards, complete overview and booking. */
.quick-contact{height:100px;background:#f7f4ee}
.quick-grid{transform:translateY(-34px)}
.credibility-band{position:relative;z-index:2}
.credibility-item b{font-size:clamp(18px,1.45vw,24px);white-space:nowrap}

.home-story{background:#f7f4ee}.home-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.86fr);gap:68px;align-items:center}.home-story .section-heading{margin-bottom:24px}.home-story .section-heading h2{font-size:clamp(38px,4.2vw,58px);line-height:1.12}.home-story .section-heading em{color:var(--orange-dark);font-style:normal}.home-story-copy>p{max-width:720px;color:#615d56;font-size:14px;line-height:1.9;margin-bottom:14px}.home-story-copy .story-lead{font-family:"Kanit";font-size:19px;color:#25211c;line-height:1.65}.story-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:27px}.company-verify-link{min-height:48px;display:inline-flex;align-items:center;gap:9px;border-bottom:1px solid #222;font-family:"Kanit";font-size:12px;font-weight:500}.company-verify-link svg,.split-heading>a svg,.center-link svg{width:16px;height:16px;color:var(--orange-dark)}.home-story-media{position:relative;min-height:520px;margin:0;overflow:hidden;background:#222;box-shadow:0 28px 70px rgba(0,0,0,.2)}.home-story-media::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(0,0,0,.88))}.home-story-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-story-media figcaption{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;display:grid;gap:5px;color:#fff}.home-story-media small{font-size:9px;letter-spacing:2px;color:var(--orange)}.home-story-media a{font-family:"Kanit";font-size:18px;line-height:1.35;text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:5px}

.split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.split-heading>div>span{display:block;font-family:"Kanit";font-size:12px;font-weight:600;letter-spacing:4px;color:var(--orange);margin-bottom:8px}.split-heading>div>h2{font-size:52px;line-height:1.17}.split-heading>a{display:inline-flex;align-items:center;gap:9px;padding-bottom:8px;border-bottom:1px solid #222;font-family:"Kanit";font-size:12px;white-space:nowrap}
.home-services{background:#fff}.home-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-service-card{min-width:0;display:grid;grid-template-columns:125px 1fr;min-height:150px;background:#f8f7f3;border:1px solid #e7e3da;overflow:hidden;transition:transform .3s,box-shadow .3s}.home-service-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(0,0,0,.1)}.home-service-card>img{width:100%;height:100%;object-fit:cover}.home-service-card>span{display:flex;flex-direction:column;justify-content:center;padding:18px;min-width:0}.home-service-card small{font-family:"Kanit";font-size:10px;color:var(--orange-dark);letter-spacing:2px}.home-service-card b{font-family:"Kanit";font-size:18px;margin:5px 0}.home-service-card em{font-style:normal;color:#69645d;font-size:10px;line-height:1.6}

.home-projects{background:#f7f4ee}.home-projects .project-card{background:#fff}.home-projects .project-image{height:230px}.home-projects .project-body{padding:22px}.home-projects .project-body h3{font-size:20px;min-height:48px}

.home-standard{background:#fff}.home-standard-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #e6e1d8}.home-standard-grid article{min-height:220px;padding:29px 25px;border-right:1px solid #e6e1d8;position:relative}.home-standard-grid article:last-child{border-right:0}.home-standard-grid article::before{content:"";position:absolute;left:0;top:0;width:48px;height:5px;background:var(--orange);transition:width .3s}.home-standard-grid article:hover::before{width:100%}.home-standard-grid svg{width:35px;height:35px;color:#1b1b1b;margin-bottom:27px}.home-standard-grid h3{font-size:19px;margin-bottom:9px}.home-standard-grid p{font-size:11px;color:#68635d;line-height:1.7}.center-link{text-align:center;margin-top:30px}.center-link a{display:inline-flex;align-items:center;gap:9px;font-family:"Kanit";font-size:12px;border-bottom:1px solid #222;padding-bottom:7px}

.home-review-band{background:#151515;color:#fff;padding:48px 0}.home-review-band .container{display:flex;align-items:center;justify-content:space-between;gap:40px}.home-review-band span{font-family:"Kanit";font-size:10px;letter-spacing:3px;color:var(--orange)}.home-review-band h2{font-size:30px;margin:5px 0}.home-review-band p{font-size:11px;color:#999}.home-review-actions{display:flex;gap:10px}.home-review-actions>a{min-width:160px;height:56px;padding:0 18px;display:flex;align-items:center;gap:11px;background:#fff;color:#151515;font-family:"Kanit";font-size:12px}.platform-dot{width:31px;height:31px;border-radius:50%;display:grid!important;place-items:center;color:#fff!important;font-family:Arial,sans-serif!important;font-size:17px!important;letter-spacing:0!important}.google-dot{background:linear-gradient(135deg,#4285f4,#34a853)}.facebook-dot{background:#1877f2}

.home-booking{background:#f7f4ee}.booking-shell{display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);gap:65px;align-items:center}.booking-copy>span{font-family:"Kanit";font-size:11px;letter-spacing:3px;color:var(--orange-dark)}.booking-copy h2{font-size:clamp(38px,4vw,54px);margin:8px 0 17px;line-height:1.14}.booking-copy>p{font-size:13px;color:#68635d;line-height:1.8}.booking-copy ul{display:grid;gap:9px;margin:24px 0}.booking-copy li{display:flex;align-items:center;gap:8px;font-family:"Kanit";font-size:12px}.booking-copy li svg{width:17px;height:17px;color:#148848}.booking-copy>a{font-size:10px;color:#6b655e}.booking-copy>a b{color:#1f1c18;text-decoration:underline;text-underline-offset:4px}.booking-form{background:#fff;border-top:6px solid var(--orange);padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.12)}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form .form-row{margin:0}.booking-form .submit-btn{margin-top:19px}.booking-form .form-status{text-align:center}
.legal-company a{color:#fff;text-decoration:underline;text-decoration-color:rgba(245,164,0,.62);text-underline-offset:4px}.legal-company a:hover{color:var(--orange)}

@media (max-width:1100px){.home-story-grid{gap:42px}.home-service-grid{grid-template-columns:repeat(2,1fr)}.home-standard-grid{grid-template-columns:1fr 1fr}.home-standard-grid article:nth-child(2){border-right:0}.home-standard-grid article:nth-child(-n+2){border-bottom:1px solid #e6e1d8}.booking-shell{grid-template-columns:1fr;gap:40px}.booking-copy{max-width:760px}}
@media (max-width:900px){.home-story-grid{grid-template-columns:1fr}.home-story-media{min-height:440px}.split-heading>div>h2{font-size:44px}.home-review-band .container{align-items:flex-start;flex-direction:column}.home-review-actions{width:100%}.home-review-actions>a{flex:1}.credibility-item b{white-space:normal}}
@media (max-width:640px){.quick-contact{height:auto;padding-bottom:12px}.quick-grid{transform:translateY(-22px)}.credibility-band{margin-top:0}.credibility-intro{padding:25px 18px}.credibility-intro h2{font-size:22px}.credibility-item{padding:20px 15px;min-height:94px}.credibility-item b{font-size:17px}.home-story .section-heading h2{font-size:34px}.home-story-copy .story-lead{font-size:16px}.home-story-copy>p{font-size:13px}.story-actions{display:grid;gap:10px}.story-actions .btn{width:100%}.company-verify-link{justify-content:center}.home-story-media{min-height:360px}.home-story-media figcaption{left:19px;right:19px;bottom:18px}.home-story-media a{font-size:15px}.split-heading{align-items:flex-start;flex-direction:column;margin-bottom:36px}.split-heading>div>h2{font-size:35px}.split-heading>a{white-space:normal}.home-service-grid{grid-template-columns:1fr}.home-service-card{grid-template-columns:112px 1fr;min-height:138px}.home-projects .project-image{height:240px}.home-standard-grid{grid-template-columns:1fr}.home-standard-grid article{min-height:170px;border-right:0;border-bottom:1px solid #e6e1d8!important}.home-standard-grid article:last-child{border-bottom:0!important}.home-standard-grid svg{margin-bottom:18px}.home-review-band{padding:38px 0}.home-review-band h2{font-size:25px}.home-review-actions{display:grid}.home-review-actions>a{width:100%}.booking-shell{gap:30px}.booking-copy h2{font-size:35px}.booking-form{padding:25px 18px}.booking-form-grid{grid-template-columns:1fr}}

/* Homepage v8: kinetic slider, richer section identities and clear project values. */
.home-story-grid{grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);gap:54px}.home-story .section-heading h2{font-size:clamp(34px,3.55vw,50px);max-width:590px}.home-story.abstract-section::before{width:480px;height:480px;left:-330px;top:4%;border:0;background:repeating-radial-gradient(circle,rgba(245,164,0,.11) 0 2px,transparent 2px 19px);transform:rotate(12deg)}.home-story.abstract-section::after{width:280px;height:280px;right:32%;bottom:-220px;border:70px solid rgba(74,110,255,.055);background:none}
.story-slider{position:relative;height:520px;min-width:0;overflow:hidden;border-radius:28px;background:#111;box-shadow:0 30px 75px rgba(0,0,0,.24);isolation:isolate}.story-slider::before{content:"";position:absolute;z-index:4;inset:0;border:1px solid rgba(255,255,255,.22);border-radius:inherit;pointer-events:none}.story-slider-track{height:100%;display:flex;transition:transform .7s cubic-bezier(.2,.78,.2,1);will-change:transform}.story-slide{position:relative;flex:0 0 100%;height:100%;margin:0;overflow:hidden}.story-slide::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.88))}.story-slide::after{content:"NGE - NEXTGENENGINEERING";position:absolute;z-index:2;right:22px;top:22px;color:rgba(255,255,255,.42);font:500 9px/1 "Kanit";letter-spacing:2.3px;text-shadow:0 1px 8px rgba(0,0,0,.55);pointer-events:none}.story-slide img{width:100%;height:100%;object-fit:cover;transition:transform 5s ease}.story-slide[aria-hidden="false"] img{transform:scale(1.045)}.story-slide figcaption{position:absolute;z-index:3;left:28px;right:90px;bottom:30px;display:grid;gap:4px;color:#fff}.story-slide figcaption small{font-family:"Kanit";font-size:9px;letter-spacing:3px;color:var(--orange)}.story-slide figcaption b{font-family:"Kanit";font-size:20px;font-weight:500;text-wrap:balance}.story-slider-prev,.story-slider-next{position:absolute;z-index:6;right:21px;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(12,12,12,.55);backdrop-filter:blur(10px);color:#fff;font-size:28px;cursor:pointer;transition:.25s}.story-slider-prev{bottom:73px}.story-slider-next{bottom:22px}.story-slider-prev:hover,.story-slider-next:hover{background:var(--orange);color:#111;border-color:var(--orange)}.story-slider-dots{position:absolute;z-index:6;left:28px;top:24px;display:flex;gap:7px}.story-slider-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer;transition:.3s}.story-slider-dots button[aria-current="true"]{width:28px;border-radius:8px;background:var(--orange)}.story-slider-progress{position:absolute;z-index:6;left:28px;right:84px;bottom:17px;height:2px;background:rgba(255,255,255,.22);overflow:hidden}.story-slider-progress i{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--orange),#ffd470);transform-origin:left;transform:scaleX(0)}.story-slider.is-running .story-slider-progress i{animation:storyProgress 4s linear forwards}@keyframes storyProgress{to{transform:scaleX(1)}}

.project-value{display:grid;gap:2px;margin:15px 0 6px;padding:11px 12px;background:linear-gradient(135deg,#171717,#282828);border-left:3px solid var(--orange);color:#fff}.project-value small{font-family:"Mitr";font-size:8px!important;color:#8f8f8f!important}.project-value b{font-family:"Kanit";font-size:14px;font-weight:500;color:var(--orange)}.project-value-note{margin-top:20px;font-size:9px;color:#777}.home-projects .project-body>a{margin-top:13px}

.project-image::before{content:"NGE - NEXTGENENGINEERING";position:absolute;z-index:1;left:50%;bottom:11px;transform:translateX(-50%);width:max-content;color:rgba(255,255,255,.42);font:500 8px/1 "Kanit";letter-spacing:1.7px;text-shadow:0 1px 7px rgba(0,0,0,.78);pointer-events:none}.project-image span{z-index:3}

.home-projects.abstract-section::before{width:620px;height:620px;left:-450px;top:18%;border:0;background:conic-gradient(from 90deg,transparent 0 15%,rgba(245,164,0,.08) 15% 18%,transparent 18% 48%,rgba(74,110,255,.065) 48% 51%,transparent 51%);transform:rotate(20deg)}.home-projects.abstract-section::after{width:520px;height:520px;right:-360px;bottom:5%;border-radius:80px;background:repeating-linear-gradient(135deg,rgba(23,23,23,.035) 0 1px,transparent 1px 13px);transform:rotate(15deg)}
.home-booking.abstract-section::before{width:560px;height:560px;left:-310px;top:-250px;border:0;background:radial-gradient(circle at center,rgba(74,110,255,.13),transparent 68%)}.home-booking.abstract-section::after{width:470px;height:470px;right:-250px;bottom:-260px;border:0;border-radius:0;background-image:linear-gradient(rgba(245,164,0,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(245,164,0,.07) 1px,transparent 1px);background-size:24px 24px;transform:rotate(-12deg)}

.home-review-band{position:relative;padding:70px 0;overflow:hidden;background:radial-gradient(circle at 82% 10%,rgba(71,108,255,.2),transparent 32%),radial-gradient(circle at 8% 90%,rgba(245,164,0,.18),transparent 28%),#0e0f13}.home-review-band::before{content:"";position:absolute;left:7%;top:0;width:1px;height:100%;background:linear-gradient(transparent,rgba(255,255,255,.22),transparent)}.home-review-band::after{content:"SOCIAL PROOF";position:absolute;right:-34px;bottom:-16px;color:rgba(255,255,255,.035);font:800 94px/1 "Kanit";letter-spacing:2px;pointer-events:none}.home-review-band .container{position:relative;z-index:1;padding:34px 38px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(255,255,255,.045);backdrop-filter:blur(16px);box-shadow:0 25px 70px rgba(0,0,0,.26)}.home-review-band h2{font-size:clamp(28px,3vw,40px);max-width:650px}.home-review-band p{font-size:12px;color:#a8abb6}.home-review-actions>a{min-width:178px;height:66px;border-radius:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:.28s}.home-review-actions>a:hover{transform:translateY(-5px);background:#fff;color:#111}.home-review-actions .platform-dot{box-shadow:0 0 0 6px rgba(255,255,255,.07)}

@media (max-width:1100px){.home-story-grid{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:40px}.home-story .section-heading h2{font-size:42px}.story-slider{height:490px}}
@media (max-width:900px){.home-story-grid{grid-template-columns:1fr}.home-story .section-heading h2{font-size:46px}.story-slider{height:480px}.home-review-band .container{padding:30px}}
@media (max-width:640px){.home-story .section-heading h2{font-size:34px}.story-slider{height:420px;border-radius:20px}.story-slide figcaption{left:20px;right:70px;bottom:27px}.story-slide figcaption b{font-size:17px}.story-slide::after{right:16px;top:54px;font-size:7px;letter-spacing:1.5px}.story-slider-dots{left:20px;top:20px}.story-slider-prev,.story-slider-next{right:15px;width:39px;height:39px}.story-slider-prev{bottom:66px}.story-slider-next{bottom:20px}.story-slider-progress{left:20px;right:68px}.home-review-band{padding:48px 0}.home-review-band .container{padding:26px 20px;border-radius:20px}.home-review-band::after{font-size:54px}.home-review-actions>a{height:58px;min-width:0}.project-value b{font-size:13px}}
@media (prefers-reduced-motion:reduce){.story-slider-track,.story-slide img{transition:none}.story-slider.is-running .story-slider-progress i{animation:none}}

/* Subpage hero v9: distinct editorial imagery, identity-locked engineer and brand artwork. */
.page-hero-rich{padding:46px 0 0;min-height:610px;display:grid;align-items:end;background:#f8f5ee}.page-hero-rich .page-hero-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(410px,.94fr);gap:44px;align-items:center;min-height:560px}.page-hero-copy{min-width:0;position:relative;z-index:3;padding:54px 0 72px}.page-hero-rich h1{font-size:clamp(41px,4.65vw,66px);max-width:760px;line-height:1.07;text-wrap:balance}.page-hero-rich .page-lead{max-width:660px;font-size:16px}.page-hero-rich::before,.page-hero-rich::after{filter:none}.page-hero-visual{position:relative;align-self:stretch;min-height:560px;isolation:isolate;overflow:hidden}.page-hero-visual img{display:block}.page-hero-rich .page-hero-visual.reveal{transform:translateY(18px) scale(.98)}.page-hero-rich .page-hero-visual.reveal.visible{transform:none}

.about-hero{background:linear-gradient(125deg,#fffaf0,#f2ede3)}.about-hero::before{width:460px;height:460px;left:-310px;top:-210px;background:repeating-radial-gradient(circle,rgba(245,164,0,.2) 0 2px,transparent 2px 21px)}.about-hero::after{width:620px;height:620px;right:-390px;bottom:-420px;border:100px solid rgba(19,19,19,.035)}.visual-about{overflow:visible}.visual-about .visual-backdrop{position:absolute;z-index:-2;inset:66px 0 18px 42px;width:calc(100% - 42px);height:calc(100% - 84px);object-fit:cover;border-radius:52% 48% 12% 12%/26% 27% 8% 8%;filter:saturate(.92) contrast(1.02);box-shadow:0 28px 60px rgba(0,0,0,.18)}.visual-about::before{content:"";position:absolute;z-index:-1;inset:66px 0 18px 42px;border-radius:52% 48% 12% 12%/26% 27% 8% 8%;background:linear-gradient(90deg,rgba(17,17,17,.25),transparent 60%)}.visual-about .visual-house{position:absolute;z-index:1;width:190px;height:126px;left:5px;bottom:52px;object-fit:cover;border:7px solid #fff;border-radius:18px;box-shadow:0 20px 42px rgba(0,0,0,.23);animation:houseFloat 5.4s ease-in-out infinite}.visual-sun{position:absolute;z-index:-3;width:260px;height:260px;right:-42px;top:8px;border-radius:50%;background:linear-gradient(135deg,#ffc33d,#f28b00);filter:blur(.2px);animation:sunPulse 6s ease-in-out infinite}.visual-engineer{position:absolute;z-index:2;height:98%;width:auto;right:2%;bottom:-1px;filter:drop-shadow(0 22px 25px rgba(0,0,0,.27));animation:engineerFloat 5.8s ease-in-out infinite}.visual-tag{position:absolute;z-index:4;right:18px;bottom:24px;padding:10px 15px;border-radius:999px;background:rgba(17,17,17,.82);backdrop-filter:blur(10px);color:#fff;font:600 9px/1 "Kanit";letter-spacing:2px;box-shadow:0 10px 28px rgba(0,0,0,.22)}

.services-hero{background:linear-gradient(135deg,#f8f6f1,#fff)}.services-hero::before{width:650px;height:650px;left:auto;right:-430px;top:-360px;border:0;background-image:linear-gradient(rgba(245,164,0,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(245,164,0,.09) 1px,transparent 1px);background-size:25px 25px;transform:rotate(12deg)}.services-hero::after{width:340px;height:340px;left:-250px;right:auto;bottom:-160px;border:70px solid rgba(245,164,0,.08)}.visual-services{overflow:visible}.service-visual-card{position:absolute;margin:0;overflow:hidden;border:8px solid #fff;border-radius:24px;box-shadow:0 25px 55px rgba(0,0,0,.19);background:#111}.service-visual-card img{width:100%;height:100%;object-fit:cover}.service-card-a{z-index:2;width:64%;height:58%;right:4%;top:8%;transform:rotate(4deg);animation:cardFloatA 5.2s ease-in-out infinite}.service-card-b{z-index:3;width:52%;height:48%;left:0;bottom:5%;transform:rotate(-6deg);animation:cardFloatB 5.8s ease-in-out infinite}.service-card-c{z-index:4;width:39%;height:38%;right:0;bottom:2%;transform:rotate(7deg);animation:cardFloatC 6.3s ease-in-out infinite}.service-orbit{position:absolute;z-index:1;width:410px;height:410px;left:50%;top:50%;transform:translate(-50%,-50%);border:2px dashed rgba(245,164,0,.42);border-radius:50%;animation:orbitRotate 20s linear infinite}

.why-hero{background:linear-gradient(120deg,#f7f8f7,#eef1ee)}.why-hero::before{width:590px;height:590px;left:-360px;top:-300px;border:0;background:repeating-linear-gradient(135deg,rgba(21,86,57,.07) 0 2px,transparent 2px 16px);transform:none}.why-hero::after{width:280px;height:280px;right:2%;bottom:-170px;border:70px solid rgba(25,148,87,.06)}.visual-quality{margin:34px 0 32px;border-radius:34px 8px 34px 8px;box-shadow:0 28px 65px rgba(0,0,0,.22)}.visual-quality>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.visual-quality::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.45),transparent 64%)}.quality-grid{position:absolute;z-index:2;inset:0;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:42px 42px;mix-blend-mode:screen}.quality-scan{position:absolute;z-index:3;left:0;right:0;top:8%;height:3px;background:linear-gradient(90deg,transparent,#28f598,transparent);box-shadow:0 0 18px #28f598;animation:qualityScan 4.2s ease-in-out infinite}.quality-badge{position:absolute;z-index:4;right:25px;bottom:25px;width:72px;height:72px;border-radius:24px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);display:grid;place-items:center;box-shadow:0 16px 32px rgba(0,0,0,.2)}.quality-badge svg{width:36px;height:36px;color:#159457}

.projects-hero{background:linear-gradient(135deg,#fbf8f1,#f2eee5)}.projects-hero::before{width:600px;height:600px;left:auto;right:-400px;top:-280px;border:0;background:conic-gradient(from 45deg,rgba(245,164,0,.16),transparent 23% 47%,rgba(42,104,255,.09) 48% 51%,transparent 52%)}.projects-hero::after{width:420px;height:420px;right:auto;left:-320px;bottom:-240px;border:0;background:repeating-radial-gradient(circle,rgba(22,22,22,.045) 0 2px,transparent 2px 18px)}.visual-projects{overflow:visible}.project-visual-card{position:absolute;margin:0;overflow:hidden;border:7px solid #fff;border-radius:18px;background:#111;box-shadow:0 24px 55px rgba(0,0,0,.21)}.project-visual-card img{width:100%;height:100%;object-fit:cover}.project-visual-a{z-index:1;width:61%;height:58%;left:2%;top:8%;transform:rotate(-6deg);animation:projectCardA 7s ease-in-out infinite}.project-visual-b{z-index:3;width:62%;height:58%;right:0;top:23%;transform:rotate(5deg);animation:projectCardB 7s ease-in-out infinite}.project-visual-c{z-index:2;width:56%;height:50%;left:10%;bottom:2%;transform:rotate(-2deg);animation:projectCardC 7s ease-in-out infinite}.project-visual-counter{position:absolute;z-index:5;right:-12px;bottom:0;font:800 110px/.8 "Kanit";color:rgba(245,164,0,.84);text-shadow:0 12px 35px rgba(0,0,0,.14)}

.reviews-hero{background:linear-gradient(125deg,#f5f8ff,#fff9ef)}.reviews-hero::before{width:550px;height:550px;right:-390px;left:auto;top:-260px;border:0;background:radial-gradient(circle,rgba(66,133,244,.16) 0 5px,transparent 6px);background-size:28px 28px}.reviews-hero::after{width:360px;height:360px;left:-270px;right:auto;bottom:-170px;border:80px solid rgba(24,119,242,.055)}.visual-reviews{margin:30px 0 28px;overflow:visible}.review-building{position:absolute;inset:45px 25px 25px 0;width:calc(100% - 25px);height:calc(100% - 70px);object-fit:cover;border-radius:28px;box-shadow:0 28px 60px rgba(0,0,0,.22);filter:saturate(.88)}.visual-reviews::before{content:"";position:absolute;z-index:1;inset:45px 25px 25px 0;border-radius:28px;background:linear-gradient(180deg,transparent 34%,rgba(0,0,0,.55))}.review-logo-card{position:absolute;z-index:3;width:92px;height:92px;border-radius:28px;background:#fff;display:grid;place-items:center;box-shadow:0 18px 40px rgba(0,0,0,.24)}.review-logo-card img{width:65%;height:65%;object-fit:contain}.review-google{left:-8px;top:14px;animation:logoFloatA 4.8s ease-in-out infinite}.review-facebook{right:0;bottom:4px;animation:logoFloatB 5.3s ease-in-out infinite}.review-stars{position:absolute;z-index:3;left:28px;bottom:48px;color:#ffb000;font-size:27px;letter-spacing:5px;text-shadow:0 2px 12px rgba(0,0,0,.8)}

.contact-hero{background:linear-gradient(130deg,#f9f5ec,#eef4f5)}.contact-hero::before{width:520px;height:520px;left:auto;right:-310px;top:-260px;border:0;background:repeating-radial-gradient(circle,rgba(245,164,0,.15) 0 3px,transparent 3px 24px)}.contact-hero::after{width:420px;height:420px;right:auto;left:-330px;bottom:-230px;border:0;background:radial-gradient(circle,rgba(27,166,113,.12),transparent 69%)}.visual-contact{overflow:visible}.contact-backdrop{position:absolute;z-index:-2;inset:58px 0 20px 25px;width:calc(100% - 25px);height:calc(100% - 78px);object-fit:cover;border-radius:45% 12% 24% 12%;box-shadow:0 28px 60px rgba(0,0,0,.19);filter:saturate(.88)}.visual-contact::before{content:"";position:absolute;z-index:-1;inset:58px 0 20px 25px;border-radius:45% 12% 24% 12%;background:linear-gradient(90deg,rgba(0,0,0,.22),transparent)}.contact-engineer{position:absolute;z-index:2;height:96%;width:auto;left:50%;bottom:-1px;transform:translateX(-42%);filter:drop-shadow(0 20px 22px rgba(0,0,0,.27));animation:engineerFloat 5.6s ease-in-out infinite}.contact-phone{position:absolute;z-index:5;right:-8px;top:80px;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;color:#111;background:var(--orange);box-shadow:0 16px 38px rgba(245,164,0,.4);animation:phonePulse 2.4s ease-in-out infinite}.contact-phone svg{width:31px;height:31px}.contact-signal{position:absolute;z-index:1;right:-28px;top:44px;border:2px solid rgba(245,164,0,.42);border-radius:50%;animation:signalPulse 2.4s ease-out infinite}.signal-one{width:145px;height:145px}.signal-two{width:205px;height:205px;right:-58px;top:14px;animation-delay:.8s}

.button-brand-logo{width:19px;height:19px;object-fit:contain}.quick-icon.facebook{background:#fff}.quick-icon.facebook img{width:38px;height:38px;object-fit:contain}.platform-dot{background:#fff!important;overflow:hidden}.platform-dot img{width:100%;height:100%;object-fit:contain}.contact-brand-logo{width:24px;height:24px;object-fit:contain;flex:0 0 auto}.platform-logo{background:#fff!important;box-shadow:0 7px 20px rgba(0,0,0,.1)!important;overflow:hidden}.platform-logo img{width:72%;height:72%;object-fit:contain}.source-mini{display:grid!important;place-items:center;padding:3px}.source-mini img{width:100%;height:100%;object-fit:contain}.project-image::before,.story-slide::after{content:none!important}

@keyframes engineerFloat{50%{transform:translateY(-8px)}}@keyframes houseFloat{50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes sunPulse{50%{transform:scale(1.06);filter:blur(1px)}}@keyframes cardFloatA{50%{transform:translateY(-12px) rotate(2deg)}}@keyframes cardFloatB{50%{transform:translateY(10px) rotate(-3deg)}}@keyframes cardFloatC{50%{transform:translateY(-8px) rotate(4deg)}}@keyframes orbitRotate{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes qualityScan{0%,100%{top:8%;opacity:.2}50%{top:91%;opacity:1}}@keyframes projectCardA{50%{transform:translate(-8px,7px) rotate(-3deg)}}@keyframes projectCardB{50%{transform:translate(8px,-8px) rotate(2deg)}}@keyframes projectCardC{50%{transform:translateY(-11px) rotate(1deg)}}@keyframes logoFloatA{50%{transform:translateY(-10px) rotate(-4deg)}}@keyframes logoFloatB{50%{transform:translateY(9px) rotate(5deg)}}@keyframes phonePulse{50%{transform:scale(1.08);box-shadow:0 20px 46px rgba(245,164,0,.55)}}@keyframes signalPulse{0%{transform:scale(.72);opacity:0}45%{opacity:.8}100%{transform:scale(1.18);opacity:0}}

@media (max-width:1050px){.page-hero-rich .page-hero-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:24px}.page-hero-rich h1{font-size:49px}.visual-engineer{right:-7%}.project-visual-counter{font-size:82px}}
@media (max-width:820px){.page-hero-rich{padding-top:20px}.page-hero-rich .page-hero-layout{grid-template-columns:1fr;min-height:auto}.page-hero-copy{padding:50px 0 20px}.page-hero-rich h1{font-size:48px;max-width:680px}.page-hero-visual{min-height:470px}.visual-about .visual-backdrop{left:10%;width:80%}.visual-engineer{right:12%}.visual-services,.visual-projects{max-width:620px;width:100%;margin:0 auto}.visual-quality,.visual-reviews{min-height:460px}.visual-contact{min-height:490px}.contact-engineer{height:96%}}
@media (max-width:640px){.page-hero-rich{padding:22px 0 0}.page-hero-rich .page-hero-layout{display:block}.page-hero-copy{padding:36px 0 8px}.page-hero-rich h1{font-size:38px;line-height:1.13}.page-hero-rich .page-lead{font-size:14px;line-height:1.7}.page-hero-visual{min-height:390px;margin-top:8px}.visual-about .visual-backdrop{inset:55px 0 12px 8%;width:84%;height:calc(100% - 67px)}.visual-about .visual-house{width:130px;height:88px;left:0;bottom:30px;border-width:4px}.visual-engineer{height:97%;right:2%}.visual-tag{right:6px;bottom:13px;font-size:7px}.service-visual-card{border-width:5px;border-radius:16px}.service-orbit{width:320px;height:320px}.visual-quality{min-height:380px;margin:20px 0 12px;border-radius:24px 6px}.quality-badge{width:58px;height:58px;border-radius:18px}.project-visual-counter{right:0;font-size:70px}.visual-reviews{min-height:385px;margin:15px 0}.review-logo-card{width:68px;height:68px;border-radius:20px}.review-stars{font-size:19px}.visual-contact{min-height:410px}.contact-backdrop{left:8px;width:calc(100% - 8px)}.contact-engineer{left:45%;height:96%}.contact-phone{right:2px;top:60px;width:59px;height:59px}.signal-one{right:-22px;top:34px}.signal-two{right:-50px;top:4px}.quick-icon.facebook img{width:34px;height:34px}}
@media (prefers-reduced-motion:reduce){.visual-engineer,.visual-house,.visual-sun,.service-visual-card,.service-orbit,.quality-scan,.project-visual-card,.review-logo-card,.contact-phone,.contact-signal{animation:none!important}}

.contact-engineer{animation-name:contactEngineerFloat}@keyframes contactEngineerFloat{50%{transform:translate(-42%,-8px)}}
@media (prefers-reduced-motion:reduce){.contact-engineer{animation:none!important}}

/* v10: one unique, identity-consistent engineer scene per subpage. */
.visual-scene{min-height:500px;margin:30px 0 30px;border-radius:32px 8px 32px 8px;overflow:hidden;background:#171717;box-shadow:0 28px 68px rgba(0,0,0,.23);isolation:isolate}.visual-scene::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(0,0,0,.42));pointer-events:none}.visual-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.visual-services-v10>img{object-position:59% center}.visual-quality-v10>img{object-position:58% center}.visual-projects-v10>img{object-position:58% center}.visual-reviews-v10>img{object-position:58% center}.visual-contact-v10>img{object-position:57% center}.scene-caption{position:absolute;z-index:4;left:22px;bottom:20px;padding:9px 13px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(10,10,10,.56);backdrop-filter:blur(10px);color:#fff;font:500 8px/1 "Kanit";letter-spacing:2px}

.visual-about-v10{overflow:visible;min-height:560px}.visual-about-v10::before{content:"";position:absolute;z-index:-2;width:420px;height:420px;right:-40px;top:72px;border-radius:50%;background:radial-gradient(circle at 42% 38%,rgba(255,192,53,.48),rgba(245,164,0,.1) 58%,transparent 59%)}.visual-about-v10::after{content:"";position:absolute;z-index:-3;inset:80px -70px 18px 12px;background:repeating-linear-gradient(90deg,rgba(20,20,20,.045) 0 1px,transparent 1px 26px);border-radius:42px}.about-lean-word{position:absolute;z-index:1;right:-26px;top:25%;font:800 clamp(145px,13vw,230px)/.8 "Kanit";letter-spacing:-14px;color:#171717;text-shadow:12px 12px 0 rgba(245,164,0,.23);user-select:none}.about-lean-engineer{position:absolute;z-index:3;left:-3%;bottom:0;height:97%;width:auto;filter:drop-shadow(0 22px 25px rgba(0,0,0,.24));transform:none!important}.visual-about-v10 .visual-tag{right:7px;bottom:17px}.about-hero .visual-about-v10.reveal,.about-hero .visual-about-v10.reveal.visible{opacity:1!important;transform:none!important;transition:none!important}.about-hero .about-lean-engineer,.about-hero .about-lean-word{animation:none!important}

.visual-quality-v10 .quality-scan{z-index:3}.visual-quality-v10 .quality-badge{z-index:4}.visual-projects-v10 .project-visual-counter{right:6px;bottom:12px;font-size:96px;color:rgba(245,164,0,.88)}

.visual-reviews-v10{overflow:visible}.visual-reviews-v10::before{border-radius:inherit}.review-connector{position:absolute;z-index:5;width:78px;height:78px;border-radius:24px;background:#fff;display:grid;place-items:center;box-shadow:0 18px 42px rgba(0,0,0,.25);animation:reviewLogoPulse 3.8s ease-in-out infinite}.review-connector>img{position:relative;width:64%;height:64%;object-fit:contain}.review-connector i{position:absolute;z-index:-1;right:56px;top:50%;width:128px;height:2px;background:linear-gradient(90deg,rgba(245,164,0,.15),var(--orange));transform-origin:right center}.review-connector i::after{content:"";position:absolute;right:-1px;top:-5px;width:10px;height:10px;border-top:2px solid var(--orange);border-right:2px solid var(--orange);transform:rotate(45deg)}.connector-google{right:-17px;top:18%}.connector-google i{transform:rotate(-12deg)}.connector-facebook{right:-17px;bottom:17%;animation-delay:.8s}.connector-facebook i{transform:rotate(14deg)}.visual-reviews-v10 .review-stars{left:22px;bottom:18px}.visual-contact-v10 .contact-phone{right:-8px;top:64px}.visual-contact-v10 .signal-one{right:-36px;top:28px}.visual-contact-v10 .signal-two{right:-68px;top:-4px}

@keyframes reviewLogoPulse{50%{transform:translateY(-7px);box-shadow:0 23px 48px rgba(0,0,0,.3)}}
@media (max-width:1050px){.about-lean-word{right:-18px;font-size:165px}.about-lean-engineer{left:-8%;height:94%}.visual-scene{min-height:470px}.review-connector{right:-5px}}
@media (max-width:820px){.visual-about-v10{min-height:500px;max-width:580px;margin:0 auto}.about-lean-word{right:1%;top:28%;font-size:190px}.about-lean-engineer{left:4%;height:98%}.visual-scene{min-height:470px;max-width:650px;width:100%;margin:12px auto 28px}.visual-services-v10>img,.visual-quality-v10>img,.visual-projects-v10>img,.visual-reviews-v10>img,.visual-contact-v10>img{object-position:center}.review-connector{right:10px}}
@media (max-width:640px){.visual-about-v10{min-height:410px}.about-lean-word{right:-2%;top:32%;font-size:137px;letter-spacing:-9px;text-shadow:8px 8px 0 rgba(245,164,0,.23)}.about-lean-engineer{left:-5%;height:96%}.visual-about-v10 .visual-tag{right:0;bottom:8px}.visual-scene{min-height:375px;border-radius:24px 6px 24px 6px}.visual-services-v10>img{object-position:61% center}.visual-quality-v10>img{object-position:61% center}.visual-projects-v10>img{object-position:61% center}.visual-reviews-v10>img{object-position:59% center}.visual-contact-v10>img{object-position:61% center}.scene-caption{left:14px;bottom:13px;font-size:7px}.review-connector{width:59px;height:59px;border-radius:18px;right:-3px}.review-connector i{right:43px;width:82px}.connector-google{top:13%}.connector-facebook{bottom:14%}.visual-projects-v10 .project-visual-counter{font-size:65px}.visual-contact-v10 .contact-phone{width:54px;height:54px;right:0;top:46px}}

/* V11 company-history hero: the engineer leans on a real building, not typography. */
.visual-about-v11{isolation:isolate}.visual-about-v11 .about-lean-word{display:none!important}.visual-about-v11 .about-lean-building{position:absolute;z-index:1;left:18%;bottom:0;width:69%;height:88%;object-fit:contain;object-position:left bottom;filter:drop-shadow(14px 22px 28px rgba(24,24,24,.18));transform:none!important}.visual-about-v11 .about-lean-engineer{z-index:3;left:-2%;height:98%}.about-hero .about-lean-engineer,.about-hero .about-lean-building{animation:none!important}.visual-about-v11 .visual-tag{z-index:5}
@media (max-width:1050px){.visual-about-v11 .about-lean-building{left:17%;width:70%;height:86%}.visual-about-v11 .about-lean-engineer{left:-4%;height:96%}}
@media (max-width:820px){.visual-about-v11 .about-lean-building{left:20%;width:66%;height:84%}.visual-about-v11 .about-lean-engineer{left:3%;height:97%}}
@media (max-width:640px){.visual-about-v11 .about-lean-building{left:18%;width:66%;height:82%}.visual-about-v11 .about-lean-engineer{left:-3%;height:95%}}

/* V13 page heroes: clear roles, real work and no repeated engineer portrait. */
.visual-services-v13{position:relative;min-height:560px;overflow:hidden;isolation:isolate;background:transparent}.visual-services-v13::before{content:"";position:absolute;z-index:-2;width:430px;height:430px;right:-28px;top:52px;border-radius:46% 54% 62% 38%;background:radial-gradient(circle at 45% 42%,rgba(255,188,43,.48),rgba(245,164,0,.13) 58%,transparent 59%)}.visual-services-v13::after{content:"";position:absolute;z-index:-3;inset:58px -20px 20px 12px;border-radius:36px;background-image:linear-gradient(rgba(26,26,26,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(26,26,26,.045) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,transparent,#000 28%,#000)}.services-foreman{position:absolute;z-index:3;right:-2%;bottom:0;height:96%;width:auto;object-fit:contain;filter:drop-shadow(0 24px 25px rgba(0,0,0,.23))}.foreman-shape{position:absolute;z-index:1;pointer-events:none}.foreman-shape-a{width:165px;height:7px;left:4%;top:46%;background:var(--orange);box-shadow:0 15px 0 rgba(245,164,0,.22)}.foreman-shape-b{width:118px;height:118px;left:10%;top:23%;border:1px solid rgba(20,20,20,.18);border-radius:50%;box-shadow:inset 0 0 0 20px rgba(255,255,255,.42)}.foreman-title{position:absolute;z-index:5;left:3%;top:17%;padding:15px 17px;border-left:4px solid var(--orange);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:0 14px 34px rgba(0,0,0,.11)}.foreman-title small{display:block;margin-bottom:5px;color:#777;font:600 8px/1 "Kanit";letter-spacing:1.7px}.foreman-title b{font:700 18px/1.25 "Kanit"}.visual-services-v13 .scene-caption{left:4%;bottom:22px;background:#171717}

.visual-quality-v13{background:#171717}.visual-quality-v13>img{object-position:center 58%}.visual-quality-v13::before{background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.52))}.why-hero .visual-quality-v13,.why-hero .visual-quality-v13 *{animation:none!important}.visual-quality-v13 .scene-caption{left:22px;bottom:20px}

.visual-projects-v13{position:relative;min-height:540px;overflow:visible;isolation:isolate}.visual-projects-v13::before{content:"";position:absolute;z-index:-3;width:430px;height:430px;right:0;top:60px;border-radius:50%;background:radial-gradient(circle,rgba(245,164,0,.24),rgba(245,164,0,.06) 60%,transparent 61%)}.visual-projects-v13::after{content:"";position:absolute;z-index:-4;inset:40px -28px 10px 35px;background:repeating-linear-gradient(135deg,rgba(20,20,20,.045) 0 1px,transparent 1px 20px);border-radius:34px}.project-showcase{position:absolute;margin:0;overflow:hidden;border:6px solid #fff;background:#111;box-shadow:0 24px 48px rgba(0,0,0,.2)}.project-showcase img{width:100%;height:100%;object-fit:cover}.project-showcase-main{z-index:2;left:1%;top:11%;width:66%;height:74%;border-radius:28px 8px 28px 8px}.project-showcase-top{z-index:3;right:-1%;top:4%;width:42%;height:39%;border-radius:8px 24px 8px 24px;transform:rotate(2.2deg)}.project-showcase-bottom{z-index:4;right:1%;bottom:3%;width:45%;height:43%;border-radius:24px 8px 24px 8px;transform:rotate(-2deg)}.visual-projects-v13 .project-visual-counter{z-index:5;right:2%;bottom:0;font-size:88px}.visual-projects-v13 .scene-caption{z-index:6;left:4%;bottom:8%;background:#171717}

.visual-contact-v13{background:#171717;border-radius:30px 8px 30px 8px}.visual-contact-v13>img{object-position:center}.visual-contact-v13::before{background:linear-gradient(180deg,transparent 56%,rgba(0,0,0,.48))}.contact-status{position:absolute;z-index:5;left:22px;bottom:20px;display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(10,10,10,.66);backdrop-filter:blur(12px);color:#fff;font:600 10px/1 "Kanit";letter-spacing:.4px}.contact-status i{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(245,164,0,.18)}

.credibility-band{overflow:hidden;isolation:isolate}.credibility-band::before{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(245,164,0,.19),transparent 22%,transparent 78%,rgba(245,164,0,.19));pointer-events:none}.credibility-band::after{content:"";position:absolute;z-index:0;inset:-80px -25px;background:radial-gradient(circle at left,rgba(255,179,24,.22),transparent 25%),radial-gradient(circle at right,rgba(255,179,24,.22),transparent 25%);filter:blur(22px);pointer-events:none}.credibility-grid{position:relative;z-index:1}

@media (max-width:1050px){.visual-services-v13{min-height:520px}.services-foreman{right:-7%;height:93%}.foreman-title{left:0}.visual-projects-v13{min-height:500px}}
@media (max-width:820px){.visual-services-v13,.visual-projects-v13{min-height:500px;max-width:620px;width:100%;margin:0 auto}.services-foreman{right:5%;height:95%}.foreman-title{left:6%;top:16%}.visual-quality-v13,.visual-contact-v13{min-height:470px;max-width:650px;width:100%;margin:12px auto 28px}}
@media (max-width:640px){.visual-services-v13{min-height:420px}.services-foreman{right:-4%;height:91%}.foreman-title{left:2%;top:12%;padding:12px 13px}.foreman-title b{font-size:15px}.foreman-shape-a{width:112px;top:44%}.foreman-shape-b{width:86px;height:86px;left:7%}.visual-projects-v13{min-height:400px}.project-showcase{border-width:4px}.project-showcase-main{width:68%;height:72%}.project-showcase-top{width:43%;height:37%}.project-showcase-bottom{width:46%;height:41%}.visual-projects-v13 .project-visual-counter{font-size:62px}.visual-quality-v13,.visual-contact-v13{min-height:390px}.contact-status{left:14px;bottom:14px;font-size:9px}}
@media (prefers-reduced-motion:reduce){.review-connector{animation:none!important}}

/* V15: useful proof, a direct Facebook portfolio path and a more distinctive call control. */
.header-call{position:relative;isolation:isolate;overflow:hidden;height:48px;gap:10px;padding:0 18px 0 9px;border:1px solid rgba(255,255,255,.12);border-radius:18px 6px 18px 6px;box-shadow:0 12px 28px rgba(0,0,0,.2);transition:transform .25s ease,box-shadow .25s ease,border-radius .25s ease}.header-call::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,transparent 0 42%,rgba(245,164,0,.19) 49%,transparent 57%);transform:translateX(-120%);transition:transform .55s ease}.header-call::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:linear-gradient(90deg,var(--orange),transparent)}.header-call svg{position:relative;width:34px;height:34px;padding:8px;border-radius:12px 4px 12px 4px;background:rgba(245,164,0,.14);transition:transform .25s ease}.header-call span{position:relative}.header-call:hover{transform:translateY(-2px);border-radius:6px 18px 6px 18px;box-shadow:0 16px 36px rgba(0,0,0,.27)}.header-call:hover::before{transform:translateX(120%)}.header-call:hover svg{transform:rotate(-8deg) scale(1.04)}.header-call:focus-visible{outline:3px solid rgba(245,164,0,.34);outline-offset:3px}

.projects-facebook-cta{position:relative;overflow:hidden;isolation:isolate;margin-top:42px;padding:30px 32px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:34px;border-radius:30px 8px 30px 8px;background:#151515;color:#fff;box-shadow:0 24px 52px rgba(0,0,0,.16)}.projects-facebook-cta::before{content:"";position:absolute;z-index:-1;width:350px;height:350px;right:8%;top:-260px;border:70px solid rgba(24,119,242,.17);border-radius:50%}.projects-facebook-cta::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,rgba(24,119,242,.18),transparent 36%,rgba(245,164,0,.08));pointer-events:none}.projects-facebook-copy>span{font:600 9px/1 "Kanit";letter-spacing:2.6px;color:#76aaff}.projects-facebook-copy h2{margin:7px 0 5px;font-size:28px}.projects-facebook-copy p{font-size:11px;color:#a9a9a9}.facebook-project-btn{position:relative;min-width:250px;height:72px;padding:0 18px 0 10px;display:flex;align-items:center;gap:13px;border:1px solid rgba(255,255,255,.45);border-radius:20px 7px 20px 7px;background:#fff;color:#151515;box-shadow:0 15px 34px rgba(0,0,0,.25);transition:transform .25s ease,border-radius .25s ease,box-shadow .25s ease}.facebook-project-btn::after{content:"";position:absolute;inset:5px;border:1px solid rgba(24,119,242,.16);border-radius:15px 4px 15px 4px;pointer-events:none}.facebook-project-icon{position:relative;z-index:1;width:50px;height:50px;flex:0 0 auto;display:grid;place-items:center;border-radius:16px 5px 16px 5px;background:#eef5ff}.facebook-project-icon img{width:34px;height:34px;object-fit:contain}.facebook-project-btn>span:nth-child(2){position:relative;z-index:1;display:grid;line-height:1.2}.facebook-project-btn small{font:400 9px/1.2 "Mitr";color:#6c727a}.facebook-project-btn b{font:600 16px/1.3 "Kanit"}.facebook-project-btn>svg{position:relative;z-index:1;width:20px;height:20px;margin-left:auto;color:#1877f2;transition:transform .25s ease}.facebook-project-btn:hover{transform:translateY(-3px) rotate(-.4deg);border-radius:7px 20px 7px 20px;box-shadow:0 20px 42px rgba(24,119,242,.28)}.facebook-project-btn:hover>svg{transform:translateX(4px)}.facebook-project-btn:focus-visible{outline:3px solid rgba(85,148,255,.48);outline-offset:4px}

.verification-section{padding-top:8px;background:linear-gradient(180deg,#fff 0,#f7f3ea 100%)}.verification-panel{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:54px;padding:48px;border:1px solid #e7dfd0;border-radius:34px 8px 34px 8px;background:#fff;box-shadow:0 22px 60px rgba(0,0,0,.08)}.verification-panel::before{content:"";position:absolute;z-index:-1;width:330px;height:330px;left:-230px;top:-230px;border:68px solid rgba(245,164,0,.1);border-radius:50%}.verification-copy>span{font:600 9px/1 "Kanit";letter-spacing:2.8px;color:var(--orange-dark)}.verification-copy h2{max-width:640px;margin:10px 0 13px;font-size:38px}.verification-copy p{max-width:710px;font-size:13px;line-height:1.75;color:#626262}.verification-copy strong{font-weight:500;color:#171717}.verification-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.verification-source{align-self:stretch;padding:28px;display:flex;flex-direction:column;justify-content:center;border-radius:24px 7px 24px 7px;background:#151515;color:#fff;box-shadow:13px 13px 0 rgba(245,164,0,.15)}.verification-source>small{font:600 8px/1 "Kanit";letter-spacing:2.4px;color:var(--orange)}.verification-source>b{margin:12px 0 22px;font:600 21px/1.45 "Kanit"}.verification-source dl{margin:0;display:grid;gap:10px}.verification-source dl>div{padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}.verification-source dt{font-size:9px;color:#8f8f8f}.verification-source dd{margin:4px 0 0;font:500 13px/1.4 "Kanit"}

@media (max-width:820px){.projects-facebook-cta,.verification-panel{grid-template-columns:1fr}.projects-facebook-cta{gap:22px}.facebook-project-btn{width:100%}.verification-panel{gap:28px;padding:36px}.verification-source{min-height:220px}}
@media (max-width:640px){.projects-facebook-cta{margin-top:30px;padding:24px 18px;border-radius:24px 7px}.projects-facebook-copy h2{font-size:24px}.facebook-project-btn{min-width:0;height:68px}.verification-section{padding-top:0}.verification-panel{padding:28px 20px;border-radius:26px 7px}.verification-copy h2{font-size:31px}.verification-actions{display:grid}.verification-actions .btn{width:100%}.verification-source{padding:24px}}
@media (prefers-reduced-motion:reduce){.header-call,.header-call::before,.header-call svg,.facebook-project-btn,.facebook-project-btn>svg{transition:none!important}}

/* V16: restrained project copy and a warmer, editorial company-history panel. */
.projects-hero .project-detail-line{display:inline-block;max-width:650px;margin-top:6px;font-size:.67em;line-height:1.22;letter-spacing:-.35px}
.company-history-section{background:linear-gradient(135deg,#fff 0,#fffaf0 47%,#f3f7f6 100%)}.company-history-section::before{width:520px;height:520px;left:-390px;top:-130px;border:86px solid rgba(245,164,0,.09)}.company-history-section::after{width:430px;height:430px;right:-300px;bottom:-120px;background:repeating-linear-gradient(135deg,rgba(18,103,87,.045) 0 1px,transparent 1px 18px)}.company-history-section .section-heading h2{position:relative;display:inline-block;font-size:clamp(42px,5vw,66px);letter-spacing:-1px}.company-history-section .section-heading h2::after{content:"";position:absolute;left:0;bottom:-5px;width:56%;height:7px;border-radius:99px;background:linear-gradient(90deg,var(--orange),rgba(245,164,0,.12))}.company-history-section .story-lead a{color:inherit;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:4px}
.company-history-section .story-facts{gap:14px}.company-history-section .story-fact{position:relative;overflow:hidden;min-height:135px;padding:24px 72px 24px 27px;border:1px solid rgba(255,255,255,.1);border-left:0;border-radius:24px 7px 24px 7px;background:linear-gradient(135deg,#171717 0,#241d12 100%);box-shadow:0 14px 34px rgba(0,0,0,.1);transition:transform .25s ease,box-shadow .25s ease}.company-history-section .story-fact::after{content:"";position:absolute;right:-50px;bottom:-70px;width:140px;height:140px;border:28px solid rgba(255,174,0,.1);border-radius:50%}.company-history-section .story-fact:nth-child(2){background:linear-gradient(135deg,#121a22,#152c38)}.company-history-section .story-fact:nth-child(2)::after{border-color:rgba(75,154,207,.16)}.company-history-section .story-fact:nth-child(3){background:linear-gradient(135deg,#111c18,#17352b)}.company-history-section .story-fact:nth-child(3)::after{border-color:rgba(77,181,133,.15)}.company-history-section .story-fact:nth-child(4){background:linear-gradient(135deg,#22180f,#3a2610)}.company-history-section .story-fact:nth-child(4)::after{border-color:rgba(245,164,0,.14)}.company-history-section .story-fact:hover{transform:translateX(-5px);box-shadow:0 18px 42px rgba(0,0,0,.16)}.company-history-section .story-fact small{display:block;margin-bottom:7px;font:600 8px/1 "Kanit";letter-spacing:2px;color:#e4a925}.company-history-section .story-fact:nth-child(2) small{color:#72bde5}.company-history-section .story-fact:nth-child(3) small{color:#77cfaa}.company-history-section .story-fact b{display:block;font-size:21px;color:#fff}.company-history-section .story-fact p{max-width:370px;margin-top:7px;color:rgba(255,255,255,.67);line-height:1.65}.story-fact-no{position:absolute;z-index:2;right:23px;top:22px;font:700 25px/1 "Kanit";color:rgba(255,255,255,.18);letter-spacing:-1px}.company-history-section .company-timeline{position:relative}
@media (max-width:900px){.company-history-section .story-facts{grid-template-columns:1fr 1fr;display:grid}.company-history-section .story-fact{min-height:160px}.company-history-section .story-fact:hover{transform:translateY(-3px)}}
@media (max-width:640px){.projects-hero .project-detail-line{font-size:.62em}.company-history-section .story-facts{grid-template-columns:1fr}.company-history-section .story-fact{min-height:0;padding:22px 64px 22px 22px;border-radius:20px 6px}.company-history-section .section-heading h2{font-size:42px}}
@media (prefers-reduced-motion:reduce){.company-history-section .story-fact{transition:none!important}}
