:root{--hm-bg:#fafaf7;--hm-bg-sunken:#f2f1ec;--hm-surface:#fff;--hm-surface-2:#fbfbf8;--hm-surface-hover:#f6f5f0;--hm-border:#14130f14;--hm-border-strong:#14130f24;--hm-text:#14130f;--hm-text-2:#555550;--hm-text-3:#8a8982;--hm-accent:#1f8f6b;--hm-accent-soft:#1f8f6b1a;--hm-accent-ink:#14704f;--hm-accent-solid:#1f8f6b;--hm-red:#dc2626;--hm-red-soft:#dc26261a;--hm-amber:#c2700b;--hm-amber-soft:#d977061f;--hm-blue:#2563eb;--hm-blue-soft:#2563eb1a;--hm-teal:#0f766e;--hm-teal-soft:#0f766e1a;--hm-radius-sm:6px;--hm-radius:10px;--hm-radius-lg:14px;--hm-radius-xl:22px;--hm-shadow-1:0 1px 0 #14130f0a, 0 1px 2px #14130f08;--hm-shadow-2:0 8px 24px #14130f0f, 0 2px 6px #14130f0a;--hm-shadow-3:0 24px 60px #14130f24, 0 6px 14px #14130f0f;--hm-ui:"Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--hm-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--hm-serif:"Instrument Serif", "Times New Roman", serif;--ink:#0b1b2b;--ink-2:#12283d}:root[data-theme=dark]{--hm-bg:#0d0e0c;--hm-bg-sunken:#08090a;--hm-surface:#16171a;--hm-surface-2:#1b1c1f;--hm-surface-hover:#202125;--hm-border:#ffffff14;--hm-border-strong:#ffffff29;--hm-text:#f2f1ec;--hm-text-2:#a5a49e;--hm-text-3:#98978f;--hm-accent:#38c29b;--hm-accent-soft:#38c29b24;--hm-accent-ink:#79dcbc;--hm-accent-solid:#1f8f6b;--hm-red:#f87171;--hm-red-soft:#f8717124;--hm-amber:#f59e0b;--hm-amber-soft:#f59e0b24;--hm-blue:#60a5fa;--hm-blue-soft:#60a5fa24;--hm-teal:#5eead4;--hm-teal-soft:#5eead424;--hm-shadow-1:0 1px 0 #0000004d;--hm-shadow-2:0 8px 24px #0006, 0 2px 6px #0000004d;--hm-shadow-3:0 24px 60px #0009, 0 6px 14px #0006}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--hm-bg);color:var(--hm-text);font-family:var(--hm-ui);font-size:var(--ms-body);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;line-height:1.55;transition:background .15s,color .15s}img,svg{max-width:100%;display:block}a{color:inherit}.container{max-width:1120px;margin:0 auto;padding:0 24px}:root{--ms-display:clamp(34px, 4.6vw, 56px);--ms-h2:clamp(28px, 4vw, 44px);--ms-h3:20px;--ms-lead:17px;--ms-body:15px;--ms-small:13px;--ms-label:11px;--ms-track-display:-.035em;--ms-track-h3:-.02em}.accent{color:var(--hm-accent);font-family:var(--hm-serif);font-style:italic;font-weight:400}.display{font-family:var(--hm-ui);font-size:var(--ms-display);letter-spacing:var(--ms-track-display);margin:0;font-weight:500;line-height:1.02}.section-title{font-family:var(--hm-ui);font-size:var(--ms-h2);letter-spacing:var(--ms-track-display);margin:0;font-weight:500;line-height:1.06}.card-title{font-family:var(--hm-ui);font-size:var(--ms-h3);letter-spacing:var(--ms-track-h3);margin:0;font-weight:500;line-height:1.25}.lead{color:var(--hm-text-2);font-size:var(--ms-lead);margin:0;line-height:1.55}.eyebrow{color:var(--hm-accent-ink);font-family:var(--hm-mono);font-size:var(--ms-label);letter-spacing:.1em;text-transform:uppercase;margin:0;font-weight:500;display:block}.section-head{flex-direction:column;gap:14px;max-width:640px;display:flex}.btn{border-radius:var(--hm-radius);font-family:var(--hm-ui);letter-spacing:-.005em;white-space:nowrap;border:0;align-items:center;gap:10px;font-size:14px;font-weight:500;text-decoration:none;transition:filter .18s,background .18s,transform .18s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--hm-text);color:var(--hm-bg);padding:6px 6px 6px 20px}.btn--accent{background:var(--hm-accent);color:#fff;padding:6px 6px 6px 20px}.btn--accent:hover,.btn--primary:hover{filter:brightness(1.08)}.btn--ghost{background:var(--hm-surface);color:var(--hm-text);border:1px solid var(--hm-border-strong);padding:11px 20px}.btn--ghost:hover{background:var(--hm-surface-hover)}.btn--sm{font-size:var(--ms-small)}.btn--sm.btn--primary,.btn--sm.btn--accent{padding:5px 5px 5px 16px}.btn-orb{background:var(--hm-accent);color:#0d0e0c;border-radius:999px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.btn--accent .btn-orb{background:var(--hm-bg);color:var(--hm-accent-ink)}.btn--sm .btn-orb{width:26px;height:26px}.btn-orb svg{width:15px;height:15px}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--hm-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}picture{display:contents}picture>source{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.js [data-reveal]{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.6,.2,1);transition-delay:var(--reveal-delay,0s);transform:translateY(16px)}.js [data-reveal].is-visible{opacity:1;transform:none}.card-hover{transition:transform .25s,border-color .25s,box-shadow .25s}.card-hover:hover{border-color:var(--hm-border-strong);box-shadow:var(--hm-shadow-2);transform:translateY(-3px)}.has-ambient{position:relative}.has-ambient>.container{z-index:1;position:relative}.ambient{pointer-events:none;position:absolute;inset:0;overflow:hidden}.ambient:before,.ambient:after{content:"";position:absolute;inset:0}.ambient:before{background:radial-gradient(ellipse 55% 45% at 50% -5%, color-mix(in srgb, var(--hm-accent) 11%, transparent), transparent 72%);animation:26s ease-in-out infinite alternate ambient-drift}.ambient:after{background-image:linear-gradient(to right, var(--hm-border) 1px, transparent 1px), linear-gradient(to bottom, var(--hm-border) 1px, transparent 1px);background-size:54px 54px;mask-image:radial-gradient(75% 62% at 50% 0,#000,#0000 78%)}@keyframes ambient-drift{0%{transform:translate(-2%)}to{transform:translate(2%,1.5%)}}html[lang=th]{--hm-ui:"IBM Plex Sans Thai", "Geist", ui-sans-serif, system-ui, sans-serif;--hm-serif:"Trirong", "Instrument Serif", serif;--hm-mono:"IBM Plex Sans Thai", "Geist Mono", monospace;--ms-track-display:-.01em}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3,html[lang=th] .display{line-height:1.35!important}.shot{mask-image:radial-gradient(105% 105% at 50% 45%,#000 42%,#0000 72%)}.tour-shot,.brief-shot,.row-shot,.included-shot{mask-image:radial-gradient(105% 105% at 50% 45%,#000 56%,#0000 84%)}.shot-fade{mask-image:linear-gradient(#000 58%,#0000 97%)}@supports not (mask-image:linear-gradient(#000, transparent)){.shot-fade{mask-image:none}}
