@font-face{font-family:PrimeThai;src:url('NotoSansThai-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:PrimeThai;src:url('NotoSansThai-Bold.ttf') format('truetype');font-weight:700;font-display:swap}:root{--ink:#242c2d;--muted:#5c6463;--cream:#f8f5ef;--gold:#aa7d3e;--line:#dedbd3;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:PrimeThai,Tahoma,sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.48}h1{font-size:clamp(30px,3.25vw,47px);letter-spacing:-.7px}h2{font-size:clamp(28px,2.6vw,38px);margin-bottom:24px}h3{font-size:24px;margin-bottom:12px}p{color:var(--muted)}.wrap{max-width:1200px;margin:auto;padding-left:40px;padding-right:40px}.review-note{display:flex;justify-content:center;gap:24px;background:#eae5da;font-size:10px;letter-spacing:1.7px;padding:7px 20px;color:#615541}.review-note span{letter-spacing:.2px}header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{max-width:1360px;margin:auto;padding:24px 48px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:15px;font-family:Georgia,serif;font-size:23px;letter-spacing:1.3px;line-height:1.15}.brand small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:5.2px;margin-top:8px}.brand-icon{font-size:29px;color:var(--gold);border-right:1px solid #d4c4aa;padding:10px 16px 10px 0;letter-spacing:-3px}.brand-icon span{font-size:30px;font-weight:400}nav{display:flex;gap:32px;font-size:14px}nav a{padding:8px 0;border-bottom:1px solid transparent}nav a:hover,nav a[aria-current]{color:#815c2b;border-bottom-color:var(--gold)}.menu-toggle{display:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;background:var(--cream);min-height:650px}.hero-copy{padding:70px 55px 66px 64px}.eyebrow{font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2.5px;color:var(--gold);margin-bottom:25px}.lead{font-size:17px;line-height:1.95}.hero .lead{max-width:530px;margin:25px 0 32px}.hero-visual{position:relative;overflow:hidden;min-height:650px}.architecture{position:relative;overflow:hidden;background:#c7d3d1;aspect-ratio:260/280}.architecture img{position:absolute;width:241.154%;max-width:none;height:auto;left:-9.615%;top:-11.071%}.photo-2 img{left:-120%;top:-129.286%}.hero-visual .architecture{height:100%;width:100%;aspect-ratio:auto}.hero-visual .architecture img{height:276.071%;width:auto;left:50%;top:-11.071%;transform:translateX(-24.72%)}.image-label{position:absolute;bottom:0;left:0;right:0;background:#233132eb;color:white;padding:26px 32px;font-size:10px;letter-spacing:3px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;padding:15px 25px;background:#a87c3c;color:white;font-size:15px;font-weight:700;min-height:55px;transition:background .2s}.button:hover{background:#805a29}.button span{font-size:24px;line-height:1}.intro{text-align:center;max-width:920px;padding-top:100px;padding-bottom:100px}.intro p:not(.eyebrow){max-width:730px;margin:0 auto 28px}.text-link{font-weight:700;display:inline-block;padding:6px 0;border-bottom:1px solid var(--gold);font-size:14px}.text-link:hover{color:#815c2b}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.section-heading p{margin-bottom:0}.section-heading .eyebrow{margin-bottom:13px}.section-heading h2{margin:0}.service-section{padding-bottom:100px}.service-row{display:grid;grid-template-columns:45px 1fr 1fr 25px;gap:28px;padding:36px 0;border-top:1px solid var(--line);align-items:center}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-size:23px;margin:5px 0 0}.service-row p{font-size:14px;margin:0}.service-en{font-family:Georgia,serif;color:#7d715d;font-size:15px}.number{color:var(--gold);font-family:Arial,sans-serif;font-size:13px;letter-spacing:1.4px}.arrow{font-size:28px;color:var(--gold)}.service-row:hover h3{color:#815c2b}.perspective{background:var(--cream);padding:80px 0}.perspective-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.perspective .architecture{max-width:430px}.perspective-inner p:not(.eyebrow){font-size:16px}.cta{max-width:1200px;margin:0 auto;padding:85px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin-bottom:0}.cta .eyebrow{margin-bottom:18px}footer{background:#263333;color:#eee;padding:56px max(40px,calc((100vw - 1120px)/2)) 22px}footer p{font-size:14px;color:#ccd1cc;margin:0}.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:45px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:7px 30px;font-size:13px}.footer-bottom{border-top:1px solid #ffffff26;padding-top:22px;display:flex;justify-content:space-between;color:#bfc7c1;font-size:11px}.page-head{padding-top:70px;padding-bottom:60px}.page-head .lead{max-width:680px}.page-head h1{font-size:clamp(34px,3.7vw,52px)}.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:80px;align-items:center;padding-bottom:85px}.about-grid p{font-size:16px}.gold-rule{height:1px;width:64px;background:var(--gold);margin:30px 0}.principles{padding-top:70px;padding-bottom:75px;background:var(--cream)}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:40px}.three-grid h3{font-size:21px;margin-top:15px}.three-grid p{font-size:14px}.service-detail{display:grid;grid-template-columns:.8fr 1.1fr;gap:70px;align-items:center;padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.service-detail:nth-child(even) .architecture{order:2}.service-detail .number{display:block;margin-bottom:22px}.service-detail .lead{font-size:18px}.service-detail p{font-size:15px}.service-detail h2{font-size:33px}.preparation{padding-top:75px;padding-bottom:75px;background:var(--cream);margin-top:25px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-bottom:100px}.contact-item{border-top:1px solid var(--line);padding:25px 0}.contact-item .eyebrow{font-size:10px}.contact-item h3{font-size:20px;margin:5px 0}.pending{font-size:14px;color:#6c675f}.contact-card{background:var(--cream);padding:45px}.contact-card ol{padding-left:22px;color:var(--muted);font-size:15px}.contact-card li{margin-bottom:15px}.review-callout{border-top:1px solid #d7c5a9;padding-top:23px;margin-top:30px;font-size:13px}.review-callout p{margin:8px 0 0}.skip{position:absolute;top:-100px;left:10px;z-index:50;background:#fff;padding:15px}.skip:focus{top:10px}:focus-visible{outline:3px solid #896329;outline-offset:5px}
@media(min-width:1500px){.hero{margin-top:30px}.hero-copy{padding-left:70px}}
@media(max-width:1000px){.header-inner{padding:20px 30px}.hero-copy{padding:50px 35px}.hero{min-height:610px}.hero-visual{min-height:610px}.hero h1{font-size:34px}.perspective-inner,.about-grid{gap:45px}.service-row{gap:20px;grid-template-columns:28px 1fr 1fr 20px}.contact-grid{gap:45px}}
@media(max-width:700px){.wrap{padding-left:24px;padding-right:24px}.review-note{font-size:9px;gap:10px;letter-spacing:.8px;padding:6px 10px}.review-note span{font-size:8px}.header-inner{padding:17px 24px;flex-wrap:wrap;gap:18px}.brand{font-size:19px}.brand small{font-size:8px;letter-spacing:4.5px;margin-top:6px}.brand-icon{font-size:24px;padding:4px 12px 4px 0}.menu-toggle{display:flex;gap:13px;background:none;border:1px solid var(--line);padding:8px 12px;font-size:12px;align-items:center}nav{display:none;width:100%;flex-direction:column;gap:3px;font-size:15px;padding:8px 0}nav.open{display:flex}nav a{padding:10px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:44px 24px}.hero h1{font-size:30px;line-height:1.55;letter-spacing:0}.eyebrow{font-size:10px;margin-bottom:20px}.hero .lead{font-size:15px;margin:22px 0 26px}.hero-visual{min-height:0;height:350px}.hero-visual .architecture img{width:241.154%;height:auto;left:-9.615%;top:-14%;transform:none}.image-label{padding:16px 24px;font-size:9px}.intro{padding-top:60px;padding-bottom:60px}.intro p:not(.eyebrow){font-size:15px}h2{font-size:28px}.section-heading{display:block}.section-heading>p{margin-top:18px;font-size:14px}.service-section{padding-bottom:60px}.service-row{grid-template-columns:28px 1fr 20px;gap:12px;padding:25px 0}.service-row h3{font-size:20px}.service-row p{grid-column:2;grid-row:2;font-size:14px}.service-row .arrow{grid-column:3;grid-row:1}.service-en{font-size:13px}.perspective{padding:40px 0}.perspective-inner,.about-grid{grid-template-columns:1fr;gap:34px}.perspective .architecture{max-width:none;aspect-ratio:260/280}.cta{padding:56px 24px;display:block}.cta .button{margin-top:28px}.cta h2{font-size:28px}footer{padding:42px 24px 22px}.footer-top{display:grid;gap:26px;padding-bottom:30px}.footer-nav{display:flex;flex-wrap:wrap;gap:18px}.footer-bottom{flex-direction:column;gap:10px}.page-head{padding-top:45px;padding-bottom:30px}.page-head h1{font-size:33px}.page-head .lead{font-size:16px}.about-grid{padding-bottom:50px}.principles,.preparation{padding-top:45px;padding-bottom:45px}.three-grid{grid-template-columns:1fr;gap:20px;margin-top:25px}.three-grid article{border-top:1px solid var(--line);padding-top:20px}.three-grid h3{margin-top:5px}.service-detail{grid-template-columns:1fr;gap:30px;padding:40px 0}.service-detail:nth-child(even) .architecture{order:0}.service-detail h2{font-size:28px}.service-detail .lead{font-size:16px}.service-detail .number{font-size:11px}.contact-grid{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.contact-card{padding:30px 24px}.contact-grid h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.arrow-icon{display:inline-block;width:18px;height:18px;vertical-align:middle;margin-left:8px}.button .arrow-icon,.arrow .arrow-icon{width:21px;height:21px;margin-left:0}.menu-icon{width:17px;height:17px;vertical-align:middle}
/* V2: faithful reconstruction of the supplied ZipWP reference */
.reference-hero{position:relative;min-height:610px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:#263333}.reference-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%}.reference-hero:after{content:"";position:absolute;inset:0;background:rgba(15,24,25,.61)}.reference-hero-content{position:relative;z-index:1;max-width:1010px;padding:80px 40px}.reference-hero h1{font-size:clamp(36px,4.6vw,66px);line-height:1.42;margin:0 auto 28px;max-width:980px}.reference-hero p{font-size:20px;line-height:1.9;max-width:910px;color:white;margin:0 auto 32px}.reference-hero .button,.reference-intro .button,.reference-cta .button{justify-content:center;min-width:145px;gap:0;background:#b88b4e}.hero-line{position:absolute;z-index:2;left:50%;bottom:-36px;height:72px;width:1px;background:#b88b4e}.reference-intro{text-align:center;max-width:1050px;padding-top:95px;padding-bottom:65px}.reference-intro h2{font-size:clamp(28px,3.2vw,44px);max-width:850px;margin:0 auto 25px}.reference-intro p:not(.eyebrow){color:#272d2c;line-height:1.95;margin:0 auto 20px;font-size:16px;max-width:880px}.reference-intro .eyebrow{font-family:PrimeThai,sans-serif;font-weight:400;letter-spacing:2px;font-size:13px;margin-bottom:25px}.reference-intro .button{margin-top:12px}.reference-expertise{max-width:1130px;padding-top:25px;padding-bottom:70px}.reference-detail{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;scroll-margin-top:120px}.reference-detail>.architecture,.reference-detail>.ref-photo{margin-right:30px;margin-bottom:32px;min-height:350px;align-self:stretch;aspect-ratio:auto}.reference-detail:nth-child(even)>.architecture,.reference-detail:nth-child(even)>.ref-photo{order:2;margin:0 0 32px 30px}.reference-detail-copy{padding:44px 42px;background:#fbf7f0;align-self:stretch}.reference-detail h2{font-size:clamp(27px,2.8vw,38px);margin:14px 0 20px;line-height:1.5}.reference-detail p{color:#292f2d;line-height:1.9;font-size:16px}.reference-detail .number{display:block}.reference-detail .text-link{margin-top:5px;color:#8f652f}.reference-detail .architecture img{height:276.071%;width:auto;max-width:none;left:50%;transform:translateX(-70.5%);top:-129.286%}.reference-detail .photo-3 img{height:463.584%;width:auto;left:50%;transform:translateX(-28.16%);top:-9.249%}.ref-photo{position:relative;overflow:hidden;min-height:300px}.ref-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.reference-services{padding-top:0}.reference-services>h2{text-align:center;margin:0 24px 45px;font-size:39px}.reference-card-grid{display:grid;grid-template-columns:repeat(3,1fr)}.reference-service-card{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden;color:white}.card-background{position:absolute;inset:0}.card-background>.architecture,.card-background>.ref-photo{height:100%;width:100%}.card-background .architecture img{height:276.071%;width:auto;left:50%;top:-129.286%;transform:translateX(-70.5%)}.card-background .photo-3 img{height:463.584%;top:-9.249%;transform:translateX(-28.16%)}.reference-service-card:after{content:"";position:absolute;inset:0;background:#162426b5;transition:background .2s}.reference-service-card:hover:after{background:#162426ce}.card-copy{position:relative;z-index:1;padding:45px 40px;max-width:510px;margin:auto}.card-copy h3{font-size:clamp(26px,2.7vw,39px);line-height:1.5;margin:25px 0 20px}.card-copy p{font-size:15px;color:#fff;line-height:1.95}.small-rule{display:block;width:32px;height:1px;background:#fff}.card-link{display:inline-block;font-size:13px;border-bottom:1px solid #bca276;margin-top:14px;padding-bottom:5px}.reference-cta{position:relative;background:#263333;color:white;min-height:375px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.cta-background{position:absolute;inset:0}.cta-background .architecture{width:100%;height:100%;aspect-ratio:auto}.cta-background .architecture img{width:241.154%;height:auto;left:-120%;top:-195%;transform:none}.reference-cta:after{content:"";position:absolute;inset:0;background:#142125bf}.cta-content{position:relative;z-index:1;padding:65px 30px;max-width:960px}.cta-content h2{font-size:40px;margin-bottom:20px}.cta-content p{font-size:18px;color:#fff;margin-bottom:28px}.reference-page-hero{background:var(--cream);text-align:center;padding:75px 30px}.reference-page-hero h1{font-size:46px;margin-bottom:15px}.reference-page-hero p{margin:0;font-size:17px}.reference-about{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-bottom:80px}.reference-about .ref-photo{min-height:450px}.reference-about h2{font-size:30px}.reference-services-page{max-width:1170px;padding-top:65px;padding-bottom:75px}.reference-services-page .reference-detail{margin-bottom:35px}.reference-services-page .reference-detail-copy{padding:38px}.reference-services-page .reference-detail>.architecture,.reference-services-page .reference-detail>.ref-photo{margin-bottom:0;min-height:450px}footer{background:#fbf7ef;color:#272d2c;border-top:1px solid #e0d9ca}footer p{color:#3d443f}.footer-bottom{border-top:1px solid #d7cebf;color:#817052}.footer-nav a:hover{color:#936b35}
@media(max-width:1000px){.reference-hero{min-height:540px}.reference-hero h1{font-size:50px}.reference-detail-copy{padding:30px}.reference-detail h2{font-size:30px}.card-copy{padding:30px}.card-copy h3{font-size:28px}.reference-detail>.architecture,.reference-detail>.ref-photo{min-height:330px}.reference-about{gap:35px}}
@media(max-width:700px){.reference-hero{min-height:550px}.reference-hero-content{padding:60px 24px}.reference-hero h1{font-size:36px;line-height:1.55}.reference-hero p{font-size:16px;line-height:1.9;margin-bottom:30px}.reference-hero-image{object-position:48% center}.reference-intro{padding-top:75px;padding-bottom:45px}.reference-intro h2{font-size:29px}.reference-intro p:not(.eyebrow){font-size:15px}.reference-expertise{padding-top:0;padding-bottom:40px}.reference-detail{grid-template-columns:1fr;margin-bottom:30px}.reference-detail>.architecture,.reference-detail>.ref-photo,.reference-detail:nth-child(even)>.architecture,.reference-detail:nth-child(even)>.ref-photo{order:0;margin:0;min-height:330px;height:330px}.reference-detail-copy{padding:30px 25px}.reference-detail h2{font-size:28px}.reference-detail p{font-size:15px}.reference-card-grid{grid-template-columns:1fr}.reference-services>h2{font-size:31px;margin-bottom:30px}.reference-service-card{min-height:390px}.card-copy{padding:40px 30px;max-width:none;margin:0}.card-copy h3{font-size:29px}.card-copy p{font-size:15px}.reference-cta{min-height:350px}.cta-content{padding:55px 25px}.cta-content h2{font-size:31px}.cta-content p{font-size:16px}.cta-background .architecture img{top:-140%}.reference-page-hero{padding:50px 25px}.reference-page-hero h1{font-size:36px}.reference-page-hero p{font-size:15px}.reference-about{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.reference-about .ref-photo{min-height:330px}.reference-services-page{padding-top:35px;padding-bottom:25px}.reference-services-page .reference-detail-copy{padding:30px 25px}.reference-services-page .reference-detail>.architecture,.reference-services-page .reference-detail>.ref-photo{min-height:330px}.reference-detail .architecture img{height:276.071%;top:-129.286%}.reference-detail .photo-3 img{height:463.584%;top:-9.249%}}
.cta-background .architecture img{width:241.154%;height:auto;left:50%;top:50%;transform:translate(-70.5%,-64.94%)}
/* High-resolution licensed architecture replacement: copy and layout preserved. */
.reference-hero-image{object-position:70% 58%}.ref-photo.asset-1 img{object-position:75% center}.ref-photo.asset-2 img{object-position:center 48%}.ref-photo.asset-3 img{object-position:center}.cta-background .ref-photo{width:100%;height:100%;min-height:0}.cta-background .ref-photo img{object-position:center 56%}
@media(max-width:700px){.reference-hero-image{object-position:75% center}}
/* Knowledge page: prepared topics, no unpublished article links. */
.knowledge-intro{text-align:center;max-width:930px;padding-top:65px;padding-bottom:45px}.knowledge-intro h2{font-size:34px}.knowledge-intro>p:not(.eyebrow){max-width:760px;margin:0 auto;font-size:16px}.knowledge-section{padding-bottom:80px}.knowledge-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:28px}.knowledge-heading h2{font-size:28px;margin:0}.knowledge-heading p{font-size:14px;margin:0}.knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.knowledge-card{background:#fbf7f0}.knowledge-card>.ref-photo{height:235px;min-height:0}.knowledge-card-copy{padding:28px}.knowledge-category{font-size:12px;color:#946b36;margin-bottom:15px}.knowledge-card h3{font-size:23px;line-height:1.7;margin-bottom:25px}.knowledge-status{display:inline-block;border:1px solid #d6c8b1;padding:5px 12px;color:#776447;font-size:12px}nav{gap:25px}
@media(max-width:1050px) and (min-width:701px){nav{gap:15px;font-size:12px}.header-inner{padding-left:25px;padding-right:25px}}
@media(max-width:700px){nav{gap:3px;font-size:15px}.knowledge-intro{padding-top:45px;padding-bottom:35px}.knowledge-intro h2{font-size:28px}.knowledge-intro>p:not(.eyebrow){font-size:15px}.knowledge-heading{display:block}.knowledge-heading h2{font-size:26px}.knowledge-heading p{margin-top:10px}.knowledge-grid{grid-template-columns:1fr;gap:25px}.knowledge-section{padding-bottom:50px}.knowledge-card>.ref-photo{height:255px}.knowledge-card h3{font-size:24px}.knowledge-card-copy{padding:26px}}
