.project-page{background:#fff}
.project-page .site-header{position:sticky}
.project-hero{min-height:610px;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden;isolation:isolate;background:#111}
.project-hero::before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.28)),var(--project-hero);background-size:cover;background-position:center;animation:projectHeroZoom 12s ease-out both}
.project-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.75))}
@keyframes projectHeroZoom{from{transform:scale(1.07)}to{transform:scale(1)}}
.project-hero-content{width:min(1140px,calc(100% - 40px));margin:0 auto;padding:120px 0 72px}.project-breadcrumb{display:flex;align-items:center;gap:8px;color:#d3d3d3;font-size:11px;margin-bottom:18px}.project-breadcrumb a:hover{color:#fff}.project-breadcrumb span{color:var(--orange)}
.project-kicker{font-family:"Kanit";font-size:12px;font-weight:500;letter-spacing:4px;color:var(--orange);margin-bottom:10px}.project-hero h1{font-size:56px;font-weight:600;max-width:850px;text-wrap:balance}.project-hero-lead{font-size:17px;color:#e0e0e0;max-width:730px;margin-top:14px}.project-hero-actions{display:flex;gap:10px;margin-top:25px}.project-hero-actions .btn{min-width:170px}
.project-factbar{background:var(--orange)}.project-factbar .container{display:grid;grid-template-columns:repeat(4,1fr);min-height:112px}.fact-item{display:flex;align-items:center;gap:13px;padding:21px;border-right:1px solid rgba(0,0,0,.14)}.fact-item:last-child{border:0}.fact-number{font-family:"Kanit";font-size:28px;font-weight:600}.fact-item>span:last-child{display:grid}.fact-item small{font-size:9px;letter-spacing:1.5px;text-transform:uppercase}.fact-item b{font-family:"Kanit";font-size:13px;font-weight:500}
.project-overview{padding:90px 0}.overview-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:70px;align-items:start}.overview-copy>span,.project-gallery-head>span{font-family:"Kanit";font-size:11px;letter-spacing:3px;color:var(--orange-dark)}.overview-copy h2,.project-gallery-head h2{font-size:42px;font-weight:600;margin:8px 0 18px;text-wrap:balance}.overview-copy>p{color:#626262;font-size:15px;line-height:1.85}.scope-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin-top:26px}.scope-list span{display:flex;align-items:center;gap:8px;font-size:13px;border-bottom:1px solid #ececec;padding:10px 0}.scope-list svg{width:17px;height:17px;color:var(--orange)}
.project-data-card{background:#171717;color:#fff;padding:28px;border-bottom:5px solid var(--orange);position:sticky;top:88px}.project-data-card h2{font-size:21px;font-weight:500;margin-bottom:14px}.data-row{display:grid;gap:3px;border-top:1px solid #333;padding:13px 0}.data-row small{font-size:9px;color:#8d8d8d}.data-row b{font-family:"Kanit";font-size:13px;font-weight:400;color:#fff}.data-note{font-size:9px;color:#999;margin-top:12px}
.project-gallery{padding:90px 0 110px;background:#f7f7f5}.project-gallery-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.project-gallery-head h2{margin-bottom:0}.project-gallery-head p{max-width:400px;color:#6d6d6d;font-size:13px}
.gallery-grid{columns:3 280px;column-gap:16px}.gallery-item{width:100%;display:block;break-inside:avoid;margin:0 0 16px;border:0;padding:0;background:#ddd;overflow:hidden;cursor:zoom-in;position:relative}.gallery-item img{width:100%;height:auto;min-height:220px;max-height:520px;object-fit:cover;transition:transform .55s,filter .4s}.gallery-item:hover img{transform:scale(1.035);filter:brightness(.72)}.gallery-item::after{content:"ขยายภาพ";position:absolute;left:50%;top:50%;transform:translate(-50%,-25%);padding:7px 13px;border:1px solid rgba(255,255,255,.8);color:#fff;font-family:"Kanit";font-size:11px;opacity:0;transition:.3s}.gallery-item:hover::after{opacity:1;transform:translate(-50%,-50%)}
.gallery-item.rotate-180 img{transform:rotate(180deg)}.gallery-item.rotate-90 img{transform:rotate(90deg);aspect-ratio:4/3}.gallery-item.rotate-neg90 img{transform:rotate(-90deg);aspect-ratio:4/3}.gallery-item.rotate-180:hover img{transform:rotate(180deg) scale(1.035)}.gallery-item.rotate-90:hover img{transform:rotate(90deg) scale(1.035)}.gallery-item.rotate-neg90:hover img{transform:rotate(-90deg) scale(1.035)}
.project-next{padding:50px 0;background:var(--orange)}.project-next .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.project-next small{display:block;font-size:10px;letter-spacing:2px}.project-next h2{font-size:31px;margin-top:3px}.project-next-actions{display:flex;gap:9px}
.project-page .footer-grid{min-height:310px}.project-page .footer-brand img{width:230px;height:230px}.project-page .footer-brand::after{width:250px;height:250px}
.project-lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:rgba(0,0,0,.96);color:#fff;overflow:hidden}.project-lightbox::backdrop{background:#000}.project-lightbox figure{width:100%;height:100%;display:grid;place-items:center;padding:60px 90px}.project-lightbox img{max-width:100%;max-height:calc(100dvh - 110px);object-fit:contain;transition:transform .25s}.project-lightbox img.rotate-180{transform:rotate(180deg)}.project-lightbox img.rotate-90{transform:rotate(90deg) scale(.72)}.project-lightbox img.rotate-neg90{transform:rotate(-90deg) scale(.72)}.project-lightbox figcaption{position:absolute;bottom:18px;font-family:"Kanit";font-size:11px;color:#bbb}.project-lightbox button{position:absolute;z-index:3;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}.detail-lightbox-close{right:18px;top:18px;width:44px;height:44px;font-size:29px}.detail-lightbox-prev,.detail-lightbox-next{top:50%;transform:translateY(-50%);width:50px;height:72px;font-size:45px}.detail-lightbox-prev{left:18px}.detail-lightbox-next{right:18px}
@media (max-width:900px){.project-hero{min-height:570px}.project-hero h1{font-size:46px}.project-factbar .container{grid-template-columns:1fr 1fr}.fact-item:nth-child(2){border-right:0}.fact-item:nth-child(-n+2){border-bottom:1px solid rgba(0,0,0,.14)}.overview-layout{grid-template-columns:1fr}.project-data-card{position:static}.project-gallery-head{display:block}.project-gallery-head p{margin-top:10px}.project-next .container{display:grid}.project-next-actions{width:100%}.project-next-actions .btn{flex:1}}
@media (max-width:640px){.project-hero{min-height:560px}.project-hero-content{width:calc(100% - 28px);padding:90px 0 45px}.project-hero h1{font-size:36px}.project-hero-lead{font-size:13px}.project-hero-actions{display:grid;grid-template-columns:1fr 1fr}.project-hero-actions .btn{min-width:0;padding:0 12px;font-size:12px}.project-factbar .container{width:100%}.fact-item{padding:15px 13px}.fact-number{font-size:22px}.fact-item b{font-size:11px}.project-overview{padding:65px 0}.overview-layout{gap:35px}.overview-copy h2,.project-gallery-head h2{font-size:34px}.scope-list{grid-template-columns:1fr}.project-gallery{padding:65px 0 80px}.gallery-grid{columns:2 150px;column-gap:9px}.gallery-item{margin-bottom:9px}.gallery-item img{min-height:150px;max-height:330px}.project-next{padding:36px 0}.project-next h2{font-size:25px}.project-next-actions{display:grid;grid-template-columns:1fr 1fr}.project-lightbox figure{padding:70px 10px 85px}.detail-lightbox-prev,.detail-lightbox-next{top:auto;bottom:13px;height:44px}.detail-lightbox-prev{left:14px}.detail-lightbox-next{right:14px}.project-lightbox figcaption{bottom:26px}.project-page .footer-bottom{padding-bottom:84px}}

/* Project pages: clean Thai wrapping and a brighter logo presentation. */
.project-page :is(.project-hero h1,.overview-copy h2,.project-gallery-head h2,.project-next h2){word-break:normal;overflow-wrap:normal;hyphens:none;text-wrap:balance}
.project-page :is(.project-hero-lead,.overview-copy>p,.project-gallery-head p,.scope-list span){word-break:normal;overflow-wrap:normal;hyphens:none;text-wrap:pretty}
.project-page .footer-grid{grid-template-columns:220px 1fr 1fr 1.2fr;gap:42px}
.project-page .footer-brand::after{display:none}
.project-page .footer-brand>a{width:190px;height:190px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,#fff 0,#f4f1e9 70%,#dfd6c3 100%);border:1px solid rgba(255,170,0,.38);box-shadow:0 18px 48px rgba(0,0,0,.3),0 0 0 8px rgba(255,170,0,.045)}
.project-page .footer-brand img{width:174px;height:174px;object-fit:contain;filter:none}
@media (max-width:900px){.project-page .footer-grid{grid-template-columns:190px 1fr 1fr}.project-page .footer-about{grid-column:1/-1}}
@media (max-width:640px){.project-page .footer-grid{grid-template-columns:1fr;text-align:center}.project-page .footer-brand{display:grid;place-items:center}.project-page .footer-about{grid-column:auto}.project-page .footer-col{align-items:center}.project-page .footer-brand>a{width:168px;height:168px}.project-page .footer-brand img{width:154px;height:154px}}

/* Project hero refresh and watermark layer (hero cover intentionally excluded). */
.project-hero::before{background-image:linear-gradient(90deg,rgba(2,3,7,.82) 0%,rgba(2,3,7,.64) 42%,rgba(2,3,7,.2) 78%,rgba(2,3,7,.08) 100%),var(--project-hero);background-position:center;background-size:cover;filter:saturate(.96) contrast(1.02)}
.project-hero::after{background:linear-gradient(180deg,rgba(0,0,0,.02) 35%,rgba(0,0,0,.54))}
.project-hero-content{position:relative;z-index:2}.project-hero-content::before{content:"";position:absolute;left:-24px;bottom:61px;width:4px;height:126px;border-radius:8px;background:linear-gradient(var(--orange),#ffcd55);box-shadow:0 0 32px rgba(245,164,0,.38)}
.gallery-item::before{content:"NGE - NEXTGENENGINEERING";position:absolute;z-index:3;left:50%;bottom:12px;transform:translateX(-50%);width:max-content;color:rgba(255,255,255,.44);font:500 8px/1 "Kanit";letter-spacing:1.8px;text-shadow:0 1px 8px rgba(0,0,0,.8);pointer-events:none}.gallery-item::after{z-index:4}.project-lightbox figure::after{content:"NGE - NEXTGENENGINEERING";position:absolute;z-index:2;left:50%;bottom:48px;transform:translateX(-50%);width:max-content;color:rgba(255,255,255,.35);font:500 10px/1 "Kanit";letter-spacing:3px;text-shadow:0 2px 10px #000;pointer-events:none}
@media (max-width:640px){.project-hero::before{background-image:linear-gradient(180deg,rgba(2,3,7,.12),rgba(2,3,7,.82) 69%,rgba(2,3,7,.94)),var(--project-hero);background-position:center}.project-hero-content::before{left:-8px;bottom:41px;height:92px}.gallery-item::before{font-size:6px;letter-spacing:1px;bottom:8px}.project-lightbox figure::after{font-size:7px;letter-spacing:1.5px;bottom:74px}}

/* Watermarks are baked into the image files, so no removable overlay is needed. */
.gallery-item::before,.project-lightbox figure::after{content:none!important}
