.ContactForm-module__4CUZdq__contactForm{flex-direction:column;gap:20px;display:flex}.ContactForm-module__4CUZdq__contactFormRow{grid-template-columns:1fr;gap:16px;display:grid}.ContactForm-module__4CUZdq__contactField{flex-direction:column;gap:6px;display:flex}.ContactForm-module__4CUZdq__contactLabel{font-family:var(--font-body);color:var(--color-brand-ink);letter-spacing:.01em;font-size:13px;font-weight:500}.ContactForm-module__4CUZdq__contactRequired{color:var(--color-brand-terracotta)}.ContactForm-module__4CUZdq__contactInput,.ContactForm-module__4CUZdq__contactSelect,.ContactForm-module__4CUZdq__contactTextarea{font-family:var(--font-body);color:var(--color-brand-ink);background:var(--bg-page);border:1px solid var(--color-brand-line);border-radius:var(--radius-sm);width:100%;transition:border-color var(--dur-fast) var(--ease-soft), box-shadow var(--dur-fast) var(--ease-soft);appearance:none;outline:none;padding:12px 14px;font-size:15px}.ContactForm-module__4CUZdq__contactInput:focus,.ContactForm-module__4CUZdq__contactSelect:focus,.ContactForm-module__4CUZdq__contactTextarea:focus{border-color:var(--color-brand-mocha);box-shadow:var(--shadow-focus)}.ContactForm-module__4CUZdq__contactInput::placeholder,.ContactForm-module__4CUZdq__contactTextarea::placeholder{color:var(--fg-3)}.ContactForm-module__4CUZdq__contactTextarea{resize:vertical;min-height:110px}.ContactForm-module__4CUZdq__contactSelect{cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%239b8975' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.ContactForm-module__4CUZdq__contactInputError{border-color:#c0392b!important}.ContactForm-module__4CUZdq__contactInputError:focus{box-shadow:0 0 0 3px #c0392b26!important}.ContactForm-module__4CUZdq__contactFieldError{font-family:var(--font-body);color:#c0392b;margin:0;font-size:12px}.ContactForm-module__4CUZdq__contactError{font-family:var(--font-body);color:#c0392b;border-radius:var(--radius-sm);background:#fdf0ee;border:1px solid #f5c6c0;margin:0;padding:12px 16px;font-size:14px}.ContactForm-module__4CUZdq__contactFormFooter{flex-direction:column;gap:12px;margin-top:4px;display:flex}.ContactForm-module__4CUZdq__contactSubmit{justify-content:center;width:100%}.ContactForm-module__4CUZdq__contactPrivacy{font-family:var(--font-body);color:var(--fg-3);text-align:center;margin:0;font-size:12px}.ContactForm-module__4CUZdq__contactSpinner{border:2px solid #faf6f059;border-top-color:#faf6f0e6;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite ContactForm-module__4CUZdq__spin;display:inline-block}@keyframes ContactForm-module__4CUZdq__spin{to{transform:rotate(360deg)}}.ContactForm-module__4CUZdq__contactSuccess{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:40px 20px;display:flex}.ContactForm-module__4CUZdq__contactSuccessIcon{color:#1a5c30;background:#effaf3;border:2px solid #b7e5c8;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:22px;display:inline-flex}.ContactForm-module__4CUZdq__contactSuccessTitle{font-family:var(--font-serif);text-transform:lowercase;color:var(--color-brand-ink);letter-spacing:-.015em;margin:0;font-size:28px;font-weight:400}.ContactForm-module__4CUZdq__contactSuccessBody{font-family:var(--font-body);color:var(--fg-2);max-width:40ch;margin:0;font-size:16px;line-height:1.65}.ContactForm-module__4CUZdq__contactSuccessNote{font-family:var(--font-body);color:var(--fg-2);opacity:.7;max-width:40ch;margin:0;font-size:13px;line-height:1.65}.ContactForm-module__4CUZdq__contactResetBtn{font-family:var(--font-body);color:var(--fg-3);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--color-brand-line);text-decoration-color:var(--color-brand-line);cursor:pointer;transition:color var(--dur-base) var(--ease-soft);background:0 0;border:0;padding:0;font-size:14px}.ContactForm-module__4CUZdq__contactResetBtn:hover{color:var(--color-brand-mocha);text-decoration-color:currentColor}@media (min-width:768px){.ContactForm-module__4CUZdq__contactFormRow{grid-template-columns:1fr 1fr}}
.page-module__KmWtaa__contactHero{background:var(--color-brand-paper);border-bottom:1px solid var(--color-brand-line);padding:48px 0 40px}.page-module__KmWtaa__contactHeroTitle{font-family:var(--font-serif);letter-spacing:-.035em;text-transform:lowercase;color:var(--color-brand-ink);margin:20px 0 0;font-size:clamp(38px,6vw,64px);font-weight:300;line-height:1}.page-module__KmWtaa__contactHeroSub{font-family:var(--font-body);color:var(--fg-2);max-width:50ch;margin:20px 0 0;font-size:15px;line-height:1.65}.page-module__KmWtaa__contactBody{padding:48px 0 80px}.page-module__KmWtaa__contactGrid{grid-template-columns:1fr;align-items:start;gap:32px;display:grid}.page-module__KmWtaa__contactCard{border:1px solid var(--color-brand-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;padding:28px 24px 32px}.page-module__KmWtaa__contactCardTitle{font-family:var(--font-serif);text-transform:lowercase;color:var(--color-brand-ink);letter-spacing:-.015em;margin:0 0 8px;font-size:28px;font-weight:400;line-height:1.1}.page-module__KmWtaa__contactCardDesc{font-family:var(--font-body);color:var(--fg-3);margin:0 0 28px;font-size:14px;line-height:1.6}.page-module__KmWtaa__contactSidebar{flex-direction:column;gap:16px;display:flex;position:static}.page-module__KmWtaa__contactZaloCard{border-radius:var(--radius-lg);background:#effaf3;border:1px solid #b7e5c8;flex-direction:column;align-items:flex-start;gap:12px;padding:24px 24px 20px;display:flex}.page-module__KmWtaa__contactZaloLabel{font-family:var(--font-body);color:#1a5c30;margin:0;font-size:14px}.page-module__KmWtaa__contactZaloBtn{color:#fff;border-radius:var(--radius-md);font-family:var(--font-body);transition:background var(--dur-base) var(--ease-soft), transform var(--dur-base) var(--ease-soft);background:#06c755;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.page-module__KmWtaa__contactZaloBtn:hover{color:#fff;background:#05b34c;text-decoration:none;transform:translateY(-1px)}.page-module__KmWtaa__contactZaloNote{font-family:var(--font-body);color:#2d7a50;margin:0;font-size:12px}.page-module__KmWtaa__contactInfoCard{border:1px solid var(--color-brand-line);border-radius:var(--radius-lg);background:#fff;padding:24px}.page-module__KmWtaa__contactInfoTitle{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);margin:0 0 16px;font-size:12px;font-weight:600}.page-module__KmWtaa__contactInfoList{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.page-module__KmWtaa__contactInfoList li{font-family:var(--font-body);color:var(--fg-2);align-items:center;gap:10px;font-size:14px;display:flex}.page-module__KmWtaa__contactInfoList a{color:var(--color-brand-mocha);font-weight:500;text-decoration:none}.page-module__KmWtaa__contactInfoList a:hover{text-decoration:underline}.page-module__KmWtaa__contactInfoIcon{color:var(--color-brand-mocha);flex-shrink:0;align-items:center;display:inline-flex}.page-module__KmWtaa__contactPromiseCard{background:var(--color-brand-paper);border:1px solid var(--color-brand-line);border-radius:var(--radius-lg);padding:24px}.page-module__KmWtaa__contactPromiseTitle{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);margin:0 0 16px;font-size:12px;font-weight:600}.page-module__KmWtaa__contactPromiseList{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.page-module__KmWtaa__contactPromiseList li{font-family:var(--font-body);color:var(--fg-2);align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.page-module__KmWtaa__contactPromiseCheck{color:var(--color-brand-terracotta);flex-shrink:0;align-items:center;margin-top:2px;display:inline-flex}@media (min-width:768px){.page-module__KmWtaa__contactHero{padding:72px 0 56px}.page-module__KmWtaa__contactHeroSub{font-size:17px}.page-module__KmWtaa__contactBody{padding:64px 0 120px}.page-module__KmWtaa__contactGrid{grid-template-columns:1fr;gap:40px}}@media (min-width:1024px){.page-module__KmWtaa__contactGrid{grid-template-columns:1fr 380px;gap:56px}.page-module__KmWtaa__contactSidebar{position:sticky;top:88px}.page-module__KmWtaa__contactCard{padding:40px 40px 44px}}
