@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #f2f0eb;--paper-2: #e9e6df;--card: #fbfaf7;--ink: #121413;--ink-2: #3a3e3b;--ink-3: #5c605c;--line: #d9d5cc;--line-2: #b9b3a8;--night: #0e100f;--night-2: #161917;--night-3: #1f2321;--night-line: #2c302e;--on-night: #f2f0eb;--on-night-2: #a7aba6;--signal: #ff5a1f;--signal-ink: #a33508;--signal-soft: #ffe4d8;--ok: #1d6a4e;--ok-soft: #e0eee6;--info: #1e4f8c;--info-soft: #e3ebf6;--warn: #7f4300;--warn-soft: #fbead0;--danger: #b42318;--danger-soft: #fde7e4;--r-s: 6px;--r: 12px;--r-l: 20px;--shadow-1: 0 1px 0 rgba(18, 20, 19, .04), 0 10px 30px -18px rgba(18, 20, 19, .28);--shadow-2: 0 2px 0 rgba(18, 20, 19, .03), 0 24px 60px -30px rgba(18, 20, 19, .45);--font-display: "Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif;--font-sans: "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-io: cubic-bezier(.65, 0, .35, 1);--gutter: clamp(16px, 4vw, 48px);--maxw: 1320px;--header-h: 68px;--step--1: clamp(.8125rem, .79rem + .1vw, .875rem);--step-0: clamp(1rem, .97rem + .15vw, 1.0625rem);--step-1: clamp(1.125rem, 1.06rem + .3vw, 1.3125rem);--step-2: clamp(1.375rem, 1.22rem + .7vw, 1.875rem);--step-3: clamp(1.75rem, 1.45rem + 1.4vw, 2.75rem);--step-4: clamp(2.25rem, 1.7rem + 2.8vw, 4.25rem);--step-5: clamp(2.75rem, 1.6rem + 5.6vw, 7.25rem);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11"}img,svg,canvas,video{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}h1,h2,h3,h4{font-family:var(--font-display);font-weight:640;letter-spacing:-.03em;line-height:1.02;margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}::selection{background:var(--signal);color:var(--ink)}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:12px;z-index:100;padding:12px 16px;background:var(--ink);color:var(--paper);border-radius:var(--r-s);transform:translateY(-160%);transition:transform .2s var(--ease-out)}.skip-link:focus{transform:none}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.mono{font-family:var(--font-mono);font-feature-settings:"zero"}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.eyebrow:before{content:"";width:14px;height:1px;background:var(--signal)}@keyframes route-in{0%{opacity:0;transform:translateY(12px)}}.route{animation:route-in .55s var(--ease-out) both}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:var(--delay, 0ms)}[data-reveal].is-in{opacity:1;transform:none}.kinetic .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}.kinetic .w>span{display:inline-block;transform:translateY(105%);animation:word-rise 1s var(--ease-out) forwards;animation-delay:calc(var(--i) * 55ms + .12s)}@keyframes word-rise{to{transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--paper-2) 0%,var(--card) 50%,var(--paper-2) 100%);background-size:200% 100%;animation:shimmer 1.6s linear infinite;border-radius:var(--r)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}.kinetic .w>span{transform:none}}.btn{--bg: var(--ink);--fg: var(--paper);--bd: var(--ink);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:1px solid var(--bd);border-radius:var(--r-s);background:var(--bg);color:var(--fg);font-weight:600;font-size:.9375rem;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;isolation:isolate;overflow:hidden;transition:transform .25s var(--ease-out),background-color .25s,color .25s,border-color .25s}.btn:after{content:"";position:absolute;inset:0;z-index:-1;background:var(--hover, rgba(255, 255, 255, .12));transform:translateY(101%);transition:transform .45s var(--ease-out)}.btn:hover:after{transform:none}.btn:active{transform:scale(.98)}.btn svg{flex:none;transition:transform .35s var(--ease-out)}.btn:hover .ico-arrow{transform:translate(3px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--signal{--bg: var(--signal);--fg: var(--ink);--bd: var(--signal);--hover: rgba(18, 20, 19, .1)}.btn--ghost{--bg: transparent;--fg: var(--ink);--bd: var(--line-2);--hover: rgba(18, 20, 19, .06)}.btn--light{--bg: var(--paper);--fg: var(--ink);--bd: var(--paper);--hover: rgba(18, 20, 19, .08)}.btn--ghost-light{--bg: transparent;--fg: var(--on-night);--bd: rgba(242, 240, 235, .32);--hover: rgba(242, 240, 235, .1)}.btn--danger{--bg: var(--danger);--fg: #fff;--bd: var(--danger)}.btn--sm{min-height:40px;padding:0 14px;font-size:.875rem}.btn--lg{min-height:56px;padding:0 26px;font-size:1rem}.btn--block{width:100%}.btn--icon{width:44px;min-height:44px;padding:0}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field__label{font-size:.8125rem;font-weight:600;color:var(--ink-2)}.field__label .opt{font-weight:400;color:var(--ink-3)}.input,.select,.textarea{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--card);color:var(--ink);font-size:1rem;transition:border-color .2s,box-shadow .2s,background-color .2s}.textarea{min-height:132px;padding:12px 14px;resize:vertical;line-height:1.5}.select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%23121413' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.input::placeholder,.textarea::placeholder{color:#8a8d88}.input:hover,.select:hover,.textarea:hover{border-color:var(--ink-3)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #ff5a1f47}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger);background:#fffaf9}.field__hint{font-size:.8125rem;color:var(--ink-3)}.field__error{font-size:.8125rem;color:var(--danger);font-weight:500}.input--mono{font-family:var(--font-mono);font-size:.9375rem}.check{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.check input{appearance:none;flex:none;width:22px;height:22px;margin:0;border:1.5px solid var(--ink-3);border-radius:5px;background:var(--card);display:grid;place-items:center;transition:background-color .2s,border-color .2s}.check input:after{content:"";width:11px;height:6px;border-left:2px solid var(--paper);border-bottom:2px solid var(--paper);transform:rotate(-45deg) translate(1px,-1px) scale(0);transition:transform .25s var(--ease-out)}.check input:checked{background:var(--ink);border-color:var(--ink)}.check input:checked:after{transform:rotate(-45deg) translate(1px,-1px) scale(1)}.seg{display:inline-flex;padding:4px;gap:2px;border-radius:10px;background:var(--paper-2);border:1px solid var(--line)}.seg button{position:relative;min-height:40px;padding:0 16px;border:0;border-radius:7px;background:transparent;color:var(--ink-3);font-weight:600;font-size:.9rem;transition:background-color .25s,color .25s,box-shadow .25s}.seg button[aria-pressed=true],.seg button[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #1214131a}.seg button:hover:not([aria-pressed=true]):not([aria-selected=true]){color:var(--ink)}.seg--dark{background:#f2f0eb0f;border-color:var(--night-line)}.seg--dark button{color:var(--on-night-2)}.seg--dark button[aria-pressed=true],.seg--dark button[aria-selected=true]{background:var(--on-night);color:var(--ink)}.seg--dark button:hover:not([aria-pressed=true]):not([aria-selected=true]){color:var(--on-night)}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--ink-2);background:var(--card);white-space:nowrap}.tag--signal{background:var(--signal);border-color:var(--signal);color:var(--ink)}.tag--ink{background:var(--ink);border-color:var(--ink);color:var(--paper)}.tag--ok{background:var(--ok-soft);border-color:transparent;color:var(--ok)}.tag--warn{background:var(--warn-soft);border-color:transparent;color:var(--warn)}.tag--info{background:var(--info-soft);border-color:transparent;color:var(--info)}.chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--card);color:var(--ink);font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s}.chip:hover{border-color:var(--ink)}.chip[aria-pressed=true],.chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l)}.notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--r);font-size:.9rem;line-height:1.5;background:var(--warn-soft);color:#4d2a00}.notice--info{background:var(--info-soft);color:#163a66}.notice--error{background:var(--danger-soft);color:#7a1810}.notice svg{flex:none;margin-top:2px}.dialog{border:0;padding:0;max-width:min(480px,calc(100vw - 32px));width:100%;border-radius:var(--r-l);background:var(--card);color:var(--ink);box-shadow:var(--shadow-2)}.dialog::backdrop{background:#0e100f8c;backdrop-filter:blur(3px)}.dialog[open]{animation:route-in .35s var(--ease-out)}.dialog__body{padding:24px;display:flex;flex-direction:column;gap:12px}.dialog__actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:0 24px 24px}.toasts{position:fixed;z-index:90;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translate(-50%);display:flex;flex-direction:column;gap:8px;width:min(440px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r);background:var(--ink);color:var(--paper);font-size:.9375rem;box-shadow:var(--shadow-2);animation:toast-in .45s var(--ease-out)}.toast--error{background:var(--danger)}.toast__dot{width:8px;height:8px;border-radius:50%;background:var(--signal);flex:none}@keyframes toast-in{0%{opacity:0;transform:translateY(14px) scale(.98)}}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:56px 24px;border:1px dashed var(--line-2);border-radius:var(--r-l);color:var(--ink-2)}.empty h2,.empty h3{font-size:var(--step-2);color:var(--ink)}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:clamp(16px,2vw,28px)}.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-height:44px}.logo__bg{fill:var(--ink)}.logo__roof{fill:none;stroke:var(--paper);stroke-width:4;stroke-linejoin:round}.logo__base{stroke:var(--signal);stroke-width:4;stroke-linecap:round}.logo__word{font-family:var(--font-display);font-weight:700;font-size:1.375rem;letter-spacing:-.04em}.logo--light{color:var(--on-night)}.logo--light .logo__bg{fill:var(--on-night)}.logo--light .logo__roof{stroke:var(--night)}.site-header{position:sticky;top:0;z-index:50;height:var(--header-h);background:#f2f0ebdb;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:background-color .4s var(--ease-out),border-color .4s,color .4s}.site-header.is-scrolled{border-bottom-color:var(--line)}.site-header.is-over{position:fixed;left:0;right:0}.site-header.is-dark{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--on-night);border-bottom-color:transparent}.site-header.is-dark.is-scrolled{background:#0e100f8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.site-header__in{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-nav{display:flex;gap:4px}.site-nav__link{position:relative;padding:12px 14px;font-size:.9375rem;font-weight:500;text-decoration:none;color:inherit;opacity:.82;transition:opacity .2s}.site-nav__link:after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:1.5px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}.site-nav__link:hover,.site-nav__link[aria-current=page]{opacity:1}.site-nav__link:hover:after,.site-nav__link[aria-current=page]:after{transform:none}.site-header__end{display:flex;align-items:center;gap:8px}.site-header__menu{display:none}@media (max-width: 860px){.site-nav,.site-header__cta{display:none}.site-header__menu{display:inline-flex}}.mobile-menu{margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:0 var(--gutter) 32px;background:var(--night);color:var(--on-night)}.mobile-menu::backdrop{background:transparent}.mobile-menu[open]{display:flex;flex-direction:column;animation:route-in .35s var(--ease-out)}.mobile-menu__top{height:var(--header-h);display:flex;align-items:center;justify-content:space-between}.mobile-menu__nav{display:flex;flex-direction:column;margin-top:24px}.mobile-menu__nav a{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--night-line);font-family:var(--font-display);font-size:clamp(1.75rem,8vw,2.5rem);font-weight:600;letter-spacing:-.03em;text-decoration:none;color:var(--on-night);animation:route-in .6s var(--ease-out) both;animation-delay:calc(var(--i) * 45ms + 60ms)}.mobile-menu__nav a svg{color:var(--signal)}.site-footer{background:var(--night);color:var(--on-night-2);padding:72px 0 40px}.site-footer__in{display:grid;grid-template-columns:1.4fr 1fr;gap:48px}.site-footer__brand p{margin-top:16px;font-family:var(--font-display);font-size:var(--step-2);color:var(--on-night);max-width:18ch;line-height:1.15;letter-spacing:-.02em}.site-footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.site-footer__cols>div{display:flex;flex-direction:column;gap:4px}.site-footer__cols .eyebrow{margin-bottom:8px;color:var(--on-night-2)}.site-footer__cols a{color:var(--on-night);text-decoration:none;padding:8px 0}.site-footer__cols a:hover{color:var(--signal)}.site-footer__legal{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:28px;border-top:1px solid var(--night-line);font-size:.8125rem}@media (max-width: 720px){.site-footer__in{grid-template-columns:1fr}}
