@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300 500;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:300 500;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Serif Thai;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/noto-serif-thai.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-300.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-400.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-500.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-600.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}:root{--bg:#fff;--bg-soft:#f7f6f3;--bg-dark:#1c1c1b;--text:#171717;--text-muted:#6b6965;--border:#dddad4;--border-soft:#ebe9e5;--accent:#9a8063;--on-dark:#f4f2ed;--on-dark-muted:#a5a29b;--font-serif:"Cormorant Garamond", "Noto Serif Thai", "Times New Roman", Georgia, serif;--font-sans:"Inter", "IBM Plex Sans Thai", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--space-7:6rem;--section-y:clamp(4.5rem, 9vw, 8.5rem);--container:1280px;--gutter:clamp(1.5rem, 5vw, 4rem);--measure:62ch;--ease:cubic-bezier(.22, .61, .36, 1);--dur:.38s;--nav-h:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 1rem);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;font-weight:400;line-height:1.65;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,dl,dd,figure{margin:0}button,input,select,textarea{font:inherit;color:inherit}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-3);font-size:.7rem;font-weight:500}.eyebrow--light{color:var(--accent)}.section__title{font-family:var(--font-serif);letter-spacing:-.01em;max-width:22ch;font-size:clamp(2rem,4vw,3.25rem);font-weight:300;line-height:1.12}.section__lead{color:var(--text-muted);max-width:var(--measure);margin-top:var(--space-3);font-size:clamp(1rem,1.1vw,1.0625rem);font-weight:300}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y)}.section--tight{padding-top:0}.section--soft{background:var(--bg-soft);border-block:1px solid var(--border-soft)}.section__head{margin-bottom:clamp(2.5rem,5vw,4.5rem)}.section__head--center{text-align:center}.section__head--center .section__title,.section__head--center .section__lead{margin-inline:auto}.btn{letter-spacing:.02em;cursor:pointer;min-height:48px;transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;padding:.75rem 1.75rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.btn--primary{background:var(--text);color:#fff}.btn--primary:hover{background:#000}.btn--outline{color:var(--text);border-color:var(--border);background:0 0}.btn--outline:hover{border-color:var(--text);background:var(--bg)}.btn--light{background:var(--on-dark);color:var(--bg-dark)}.btn--light:hover{background:#fff}.btn--sm{min-height:44px;padding:.5rem 1.25rem;font-size:.8125rem}.btn--block{width:100%}.link-arrow{min-height:44px;color:var(--text);border-bottom:1px solid var(--border);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.link-arrow:after{content:"→";transition:transform var(--dur) var(--ease)}.link-arrow:hover{color:var(--accent);border-color:var(--accent)}.link-arrow:hover:after{transform:translate(4px)}.skip-link{z-index:100;background:var(--text);color:#fff;padding:.75rem 1.25rem;font-size:.875rem;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus{left:var(--space-2);top:var(--space-2)}.site-header{z-index:50;-webkit-backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--border-soft);background:#ffffffe0;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:var(--nav-h);display:flex}.nav__brand{font-family:var(--font-serif);letter-spacing:.01em;white-space:nowrap;font-size:1.375rem;font-weight:500;text-decoration:none}.nav__brand-thin{color:var(--text-muted);margin-left:.3em;font-style:italic;font-weight:300}.nav__links{align-items:center;gap:clamp(1rem,2.2vw,2.25rem);display:flex}.nav__links a{min-height:44px;color:var(--text-muted);transition:color var(--dur) var(--ease);align-items:center;font-size:.8125rem;text-decoration:none;display:inline-flex}.nav__links a:hover{color:var(--text)}.hero{border-bottom:1px solid var(--border-soft);grid-template-columns:62% 38%;min-height:880px;display:grid}@media (width<=1280px){.hero{min-height:760px}}@media (width<=1024px){.hero{min-height:640px}}.hero__media{background:var(--bg-soft);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero__media img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.hero__content{flex-direction:column;justify-content:center;max-width:640px;padding:clamp(3rem,6vw,5.5rem) clamp(1.5rem,4vw,4rem);display:flex}.hero__title{font-family:var(--font-serif);letter-spacing:-.015em;font-size:clamp(2.5rem,3.6vw,4rem);font-weight:300;line-height:1.08}.hero__lead{margin-top:var(--space-3);color:var(--text-muted);max-width:44ch;font-size:clamp(1rem,1.1vw,1.0625rem);font-weight:300}.hero__lead-strong{color:var(--text);margin-bottom:.5rem;font-weight:500;display:block}.hero__actions{align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.hero__facts{gap:.625rem var(--space-3);margin-top:var(--space-6);padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--text-muted);grid-template-columns:repeat(2,minmax(0,1fr));font-size:.8125rem;display:grid}.strip{border-bottom:1px solid var(--border-soft)}.strip__inner{gap:var(--space-4) var(--space-6);grid-template-columns:minmax(0,20rem) minmax(0,1fr);align-items:center;padding-block:clamp(2rem,4vw,3.25rem);display:grid}.strip__title{font-family:var(--font-serif);color:var(--text);font-size:clamp(1.125rem,1.6vw,1.375rem);font-weight:400;line-height:1.3}.strip__list{color:var(--text-muted);flex-wrap:wrap;gap:.625rem clamp(1.25rem,3vw,2.75rem);font-size:.875rem;display:flex}.capabilities{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.capability{padding-top:var(--space-3);border-top:1px solid var(--border)}.capability__num{font-family:var(--font-serif);color:var(--accent);margin-bottom:var(--space-3);font-size:clamp(2.25rem,3vw,3rem);font-weight:300;line-height:1}.capability__title{letter-spacing:.005em;margin-bottom:.5rem;font-size:1rem;font-weight:500}.capability__body{color:var(--text-muted);font-size:.9375rem;font-weight:300}.projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(2.5rem,4vw,4rem) clamp(1.5rem,3vw,3rem);display:grid}.project__media{background:var(--bg-soft);border-radius:2px;display:block;overflow:hidden}.project__media img{object-fit:cover;aspect-ratio:4/3;width:100%;height:100%}.project__info{padding-top:var(--space-3);max-width:46ch}.project__category{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.6875rem;font-weight:500}.project__title{font-family:var(--font-serif);margin-top:.5rem;font-size:clamp(1.375rem,2vw,1.875rem);font-weight:400;line-height:1.2}.project__meta{color:var(--text-muted);margin-top:.5rem;font-size:.8125rem}.project__desc{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:.9375rem;font-weight:300}.process{gap:var(--space-4);counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.process__step{padding-top:var(--space-4);border-top:1px solid var(--border);position:relative}.process__step:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;left:0}.process__num{font-family:var(--font-serif);color:var(--accent);margin-bottom:var(--space-2);font-size:1.5rem;font-weight:300;display:block}.process__title{margin-bottom:.5rem;font-size:1rem;font-weight:500}.process__body{color:var(--text-muted);max-width:34ch;font-size:.9375rem;font-weight:300}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2.5rem,6vw,5.5rem);display:grid}.split__media{background:var(--bg-soft);border-radius:2px;overflow:hidden}.split__media img{aspect-ratio:4/5;object-fit:cover;width:100%}.split__subtitle{margin-top:var(--space-5);margin-bottom:var(--space-3);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:.6875rem;font-weight:500}.chips{margin-bottom:var(--space-4);flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:1px solid var(--border);color:var(--text-muted);background:var(--bg);border-radius:2px;padding:.4375rem .875rem;font-size:.8125rem;font-weight:300}.specs{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2.5rem,6vw,5rem);display:grid}.specs__row{gap:var(--space-2);padding-block:var(--space-3);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,12rem) minmax(0,1fr);display:grid}.specs__row dt{letter-spacing:.02em;font-size:.8125rem;font-weight:500}.specs__row dd{color:var(--text-muted);font-size:.9375rem;font-weight:300}.specs__actions{gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.pricing{background:var(--bg-dark);color:var(--on-dark);padding-block:var(--section-y)}.pricing__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(2.5rem,6vw,5rem);display:grid}.pricing__process{border-bottom:1px solid #f4f2ed29;margin-bottom:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(2.5rem,5vw,4rem)}.process__heading{font-family:var(--font-serif);letter-spacing:-.01em;max-width:22ch;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(2rem,4vw,3.25rem);font-weight:300;line-height:1.12}.pricing__process .process__step{border-top-color:#f4f2ed38}.pricing__process .process__body{color:var(--on-dark-muted)}@media (width<=640px){.pricing__process .process__step{border-top-color:#0000;border-left-color:#f4f2ed38}}.pricing__figure{font-family:var(--font-serif);letter-spacing:-.02em;font-size:clamp(2.75rem,6vw,5rem);font-weight:300;line-height:1.05}.pricing__detail{padding-top:var(--space-2)}.pricing__list{padding-bottom:var(--space-3);color:var(--on-dark);border-bottom:1px solid #f4f2ed29;gap:.75rem;font-size:.9375rem;font-weight:300;display:grid}.pricing__note{margin-block:var(--space-3) var(--space-4);color:var(--on-dark-muted);max-width:48ch;font-size:.875rem;font-weight:300}.pricing__contact{margin-bottom:var(--space-4);padding-top:var(--space-3);color:var(--on-dark);border-top:1px solid #f4f2ed29;gap:.5rem;font-size:.9375rem;font-weight:300;display:grid}.pricing__contact span{letter-spacing:.12em;text-transform:uppercase;min-width:4.25rem;color:var(--accent);font-size:.6875rem;display:inline-block}.pricing__contact a{transition:border-color var(--dur) var(--ease);border-bottom:1px solid #f4f2ed47;text-decoration:none}.pricing__contact a:hover{border-color:var(--on-dark)}.form-wrap{max-width:960px}.form{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field{flex-direction:column;gap:.5rem;display:flex}.field--full{grid-column:1/-1}.field label{letter-spacing:.01em;font-size:.8125rem;font-weight:500}.field input[type=text],.field input[type=email],.field select,.field textarea{background:var(--bg);border:1px solid var(--border);width:100%;min-height:48px;transition:border-color var(--dur) var(--ease);border-radius:2px;padding:.75rem .9375rem;font-size:.9375rem}.field textarea{resize:vertical;min-height:9rem;line-height:1.6}.field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 1.15rem) calc(50% + 1px),calc(100% - .85rem) calc(50% + 1px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2.5rem}.field input::placeholder,.field textarea::placeholder{color:#a8a5a0}.field input:hover,.field select:hover,.field textarea:hover{border-color:#c9c5be}.field input[type=file]{border:1px dashed var(--border);width:100%;color:var(--text-muted);background:var(--bg-soft);cursor:pointer;border-radius:2px;padding:.75rem;font-size:.875rem}.field__hint{color:var(--text-muted);font-size:.8125rem;font-weight:300}.checkbox{margin-top:var(--space-2);flex-direction:row;align-items:center;gap:.75rem}.checkbox input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex:none}.checkbox label{color:var(--text-muted);cursor:pointer;font-size:.875rem;font-weight:400}.form__privacy{margin-top:var(--space-2);color:var(--text-muted);text-align:center;font-size:.8125rem;font-weight:300}.contact{border-top:1px solid var(--border-soft);background:var(--bg-soft)}.contact__inner{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding-block:clamp(3rem,6vw,4.5rem);display:flex}.contact__title{font-family:var(--font-serif);max-width:20ch;font-size:clamp(1.625rem,3vw,2.5rem);font-weight:300;line-height:1.15}.contact__list{gap:.5rem var(--space-4);margin-top:var(--space-3);color:var(--text-muted);flex-wrap:wrap;font-size:.9375rem;display:flex}.contact__list span{letter-spacing:.12em;text-transform:uppercase;min-width:4.25rem;color:var(--accent);font-size:.6875rem;display:inline-block}.contact__list a{border-bottom:1px solid var(--border);transition:border-color var(--dur) var(--ease);text-decoration:none}.contact__list a:hover{border-color:var(--text)}.footer{border-top:1px solid var(--border-soft);padding-top:clamp(3rem,6vw,4.5rem);padding-bottom:var(--space-4)}.footer__grid{gap:var(--space-5) var(--space-4);padding-bottom:var(--space-5);grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));display:grid}.footer__wordmark{font-family:var(--font-serif);margin-bottom:.75rem;font-size:1.375rem;font-weight:500}.footer__tag{color:var(--text-muted);font-size:.875rem;font-weight:300}.footer__heading{letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin-bottom:var(--space-2);font-size:.6875rem;font-weight:500}.footer__col ul{color:var(--text-muted);gap:.5rem;font-size:.875rem;font-weight:300;display:grid}.footer__col a{transition:color var(--dur) var(--ease);text-decoration:none}.footer__col a:hover{color:var(--text)}.footer__base{justify-content:space-between;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-soft);color:var(--text-muted);flex-wrap:wrap;font-size:.8125rem;font-weight:300;display:flex}.footer__base a{border-bottom:1px solid var(--border);text-decoration:none}.pieces__tier{font-family:var(--font-serif);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-soft);margin-top:var(--space-6);font-size:clamp(1.25rem,1.8vw,1.5rem);font-weight:400}.pieces__tier:first-of-type{margin-top:var(--space-5)}.pieces{margin-top:var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(2rem,3.5vw,3rem) clamp(1.25rem,2.5vw,2rem);list-style:none;display:grid}.piece__media{background:var(--bg-soft);aspect-ratio:3/4;border-radius:2px;display:block;overflow:hidden}.piece__media img{object-fit:cover;width:100%;height:100%}.piece__name{font-family:var(--font-serif);margin-top:var(--space-2);font-size:clamp(1.125rem,1.5vw,1.3125rem);font-weight:400;line-height:1.2}.piece__desc{color:var(--text-muted);margin-top:.375rem;font-size:.8125rem;line-height:1.5}.piece__price{margin-top:.625rem;font-size:.875rem;font-weight:500}.piece__price span{color:var(--text-muted);font-size:.75rem;font-weight:400}.pieces__actions{align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-5);flex-wrap:wrap;display:flex}@media (width<=1100px){.hero{grid-template-columns:55% 45%}.capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}.pieces{grid-template-columns:repeat(3,minmax(0,1fr))}.projects,.process{grid-template-columns:repeat(2,minmax(0,1fr))}.specs{grid-template-columns:minmax(0,1fr)}.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.nav__links{display:none}.pieces{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{justify-content:space-between}.hero{grid-template-columns:minmax(0,1fr);min-height:0}.hero__media{order:-1}.hero__media img{object-fit:cover;width:100%;max-width:none;height:420px;max-height:none}.hero__content{max-width:none;padding-block:clamp(2.5rem,8vw,4rem)}.strip__inner,.split{grid-template-columns:minmax(0,1fr)}.split__media img{aspect-ratio:4/3}.projects,.pricing__inner{grid-template-columns:minmax(0,1fr)}.contact__inner{align-items:flex-start}}@media (width<=640px){:root{--nav-h:62px}.hero__media img{height:340px}.nav__brand{font-size:1.125rem}.nav__brand-thin{margin-left:.25em}.capabilities{grid-template-columns:minmax(0,1fr)}.pieces{grid-template-columns:repeat(2,minmax(0,1fr))}.pieces__actions .btn{width:100%}.hero__facts{display:none}.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .btn{width:100%}.form{grid-template-columns:minmax(0,1fr)}.specs__row{grid-template-columns:minmax(0,1fr);gap:.25rem}.footer__grid{grid-template-columns:minmax(0,1fr)}.contact__inner .btn,.specs__actions .btn{width:100%}.process{grid-template-columns:minmax(0,1fr);gap:0}.process__step{padding:0 0 var(--space-4) var(--space-4);border-top:0;border-left:1px solid var(--border)}.process__step:last-child{padding-bottom:0}.process__step:before{top:.5rem;left:-4px}.process__num{margin-bottom:.5rem}.process__body{max-width:none}}@media (width<=400px){.nav__cta{padding-inline:.875rem;font-size:.75rem}}@media (width>=1600px){:root{--container:1440px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline-offset:1px;border-color:var(--accent)}.pricing a:focus-visible{outline-color:var(--on-dark)}::selection{background:var(--accent);color:#fff}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.link-arrow:hover:after{transform:none}}
