@font-face{font-family:Thasadith;src:url('assets/fonts/thasadith-bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:BaiJamjuree;src:url('assets/fonts/bai-jamjuree-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:BaiJamjuree;src:url('assets/fonts/bai-jamjuree-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--ink:oklch(.20 .045 335);--green:oklch(.71 .13 140);--green-deep:oklch(.36 .10 140);--green-pale:oklch(.94 .035 140);--orange:oklch(.68 .17 38);--orange-dark:oklch(.52 .16 38);--white:oklch(1 0 0);--surface:oklch(.955 .01 140);--muted:oklch(.43 .025 335);--line:oklch(.79 .025 335);--max:1200px;--display:Thasadith,BaiJamjuree,sans-serif;--body:BaiJamjuree,Tahoma,sans-serif;--ease:cubic-bezier(.16,1,.3,1);--z-sticky:20}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.72 var(--body);overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--display);line-height:1.08;letter-spacing:-.025em;text-wrap:balance}p{max-width:72ch;text-wrap:pretty}.skip-link{position:fixed;top:-80px;left:18px;z-index:50;background:var(--orange);color:var(--white);padding:12px 16px;font-weight:700}.skip-link:focus{top:18px}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.section{padding:clamp(78px,9vw,138px) max(24px,calc((100vw - var(--max))/2))}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;border-radius:4px;font-weight:700;transition:transform .25s var(--ease),background-color .25s var(--ease)}.button:hover{transform:translateY(-3px)}.button-orange{background:var(--orange);color:var(--white)}.button-orange:hover{background:var(--orange-dark)}.button-ink{background:var(--ink);color:var(--white)}

.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--white);border-bottom:1px solid var(--line)}.nav-shell{width:min(var(--max),calc(100% - 32px));height:78px;margin:auto;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:var(--ink);border-radius:4px}.brand-mark img{width:27px;height:27px;filter:brightness(0) invert(1)}.brand strong,.brand small{display:block}.brand strong{font:700 1.35rem/1 var(--display)}.brand small{font-size:.69rem;letter-spacing:.09em;color:var(--muted);margin-top:5px}.desktop-nav{display:flex;align-items:center;gap:4px}.desktop-nav a{padding:10px 11px;font-size:.91rem}.desktop-nav a:hover{color:var(--orange-dark)}.nav-cta{background:var(--green-deep);color:var(--white);padding:11px 15px;border-radius:4px;font-weight:700;white-space:nowrap}

.promotion{position:relative;height:190px;background:var(--ink);overflow:hidden}.promotion-stage,.promotion-slide{position:absolute;inset:0}.promotion-slide{opacity:0;transition:opacity .45s var(--ease)}.promotion-slide.is-active{opacity:1}.promotion-slide>a,.promotion-slide picture{display:block;width:100%;height:100%}.promotion-slide img{width:100%;height:100%;object-fit:cover;filter:brightness(.35) saturate(.75)}.promotion-copy{position:absolute;inset:0;width:min(var(--max),calc(100% - 32px));margin:auto;color:var(--white);display:flex;flex-direction:column;justify-content:center;pointer-events:none}.promotion-copy strong{font:700 clamp(1.65rem,3.2vw,3.15rem)/1.05 var(--display);letter-spacing:-.02em}.promotion-copy span{margin-top:7px;color:oklch(.91 .02 140)}.promotion-dots{position:absolute;right:max(16px,calc((100% - var(--max))/2));bottom:18px;display:flex;gap:8px}.promotion-dots button{width:30px;height:5px;border:0;padding:0;background:color-mix(in oklch,var(--white) 35%,transparent);cursor:pointer}.promotion-dots button.is-active{background:var(--orange)}

.hero{min-height:740px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);background:var(--green-deep);color:var(--white);overflow:hidden}.hero-copy{padding:clamp(72px,9vw,128px) clamp(32px,6vw,86px) clamp(72px,9vw,120px) max(28px,calc((100vw - var(--max))/2))}.hero-note{display:inline-flex;padding:7px 11px;margin:0 0 23px;background:var(--green);color:var(--ink);font-weight:700;border-radius:3px}.hero h1{font-size:clamp(3.6rem,7.5vw,6rem);margin:0;max-width:760px;letter-spacing:-.035em}.hero h1 span{display:inline-block;color:var(--green)}.hero-lead{font-size:1.08rem;color:oklch(.92 .018 140);margin:28px 0 0;max-width:65ch}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.hero-facts{margin:45px 0 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid color-mix(in oklch,var(--white) 26%,transparent)}.hero-facts div{padding:18px 18px 0 0}.hero-facts dt{font-weight:700;color:var(--green)}.hero-facts dd{margin:4px 0 0;color:oklch(.84 .025 140);font-size:.86rem}.hero-proof{position:relative;background:var(--green);display:grid;place-items:center;isolation:isolate}.hero-proof::before{content:"";position:absolute;inset:8% 10%;background:var(--orange);transform:rotate(-5deg)}.proof-sheet{position:relative;width:min(74%,560px);background:var(--white);color:var(--ink);padding:34px;transform:rotate(2.8deg);box-shadow:16px 16px 0 color-mix(in oklch,var(--ink) 28%,transparent);z-index:2}.proof-sheet img{width:100%;aspect-ratio:1.3;object-fit:cover}.proof-meta{display:flex;justify-content:space-between;gap:20px;margin-top:22px;padding-top:14px;border-top:1px solid var(--ink)}.proof-meta b{font-family:var(--display);font-size:1.25rem}.proof-meta span{font-size:.68rem;letter-spacing:.07em;text-align:right}.crop{position:absolute;width:22px;height:22px}.crop::before,.crop::after{content:"";position:absolute;background:var(--ink)}.crop::before{width:22px;height:1px}.crop::after{width:1px;height:22px}.crop-tl{left:7px;top:7px}.crop-tr{right:7px;top:7px;transform:rotate(90deg)}.crop-bl{left:7px;bottom:7px;transform:rotate(-90deg)}.crop-br{right:7px;bottom:7px;transform:rotate(180deg)}.proof-stamp{position:absolute;right:5%;bottom:7%;z-index:3;width:148px;height:148px;border-radius:50%;background:var(--ink);color:var(--white);display:grid;place-items:center;text-align:center;transform:rotate(-8deg);font-size:.72rem;font-weight:700;letter-spacing:.08em}.proof-stamp img{width:34px;filter:brightness(0) invert(1)}

.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,8vw,110px);background:var(--white)}.about-title{display:grid;grid-template-columns:34px 1fr;gap:22px;align-items:start}.vertical-word{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.72rem;letter-spacing:.12em;color:var(--green-deep);font-weight:700}.about h2,.service-header h2,.process h2,.pricing h2,.gallery h2,.standards h2,.faq h2,.contact h2,.policies h2{font-size:clamp(2.55rem,5vw,4.8rem);margin:0}.about-body{font-size:1.06rem;color:var(--muted)}.about-body>p:first-child{margin-top:0}.about-contact{margin-top:36px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-contact b,.about-contact span{display:block}.about-contact b{color:var(--ink);margin-bottom:7px}

.advantages{display:grid;grid-template-columns:repeat(4,1fr);background:var(--green);color:var(--ink);padding:0 max(24px,calc((100vw - var(--max))/2))}.advantages article{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:34px 22px}.advantages article+article{border-left:1px solid color-mix(in oklch,var(--ink) 28%,transparent)}.advantages img{width:34px;height:34px}.advantages h3{font-size:1.18rem;margin:0}.advantages p{font-size:.9rem;margin:7px 0 0}

.services{background:var(--surface)}.service-header{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:64px}.service-header p{color:var(--muted);font-size:1.04rem}.service-specimens{border-top:1px solid var(--ink)}.service-row{display:grid;grid-template-columns:70px 250px minmax(0,1fr) 190px;align-items:stretch;border-bottom:1px solid var(--ink);background:var(--white)}.service-number{display:grid;place-items:center;background:var(--ink);color:var(--green);font:700 2.2rem var(--display)}.service-row>img{width:250px;height:100%;min-height:280px;object-fit:cover;filter:saturate(.78);transition:transform .45s var(--ease),filter .45s}.service-row:hover>img{filter:saturate(1);transform:scale(1.025)}.service-copy{padding:32px}.service-copy h3{font-size:2rem;margin:0 0 12px}.service-copy p{color:var(--muted);margin:0}.service-copy ul{padding-left:20px;margin:18px 0 0}.service-copy li{margin:5px 0}.service-price{background:var(--green-pale);padding:30px 22px;display:flex;flex-direction:column;justify-content:center}.service-price span,.service-price small{font-size:.78rem}.service-price strong{font:700 clamp(2.8rem,5vw,4.5rem)/1 var(--display);color:var(--orange-dark);margin:9px 0}.price-caution{margin:28px 0 0;color:var(--muted)}

.process{background:var(--ink);color:var(--white);display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.process-intro p{color:oklch(.78 .025 335)}.process-track{list-style:none;padding:0;margin:0;border-top:1px solid color-mix(in oklch,var(--white) 28%,transparent)}.process-track li{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:27px 0;border-bottom:1px solid color-mix(in oklch,var(--white) 28%,transparent)}.process-track>li>span{width:52px;height:52px;display:grid;place-items:center;background:var(--green);color:var(--ink);border-radius:50%;font:700 1.3rem var(--display)}.process-track h3{font-size:1.5rem;margin:0}.process-track p{margin:7px 0 0;color:oklch(.82 .02 335)}

.pricing{background:var(--white)}.pricing-title{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:end}.pricing-title p{color:var(--muted);font-size:1.04rem}.price-ledger{margin-top:58px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.ledger-head,.price-ledger article{display:grid;grid-template-columns:1fr 1.4fr .7fr;gap:22px;align-items:center}.ledger-head{padding:12px 20px;background:var(--green);font-weight:700}.price-ledger article{padding:25px 20px;border-top:1px solid var(--line)}.price-ledger h3{font-size:1.45rem;margin:0}.price-ledger p{margin:0;color:var(--muted)}.price-ledger strong{font:700 clamp(2.1rem,4vw,3.6rem)/1 var(--display);color:var(--orange-dark);text-align:right}.price-ledger small{font-size:.9rem;color:var(--ink)}.pricing-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:30px}.pricing-cta p{margin:0;color:var(--muted)}

.gallery{background:var(--green-pale)}.gallery-title{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-bottom:58px}.gallery-title p{color:var(--muted)}.contact-sheet{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:310px 310px;gap:12px}.contact-sheet figure{margin:0;position:relative;background:var(--white);overflow:hidden}.contact-sheet img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}.contact-sheet figure:hover img{transform:scale(1.025)}.sheet-large{grid-row:1/3}.contact-sheet figcaption{position:absolute;left:0;right:0;bottom:0;background:var(--white);color:var(--ink);padding:11px 14px;border-top:1px solid var(--ink);font-weight:700}.contact-sheet figcaption b{color:var(--orange-dark);margin-right:8px}

.standards{background:var(--green-deep);color:var(--white);display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.standards-title>img{width:52px;filter:brightness(0) invert(1);margin-bottom:28px}.standards-title p{color:oklch(.86 .025 140)}.proof-checklist{border-top:1px solid color-mix(in oklch,var(--white) 28%,transparent)}.proof-checklist article{display:grid;grid-template-columns:88px .8fr 1.2fr;gap:22px;padding:25px 0;border-bottom:1px solid color-mix(in oklch,var(--white) 28%,transparent);align-items:start}.proof-checklist span{font-weight:700;color:var(--green)}.proof-checklist h3{margin:0;font-size:1.35rem}.proof-checklist p{margin:0;color:oklch(.84 .02 140)}

.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:76px;background:var(--white)}.faq-intro{position:sticky;top:110px;align-self:start}.faq-intro p{color:var(--muted)}.faq-list{border-top:1px solid var(--ink)}.faq-list details{border-bottom:1px solid var(--ink);padding:22px 0}.faq-list summary{cursor:pointer;list-style:none;font:700 1.16rem var(--body);display:flex;justify-content:space-between;gap:22px}.faq-list summary::after{content:"+";display:grid;place-items:center;flex:0 0 32px;height:32px;background:var(--green);border-radius:50%;font-size:1.35rem}.faq-list details[open] summary::after{content:"−";background:var(--orange);color:var(--white)}.faq-list details p{color:var(--muted);margin-bottom:0}

.contact{padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:0;display:grid;grid-template-columns:.9fr 1.1fr;background:var(--ink);color:var(--white)}.contact-info{padding-right:clamp(35px,6vw,80px)}.contact-info>p{color:oklch(.8 .02 335)}.contact-lines{margin-top:36px;border-top:1px solid color-mix(in oklch,var(--white) 28%,transparent)}.contact-lines>a,.contact-lines>div{display:grid;grid-template-columns:38px 100px 1fr;gap:15px;align-items:start;padding:16px 0;border-bottom:1px solid color-mix(in oklch,var(--white) 28%,transparent)}.contact-lines img{width:24px;filter:brightness(0) invert(1)}.contact-lines span{color:var(--green)}.contact-lines b{overflow-wrap:anywhere}.contact-lines a:hover b{color:var(--orange)}.map-wrap{min-height:650px}.map-wrap iframe{display:block;width:100%;height:100%;border:0}

.policies{background:var(--surface)}.policies>header{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:50px}.policies>header p{color:var(--muted)}.policy-list{border-top:1px solid var(--ink)}.policy-list article{display:grid;grid-template-columns:.55fr 1.45fr;gap:55px;padding:27px 0;border-bottom:1px solid var(--ink)}.policy-list h3{font-size:1.55rem;margin:0}.policy-list p{margin:0;color:var(--muted)}

.site-footer{background:var(--white);padding:80px max(24px,calc((100vw - var(--max))/2)) 24px}.footer-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.footer-identity .brand-mark{margin-bottom:22px}.footer-identity h2{font-size:2.5rem;margin:0}.footer-identity p,.footer-top>div>p{color:var(--muted)}.footer-top h3{margin-top:0;color:var(--green-deep)}.footer-top a{display:block;margin:8px 0}.footer-top a:hover{color:var(--orange-dark)}.footer-bottom{margin-top:58px;padding-top:18px;border-top:1px solid var(--ink);display:flex;gap:22px;flex-wrap:wrap;font-size:.82rem}.footer-bottom a{margin-left:auto;font-weight:700}

@media(max-width:1020px){.desktop-nav{display:none}.hero{grid-template-columns:1fr}.hero-proof{min-height:640px}.about,.service-header,.process,.pricing-title,.gallery-title,.standards,.faq,.contact,.policies>header{grid-template-columns:1fr}.advantages{grid-template-columns:1fr 1fr}.advantages article:nth-child(3){border-left:0;border-top:1px solid color-mix(in oklch,var(--ink) 28%,transparent)}.advantages article:nth-child(4){border-top:1px solid color-mix(in oklch,var(--ink) 28%,transparent)}.service-row{grid-template-columns:60px 200px minmax(0,1fr)}.service-row>img{width:200px}.service-price{grid-column:2/-1;display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:16px 24px}.service-price strong{font-size:2.8rem}.process{gap:48px}.faq-intro{position:static}.contact{padding-right:max(24px,calc((100vw - var(--max))/2))}.map-wrap{min-height:460px}.footer-top{grid-template-columns:1fr 1fr}.contact-sheet{grid-template-columns:1fr 1fr;grid-template-rows:360px 360px}.sheet-large{grid-row:auto}.proof-checklist article{grid-template-columns:80px 1fr}.proof-checklist p{grid-column:2}}
@media(max-width:680px){html{scroll-padding-top:70px}.nav-shell{height:68px;width:calc(100% - 20px)}.brand-mark{width:42px;height:42px}.brand small{display:none}.nav-cta{font-size:.75rem;padding:9px}.promotion{height:210px}.promotion-copy strong{font-size:1.5rem}.promotion-copy span{font-size:.86rem}.hero{min-height:auto}.hero-copy{padding:68px 20px}.hero h1{font-size:clamp(3rem,16vw,4.4rem)}.hero-actions{display:grid}.hero-facts{grid-template-columns:1fr}.hero-facts div{padding:14px 0;border-bottom:1px solid color-mix(in oklch,var(--white) 22%,transparent)}.hero-proof{min-height:510px}.proof-sheet{width:82%;padding:24px}.proof-meta{display:grid}.proof-meta span{text-align:left}.proof-stamp{width:112px;height:112px;right:2%;bottom:4%;font-size:.58rem}.section{padding:74px 20px}.about-title{grid-template-columns:1fr}.vertical-word{writing-mode:horizontal-tb;transform:none}.advantages{grid-template-columns:1fr;padding:0 20px}.advantages article{padding:28px 0}.advantages article+article,.advantages article:nth-child(3){border-left:0;border-top:1px solid color-mix(in oklch,var(--ink) 28%,transparent)}.service-header{gap:18px}.service-row{grid-template-columns:46px 1fr}.service-number{grid-row:1/3}.service-row>img{grid-column:2;width:100%;height:250px;min-height:0}.service-copy{grid-column:2;padding:26px 20px}.service-price{grid-column:1/-1;grid-template-columns:1fr auto}.service-price small{grid-column:1/-1}.process-track li{grid-template-columns:50px 1fr}.price-ledger{border-width:2px}.ledger-head{display:none}.price-ledger article{grid-template-columns:1fr}.price-ledger strong{text-align:left}.pricing-cta{display:grid}.contact-sheet{grid-template-columns:1fr;grid-template-rows:none}.contact-sheet figure{height:320px}.proof-checklist article{grid-template-columns:1fr;gap:7px}.proof-checklist p{grid-column:1}.contact{padding:72px 20px}.contact-info{padding:0}.contact-lines>a,.contact-lines>div{grid-template-columns:34px 1fr}.contact-lines b{grid-column:2}.map-wrap{min-height:390px}.policy-list article{grid-template-columns:1fr;gap:8px}.footer-top{grid-template-columns:1fr}.footer-bottom{display:grid}.footer-bottom a{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}}
