@font-face{font-family:noto serif thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-serif-thai-400.woff2)format("woff2")}@font-face{font-family:noto serif thai;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/noto-serif-thai-500.woff2)format("woff2")}@font-face{font-family:noto serif thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/noto-serif-thai-600.woff2)format("woff2")}@font-face{font-family:noto serif thai;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-serif-thai-700.woff2)format("woff2")}@font-face{font-family:noto sans thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-thai-400.woff2)format("woff2")}@font-face{font-family:noto sans thai;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/noto-sans-thai-500.woff2)format("woff2")}@font-face{font-family:noto sans thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/noto-sans-thai-600.woff2)format("woff2")}@font-face{font-family:noto sans thai;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-sans-thai-700.woff2)format("woff2")}:root{--ocean-deep:#0c3343;--ocean:#1d6a8a;--ocean-soft:#2f8aa8;--foam:#f3efe6;--sand:#e7d8b8;--resin:#c2872f;--resin-soft:#e0a85a;--driftwood:#6a5a47;--composite:#45665a;--ink:#15212b;--paper:#fbf9f3;--line:#d8cfbf;--shadow:0 1px 0 rgba(12,51,67,.06),0 12px 32px -18px rgba(12,51,67,.28);--maxw:1120px;--reading:68ch;--radius:14px;--serif:'Noto Serif Thai','Noto Sans Thai',serif;--sans:'Noto Sans Thai',system-ui,sans-serif}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg,iframe{max-width:100%;height:auto;display:block}a{color:var(--ocean);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--resin);outline-offset:2px;border-radius:4px}h1,h2,h3,h4{font-family:var(--serif);font-weight:700;line-height:1.18;color:var(--ocean-deep);margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2rem,4.4vw,3.2rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:clamp(1.18rem,2vw,1.4rem)}p{margin:0 0 1rem}ul,ol{margin:0 0 1rem;padding-left:1.25rem}[x-cloak]{display:none!important}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ocean-deep);color:#fff;padding:.6rem 1rem;z-index:200;border-radius:0 0 8px 0}.skip-link:focus{left:0}.container{width:min(100% - 2.4rem,var(--maxw));margin-inline:auto}.section{padding:clamp(2.4rem,6vw,4.6rem)0}.section-lede{max-width:var(--reading);margin:0 0 1.6rem;color:var(--driftwood);font-size:1.04rem}.section-title{margin-bottom:.6rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.7rem 1.4rem;border-radius:999px;border:2px solid transparent;font-family:var(--sans);font-weight:600;font-size:1rem;cursor:pointer;text-decoration:none;line-height:1.1;transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:var(--ocean);color:#fff}.btn-primary:hover{background:var(--ocean-deep)}.btn-ghost{background:0 0;color:var(--ocean-deep);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ocean);color:var(--ocean)}.btn-large{min-height:52px;padding:.9rem 1.8rem;font-size:1.06rem}.btn-resin{background:var(--resin);color:#fff}.btn-resin:hover{background:#a86f23}.site-header{position:sticky;top:0;z-index:100;background:rgba(251,249,243,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.header-inner{width:min(100% - 2.4rem,var(--maxw));margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:.7rem 0 .9rem;text-align:center}.brand{display:inline-flex;align-items:center;gap:.55rem;color:var(--ocean-deep);font-weight:700}.brand:hover{text-decoration:none}.brand-mark{color:var(--resin);display:inline-flex}.brand-name{font-family:var(--serif);font-size:1.18rem}.header-contact{margin:0 0 .2rem;font-size:.82rem;color:var(--driftwood)}.header-contact a{color:var(--ocean);font-weight:600}.main-nav ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1.1rem;margin:0;padding:0}.main-nav a{color:var(--ink);padding:.35rem .5rem;border-radius:8px;font-weight:500;font-size:.96rem}.main-nav a[aria-current=page]{color:var(--ocean-deep);background:var(--foam)}.nav-toggle{display:none}.mobile-nav{display:none}.hero{position:relative;background:linear-gradient(180deg,var(--ocean-deep) 0%,#0a2735 100%);color:var(--foam);overflow:hidden}.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,rgba(194,135,47,.18),transparent 60%);pointer-events:none}.hero-inner{position:relative;z-index:1;width:min(100% - 2.4rem,880px);margin-inline:auto;padding:clamp(3rem,9vw,6.2rem)0 clamp(2.6rem,7vw,4.8rem);text-align:center}.hero-eyebrow{display:inline-block;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--resin-soft);margin-bottom:1rem;font-weight:600}.hero h1{color:#fff;margin-bottom:1.1rem}.hero-lede{font-size:clamp(1.05rem,2.2vw,1.3rem);color:rgba(243,239,230,.86);max-width:60ch;margin:0 auto 1.8rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.hero-wave{position:relative;z-index:1;margin-top:-1px}.hero-wave svg{display:block;width:100%;height:auto}.hero-contact{margin:1.2rem 0 0;font-size:.92rem;color:rgba(243,239,230,.8)}.hero-contact a{color:#fff;font-weight:600;text-decoration:underline}.page-header-contact{margin:.6rem 0 0;font-size:.92rem}.page-header-contact a{color:#fff;font-weight:600}.comp-media-left{padding:clamp(2.2rem,5.5vw,4rem)0}.comp-media-left .ml-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.4rem,4vw,3.2rem);align-items:center}.comp-media-left .ml-media{order:1}.comp-media-left .ml-text{order:2}.comp-media-left .ml-media img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%}.comp-media-left h2{margin-top:0}.comp-staggered{padding:clamp(2.2rem,5.5vw,4rem)0;background:var(--foam)}.staggered-list{list-style:none;margin:0;padding:0;display:grid;gap:1.2rem}.staggered-list li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.3rem 1.4rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.staggered-list li:nth-child(even){margin-left:2.4rem}.staggered-list .step-num{font-family:var(--serif);font-weight:700;font-size:1.5rem;color:var(--resin);line-height:1}.staggered-list h3{margin:0 0 .35rem}.staggered-list p{margin:0;color:var(--driftwood)}.comp-form-section{padding:clamp(2.2rem,5.5vw,4rem)0}.form-section-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(1.6rem,4vw,3.4rem);align-items:start}.form-section-text h2{margin-top:0}.form-section-text .contact-quick{list-style:none;margin:1.2rem 0 0;padding:0}.form-section-text .contact-quick li{margin-bottom:.5rem}.form-section-text .contact-quick a{font-weight:600}.inquiry-form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.3rem,3vw,2rem);box-shadow:var(--shadow)}.form-intro{margin-top:0;color:var(--driftwood)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}.field{display:flex;flex-direction:column;gap:.35rem}.field-wide{grid-column:1/-1}.field label{font-weight:600;font-size:.95rem}.field .req{color:var(--resin)}.field .opt{color:var(--driftwood);font-weight:400;font-size:.85rem}.field input,.field textarea{font-family:var(--sans);font-size:1rem;min-height:44px;padding:.6rem .75rem;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);width:100%}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field textarea:focus{outline:none;border-color:var(--ocean);box-shadow:0 0 0 3px rgba(29,106,138,.18)}.field-error{color:#a83232;font-size:.85rem;min-height:1rem}.field-error[data-active=false]{min-height:0}.field-consent{grid-column:1/-1}.consent-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}.consent-check input{min-height:auto;margin-top:.2rem;width:auto}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.2rem}.form-status{margin:0;font-weight:600;min-height:1.4rem}.form-status.is-pending{color:var(--ocean)}.form-status.is-success{color:var(--composite)}.form-status.is-error{color:#a83232}.form-fallback{margin:.9rem 0 0;font-size:.9rem;color:var(--driftwood)}.partners{padding:clamp(2.2rem,5.5vw,4rem)0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.partner-grid{list-style:none;margin:1.4rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.partner-chip{display:flex;align-items:center;justify-content:center;text-align:center;padding:.85rem .8rem;background:var(--foam);border:1px solid var(--line);border-radius:10px;font-weight:600;color:var(--ocean-deep);font-size:.95rem}.office-map{padding:clamp(2.2rem,5.5vw,4rem)0;background:var(--foam)}.map-figure{margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);box-shadow:var(--shadow)}.map-figure iframe{width:100%;height:360px;border:0;display:block}.map-figure figcaption{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;background:var(--paper);border-top:1px solid var(--line)}.map-label{color:var(--driftwood);font-size:.95rem}.map-link{font-weight:600}.featured-app{padding:clamp(2.2rem,5.5vw,4rem)0}.fa-card{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.4rem,4vw,2.8rem);align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2.2rem);box-shadow:var(--shadow)}.fa-media img{border-radius:10px;width:100%;box-shadow:var(--shadow)}.fa-text h2{margin-top:0}.fa-tags{list-style:none;margin:.6rem 0 1rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.fa-tags li{font-size:.82rem;padding:.25rem .6rem;border-radius:999px;background:var(--foam);color:var(--ocean-deep);border:1px solid var(--line)}.page-header{background:linear-gradient(180deg,var(--ocean-deep),#0a2735);color:var(--foam);padding:clamp(2.6rem,7vw,4.4rem)0 clamp(2rem,5vw,3rem)}.page-header .container{text-align:center}.page-header h1{color:#fff;margin-bottom:.6rem}.page-header p{color:rgba(243,239,230,.86);max-width:60ch;margin:0 auto}.prose{padding:clamp(2rem,5vw,3.4rem)0}.prose .container{max-width:760px}.prose h2{margin-top:2rem}.prose h2:first-child{margin-top:0}.prose ul,.prose ol{color:var(--driftwood)}.prose table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);padding:.6rem .7rem;text-align:left}.prose th{background:var(--foam);color:var(--ocean-deep)}.prose .callout{background:var(--foam);border-left:4px solid var(--resin);padding:1rem 1.2rem;border-radius:8px;margin:1.4rem 0}.prose .lead{font-size:1.1rem;color:var(--driftwood)}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.6rem}.svc-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.svc-card h3{margin-top:0;color:var(--ocean-deep)}.svc-card .svc-price{font-family:var(--serif);font-weight:700;color:var(--resin);font-size:1.05rem;margin:.4rem 0 .8rem}.svc-card ul{color:var(--driftwood);font-size:.95rem}.svc-compare{width:100%;border-collapse:collapse;margin-top:1.6rem;font-size:.95rem}.svc-compare th,.svc-compare td{border:1px solid var(--line);padding:.7rem .8rem;text-align:left}.svc-compare th{background:var(--foam);color:var(--ocean-deep)}.svc-compare tbody th{font-family:var(--sans);font-weight:600}.faq-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}.faq-list>li{background:var(--foam);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.4rem}.faq-list h3{margin:0 0 .4rem;font-size:1.1rem;color:var(--ocean-deep)}.faq-list p{margin:0;color:var(--driftwood)}.statement-band{padding:clamp(2.4rem,6vw,3.6rem)0;background:var(--ocean-deep);color:var(--foam);text-align:center}.statement-band .container{max-width:760px}.statement-band p{font-family:var(--serif);font-size:clamp(1.2rem,2.6vw,1.6rem);line-height:1.4;margin:0;color:#fff}.site-footer{background:#0a2735;color:rgba(243,239,230,.78);padding:clamp(2.4rem,5vw,3.4rem)0 2rem}.footer-inner.footer-centered{width:min(100% - 2.4rem,720px);margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem}.footer-brand-name{font-family:var(--serif);font-weight:700;color:#fff;font-size:1.15rem}.footer-address{font-style:normal;margin:0;display:flex;flex-direction:column;gap:.15rem}.footer-contact{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;justify-content:center}.footer-contact a{color:var(--resin-soft);font-weight:600}.footer-tax{margin:.2rem 0;font-size:.92rem;color:rgba(243,239,230,.7)}.footer-nav{display:flex;flex-wrap:wrap;gap:.4rem .8rem;justify-content:center;margin-top:.4rem;font-size:.92rem}.footer-nav a{color:rgba(243,239,230,.85)}.footer-nav a:hover{color:#fff}.footer-disclaimer{margin:1rem auto 0;max-width:60ch;font-size:.85rem;color:rgba(243,239,230,.6);border-top:1px solid rgba(243,239,230,.14);padding-top:.8rem}.footer-copy{margin:.6rem 0 0;font-size:.82rem;color:rgba(243,239,230,.5)}.consent-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:300;max-width:680px;margin-inline:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 48px -12px rgba(12,51,67,.4);padding:1.1rem 1.3rem}.consent-inner{display:flex;flex-direction:column;gap:.6rem}.consent-title{font-family:var(--serif);font-weight:700;color:var(--ocean-deep);margin:0;font-size:1.05rem}.consent-desc{margin:0;font-size:.92rem;color:var(--driftwood)}.consent-desc a{font-weight:600}.consent-actions{display:flex;gap:.6rem;justify-content:flex-end;flex-wrap:wrap}.notfound{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1rem;padding:3rem 1.2rem}.notfound .nf-code{font-family:var(--serif);font-size:clamp(3rem,12vw,6rem);color:var(--ocean-deep);line-height:1}@media(max-width:768px){.comp-media-left .ml-grid{grid-template-columns:1fr;gap:1.4rem}.comp-media-left .ml-media{order:1}.comp-media-left .ml-text{order:2}.form-section-grid{grid-template-columns:1fr;gap:1.6rem}.fa-card{grid-template-columns:1fr}.svc-grid{grid-template-columns:1fr;gap:1rem}.partner-grid{grid-template-columns:repeat(2,1fr)}.staggered-list li:nth-child(even){margin-left:0}}@media(max-width:600px){body{font-size:16px}.form-grid{grid-template-columns:1fr}.consent-banner{left:.6rem;right:.6rem;bottom:.6rem;padding:.9rem 1rem}.consent-actions{justify-content:stretch}.consent-actions .btn{flex:auto}}@media(max-width:720px){.header-inner{flex-direction:row;justify-content:space-between;align-items:center;text-align:left}.header-contact{display:none}.main-nav{display:none}.nav-toggle{display:inline-flex;flex-direction:column;gap:5px;background:0 0;border:1px solid var(--line);border-radius:10px;padding:.5rem .6rem;cursor:pointer}.nav-toggle span{width:22px;height:2px;background:var(--ocean-deep);display:block;border-radius:2px}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{display:block}.mobile-nav[hidden]{display:none}.mobile-nav ul{list-style:none;margin:0;padding:.6rem 1.2rem 1rem;display:flex;flex-direction:column;gap:.2rem}.mobile-nav a{display:block;padding:.7rem .6rem;border-radius:8px;color:var(--ink);font-weight:500}.mobile-nav a:hover{background:var(--foam);text-decoration:none}}@media(max-width:380px){.container{width:min(100% - 1.6rem,var(--maxw))}.hero-inner{padding:2.4rem 0 2.2rem}.partner-grid{grid-template-columns:1fr}.map-figure iframe{height:300px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}.btn:hover{transform:none}*{animation-duration:.001ms!important;animation-iteration-count:1!important}}