:root{--orange:#f57c00;--orange-2:#ff9b32;--ink:#171717;--dark:#202124;--muted:#6c7075;--soft:#f4f5f6;--white:#fff;--radius:22px;--shadow:0 18px 55px rgba(22,25,29,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{font-family:"Prompt",sans-serif;color:var(--ink);overflow-x:hidden}h1,h2,h3,.navbar-brand{font-family:"Kanit",sans-serif}a{text-decoration:none}.section-pad{padding:105px 0}.bg-soft{background:#f5f5f3}.section-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--orange);font-weight:600;font-size:.86rem;letter-spacing:.08em;margin-bottom:14px}.section-kicker:before{content:"";width:28px;height:2px;background:var(--orange)}h2{font-size:clamp(2rem,4vw,3.3rem);font-weight:600;line-height:1.15;margin-bottom:22px}h2 span{display:block;color:var(--orange)}p{color:var(--muted);line-height:1.85}.btn{border-radius:7px;font-weight:500;padding:.8rem 1.4rem}.btn-brand{background:var(--orange);border-color:var(--orange);color:#fff}.btn-brand:hover{background:#dc6e00;border-color:#dc6e00;color:#fff;transform:translateY(-2px)}
/* Navbar */
.navbar{padding:16px 0;transition:.35s}.navbar.scrolled,.navbar.menu-open{background:rgba(20,20,20,.96);box-shadow:0 5px 25px rgba(0,0,0,.16);padding:10px 0;backdrop-filter:blur(14px)}.navbar-brand{color:#fff!important;display:flex;align-items:center;gap:10px;line-height:1}.navbar-brand .brand-mark{width:39px;height:39px;display:grid;place-items:center;background:var(--orange);font-size:1.45rem;font-weight:700;clip-path:polygon(15% 0,100% 0,85% 100%,0 100%)}.navbar-brand b{display:block;letter-spacing:.12em}.navbar-brand small{display:block;font:500 .55rem "Prompt";letter-spacing:.15em;color:#d1d1d1;margin-top:5px}.nav-link{color:rgba(255,255,255,.82)!important;font-size:.91rem}.nav-link:hover,.nav-link.active{color:var(--orange)!important}.navbar .btn-sm{padding:.55rem 1rem}
/* Hero */
.hero{min-height:790px;padding:160px 0 90px;color:#fff;position:relative;background:linear-gradient(90deg,rgba(10,10,10,.95) 0%,rgba(10,10,10,.77) 48%,rgba(10,10,10,.25) 100%),url('../assets/images/company-sign.jpg') center/cover no-repeat}.hero:after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,rgba(0,0,0,.5))}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to right,#000,transparent)}.hero .container{z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.83rem;font-weight:600;letter-spacing:.12em;color:#ffd2a5;margin-bottom:25px}.hero h1{font-size:clamp(3rem,7vw,6rem);font-weight:600;line-height:.95;margin-bottom:28px;letter-spacing:-.03em}.hero h1 span{color:var(--orange)}.hero-copy{color:#e7e7e7;max-width:720px;font-size:1.08rem;margin-bottom:32px}.glass{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(16px)}.hero-card{padding:25px;border-radius:18px}.hero-card>div{display:flex;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.15)}.hero-card>div:last-child{border:0}.hero-card i{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--orange);font-size:1.25rem}.hero-card b,.hero-card small{display:block}.hero-card small{color:#bbb;margin-top:3px}.scroll-hint{position:absolute;z-index:3;bottom:25px;left:50%;width:25px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:20px}.scroll-hint span{width:4px;height:8px;background:var(--orange);position:absolute;top:8px;left:9px;border-radius:5px;animation:scroll 1.6s infinite}@keyframes scroll{to{transform:translateY(15px);opacity:0}}
/* About */
.about-visual{position:relative;padding:25px 0 25px 25px}.about-visual:before{content:"";position:absolute;left:0;top:0;width:50%;height:80%;border:7px solid var(--orange)}.about-visual img{position:relative;width:100%;height:420px;object-fit:cover;border-radius:0 20px 20px 20px;box-shadow:var(--shadow)}.experience-badge{position:absolute;right:-16px;bottom:0;background:var(--ink);color:#fff;padding:19px 25px;border-radius:14px;display:flex;align-items:center;gap:11px;box-shadow:var(--shadow)}.experience-badge strong{font:600 2.3rem "Kanit";color:var(--orange)}.experience-badge span{font-size:.8rem}.about-section p{font-size:1rem}.about-points{display:grid;gap:10px;margin:25px 0}.about-points span{font-weight:500}.about-points i{color:var(--orange);margin-right:8px}.text-link{color:var(--ink);font-weight:600;border-bottom:2px solid var(--orange);padding-bottom:4px}
/* Service cards */
.section-heading{max-width:760px;margin:0 auto 55px}.section-heading>p{max-width:560px}.section-heading.text-center>p{margin-inline:auto}.service-card{position:relative;height:100%;background:#fff;padding:30px 26px;border-radius:16px;border:1px solid #e7e7e7;overflow:hidden;transition:.3s}.service-card>i{font-size:2rem;color:var(--orange);display:block;margin-bottom:35px}.service-card>span{position:absolute;right:20px;top:16px;font:600 3.2rem "Kanit";color:#f1f1f1}.service-card h3{font-size:1.2rem;font-weight:600}.service-card p{font-size:.88rem;margin:0}.service-card:before{content:"";position:absolute;left:0;bottom:0;width:0;height:4px;background:var(--orange);transition:.35s}.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow);border-color:transparent}.service-card:hover:before{width:100%}.service-card:hover>span{color:#ffead5}
/* Process */
.process-section{background:#fff}.process-track{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.process-track:before{content:"";position:absolute;top:58px;left:12%;right:12%;height:1px;background:#ddd}.process-track>div{text-align:center;position:relative}.process-track b{position:absolute;top:-15px;right:20px;color:#e4e4e4;font-size:2.6rem}.process-track i{position:relative;width:82px;height:82px;margin:auto;border:1px solid #e6e6e6;background:#fff;border-radius:50%;display:grid;place-items:center;font-size:1.7rem;color:var(--orange);box-shadow:0 10px 25px rgba(0,0,0,.05)}.process-track h3{font-size:1rem;margin-top:17px}
/* Why */
.why-section{background:radial-gradient(circle at 15% 25%,#464646 0,transparent 30%),#181818;color:#fff;position:relative}.why-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(30deg,transparent 49.5%,rgba(255,255,255,.03) 50%,transparent 50.5%);background-size:45px 45px}.why-section .container{position:relative}.why-grid>div>div{height:100%;padding:28px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:14px}.why-grid i{font-size:1.9rem;color:var(--orange)}.why-grid h3{font-size:1.1rem;margin:20px 0 8px}.why-grid p{color:#aaa;font-size:.85rem;margin:0}.stats{margin-top:50px;border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);padding:30px 20px}.stats>div{text-align:center;border-right:1px solid rgba(255,255,255,.15)}.stats>div:last-child{border:0}.stats strong,.stats b{font:600 2.5rem "Kanit";color:#fff}.stats b{color:var(--orange)}.stats span{display:block;color:#bbb;font-size:.84rem}
/* Projects */
.projects-section .section-heading{max-width:none}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}.project-grid article{grid-column:span 4;background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 8px 35px rgba(0,0,0,.07)}.project-art{height:230px;display:grid;place-items:center;overflow:hidden;position:relative}.project-art:before,.project-art:after{content:"";position:absolute}.project-art i{font-size:5rem;color:#fff;z-index:2;transition:.4s}.art-factory{background:linear-gradient(135deg,#31363b,#90989d)}.art-panel{background:linear-gradient(135deg,#202226,#f57c00)}.art-solar{background:linear-gradient(135deg,#143955,#3e9bc1)}.art-building{background:linear-gradient(135deg,#c4c4bf,#4e5459)}.art-test{background:linear-gradient(135deg,#31180b,#f57c00)}.art-maintain{background:linear-gradient(135deg,#262626,#777)}.project-art:before{inset:18px;border:1px solid rgba(255,255,255,.25)}.project-grid article:hover i{transform:scale(1.16) rotate(-4deg)}.project-grid article>div:last-child{padding:22px}.project-grid span{font-size:.7rem;color:var(--orange);font-weight:600;letter-spacing:.12em}.project-grid h3{font-size:1.05rem;margin:6px 0}
/* CTA + contact */
.cta-section{background:linear-gradient(#fff 50%,#f4f4f4 50%)}.cta-box{padding:55px 65px;border-radius:22px;background:linear-gradient(110deg,rgba(224,105,0,.97),rgba(255,148,30,.92)),url('../assets/images/company-sign.jpg') center/cover;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 25px 60px rgba(245,124,0,.24)}.cta-box h2{margin:8px 0 12px}.cta-box p{color:#fff;margin:0}.cta-box .btn{white-space:nowrap;color:var(--ink)}.contact-section{background:#f4f4f4}.contact-list{display:grid;gap:16px;margin-top:30px}.contact-list>a,.contact-list>div{display:flex;align-items:center;gap:17px;color:var(--ink)}.contact-list i{width:48px;height:48px;display:grid;place-items:center;background:#fff;color:var(--orange);font-size:1.15rem;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.06)}.contact-list small{display:block;color:#8b8b8b;margin-bottom:2px}.map-card{background:#fff;padding:12px;border-radius:18px;box-shadow:var(--shadow)}.map-card img{width:100%;height:310px;object-fit:cover;border-radius:12px;filter:saturate(.8)}.map-card a{display:block;text-align:center;color:var(--ink);font-weight:500;padding:15px 5px 7px}.map-card a i{color:var(--orange)}
/* Footer */
footer{background:#151515;color:#fff;padding:55px 0 25px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px}.footer-top p{margin:0;color:#aaa;text-align:center}.socials{display:flex;gap:10px;justify-content:flex-end}.socials a{width:40px;height:40px;border:1px solid #444;border-radius:50%;display:grid;place-items:center;color:#fff}.socials a:hover{background:var(--orange);border-color:var(--orange)}.footer-bottom{border-top:1px solid #333;margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;color:#777;font-size:.76rem}#backToTop{position:fixed;right:20px;bottom:20px;width:43px;height:43px;background:var(--orange);color:#fff;border-radius:50%;display:grid;place-items:center;z-index:50;opacity:0;visibility:hidden;transform:translateY(15px);transition:.3s}#backToTop.show{opacity:1;visibility:visible;transform:none}
@media(max-width:991.98px){.navbar-collapse{padding:18px 0}.hero{min-height:850px;background-position:center}.section-pad{padding:80px 0}.about-visual img{height:350px}.process-track{margin-top:20px}.project-grid article{grid-column:span 6}.cta-box{padding:45px;display:block}.cta-box .btn{margin-top:20px}.footer-top{grid-template-columns:1fr;text-align:center}.footer-top .navbar-brand{justify-content:center}.socials{justify-content:center}}
@media(max-width:767.98px){.hero{min-height:780px;padding-top:125px}.hero h1{font-size:3.3rem}.hero-card{display:none}.section-pad{padding:68px 0}.about-visual{padding-left:12px}.about-visual img{height:280px}.experience-badge{right:0}.process-track{grid-template-columns:1fr 1fr;gap:35px 10px}.process-track:before{display:none}.stats{grid-template-columns:1fr 1fr;gap:25px 0}.stats>div:nth-child(2){border:0}.project-grid article{grid-column:span 12}.project-art{height:200px}.cta-box{padding:35px 25px;border-radius:16px}.cta-box h2{font-size:2rem}.map-card img{height:220px}.footer-bottom{display:grid;gap:10px;text-align:center}.scroll-hint{display:none}}
@media(max-width:420px){.hero h1{font-size:2.75rem}.hero-copy{font-size:.95rem}.hero .btn{width:100%}.stats strong,.stats b{font-size:2rem}.about-visual img{height:225px}.experience-badge{padding:12px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
