.ai-icon[data-v-2ebada8d]{display:block;flex-shrink:0}.ai-panel[data-v-c2a9280b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:.75rem;background:var(--color-overlay)}.ai-panel__dialog[data-v-c2a9280b]{width:min(540px,100%);max-height:min(78vh,640px);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 4px);background:var(--color-surface);color:var(--color-text)}.ai-panel__dialog--chat[data-v-c2a9280b]{height:min(78vh,640px)}.ai-panel__top[data-v-c2a9280b]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .7rem .2rem}.ai-panel__top-spacer[data-v-c2a9280b]{width:1.75rem;height:1.75rem}.ai-panel__text-btn[data-v-c2a9280b],.ai-panel__close[data-v-c2a9280b],.ai-panel__card[data-v-c2a9280b],.ai-panel__tool[data-v-c2a9280b],.ai-panel__send[data-v-c2a9280b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;cursor:pointer}.ai-panel__text-btn[data-v-c2a9280b]{min-height:1.75rem;padding:.25rem .55rem;border:1px solid var(--color-border);border-radius:var(--radius);background:transparent;color:var(--color-text-muted);font-size:.75rem;font-weight:500;transition:color var(--motion-fast),border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.ai-panel__text-btn[data-v-c2a9280b]:hover,.ai-panel__text-btn[data-v-c2a9280b]:focus-visible{color:var(--color-text);border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 8%,transparent);outline:none}.ai-panel__text-btn[data-v-c2a9280b]:active,.ai-panel__close[data-v-c2a9280b]:active,.ai-panel__card[data-v-c2a9280b]:active,.ai-panel__tool[data-v-c2a9280b]:active,.ai-panel__send[data-v-c2a9280b]:active{transform:scale(.96)}.ai-panel__close[data-v-c2a9280b]{width:1.75rem;height:1.75rem;border:1px solid var(--color-border);border-radius:4px;background:transparent;color:var(--color-text);font-size:1.05rem;line-height:1;transition:background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.ai-panel__close[data-v-c2a9280b]:hover,.ai-panel__close[data-v-c2a9280b]:focus-visible{border-color:var(--color-button);background:var(--color-accent-soft);outline:none}.ai-panel__home[data-v-c2a9280b]{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;flex:1;min-height:0;overflow:auto;padding:.2rem 1rem 1rem}.ai-panel__hero[data-v-c2a9280b]{display:grid;justify-items:center;text-align:center;padding:.1rem 0 0}.ai-panel__greeting[data-v-c2a9280b]{margin:0;max-width:16ch;font-family:var(--font-family);font-size:clamp(1.15rem,2.4vw,1.4rem);font-weight:600;line-height:1.2;letter-spacing:-.02em}.ai-panel__composer[data-v-c2a9280b]{display:grid;gap:.35rem;padding:.6rem .7rem .5rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 4px);background:var(--color-bg);transition:border-color var(--motion-fast),background-color var(--motion-fast)}.ai-panel__composer[data-v-c2a9280b]:focus-within{border-color:var(--color-button);background:var(--color-surface)}.ai-panel__composer--hero[data-v-c2a9280b]{padding:.65rem .7rem .5rem;flex-shrink:0}.ai-panel__textarea[data-v-c2a9280b]{width:100%;min-height:2.4rem;resize:none;border:0;background:transparent;color:var(--color-text);font:inherit;font-size:.92rem;line-height:1.45;padding:0}.ai-panel__dialog--chat .ai-panel__textarea[data-v-c2a9280b]{min-height:2.1rem}.ai-panel__textarea[data-v-c2a9280b]:focus{outline:none}.ai-panel__textarea[data-v-c2a9280b]::placeholder{color:var(--color-text-muted)}.ai-panel__composer-bar[data-v-c2a9280b]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:2.1rem}.ai-panel__composer-spacer[data-v-c2a9280b]{flex:1;min-width:0}.ai-panel__composer-actions[data-v-c2a9280b]{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto}.ai-panel__tool[data-v-c2a9280b],.ai-panel__send[data-v-c2a9280b]{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border:0;border-radius:6px;transition:color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.ai-panel__tool[data-v-c2a9280b]{background:transparent;color:var(--color-text-muted)}.ai-panel__tool[data-v-c2a9280b]:hover,.ai-panel__tool[data-v-c2a9280b]:focus-visible{color:var(--color-button);background:color-mix(in srgb,var(--color-button) 10%,transparent);outline:none}.ai-panel__tool--active[data-v-c2a9280b]{color:var(--color-button);background:color-mix(in srgb,var(--color-button) 14%,transparent)}.ai-panel__send[data-v-c2a9280b]{background:var(--color-button);color:var(--color-button-contrast)}.ai-panel__send[data-v-c2a9280b]:hover,.ai-panel__send[data-v-c2a9280b]:focus-visible{background:var(--color-button-hover);outline:none}.ai-panel__send[data-v-c2a9280b]:active{background:var(--color-button-active)}.ai-panel__tool[data-v-c2a9280b]:disabled,.ai-panel__send[data-v-c2a9280b]:disabled,.ai-panel__card[data-v-c2a9280b]:disabled,.ai-panel__text-btn[data-v-c2a9280b]:disabled{opacity:.45;cursor:not-allowed;transform:none}.ai-panel__cards[data-v-c2a9280b]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;flex-shrink:0}.ai-panel__card[data-v-c2a9280b]{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.55rem;min-height:4.15rem;padding:.6rem .6rem .55rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-accent-soft);color:var(--color-text);text-align:left;transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.ai-panel__card[data-v-c2a9280b]:hover,.ai-panel__card[data-v-c2a9280b]:focus-visible{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 8%,var(--color-surface));outline:none}.ai-panel__card-icon[data-v-c2a9280b]{display:inline-flex;color:var(--color-button)}.ai-panel__card-label[data-v-c2a9280b]{font-size:.8rem;font-weight:600;line-height:1.3;color:var(--color-text-muted)}.ai-panel__card:hover .ai-panel__card-label[data-v-c2a9280b],.ai-panel__card:focus-visible .ai-panel__card-label[data-v-c2a9280b]{color:var(--color-text)}.ai-panel__messages[data-v-c2a9280b]{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.55rem;padding:.35rem 1rem .75rem;scroll-behavior:smooth}.ai-panel__thread[data-v-c2a9280b]{display:flex;flex-direction:column;gap:.55rem}.ai-panel__message[data-v-c2a9280b]{max-width:86%;padding:.5rem .7rem;border-radius:var(--radius)}.ai-panel__message p[data-v-c2a9280b],.ai-panel__message-body[data-v-c2a9280b]{margin:0;font-size:.88rem;line-height:1.5}.ai-panel__message p[data-v-c2a9280b]{white-space:pre-wrap}.ai-panel__message-body[data-v-c2a9280b] p{margin:0 0 .55rem}.ai-panel__message-body[data-v-c2a9280b] p:last-child{margin-bottom:0}.ai-panel__message-body[data-v-c2a9280b] ul,.ai-panel__message-body[data-v-c2a9280b] ol{margin:.3rem 0 .55rem;padding-left:1.15rem}.ai-panel__message-body[data-v-c2a9280b] li{margin:.15rem 0}.ai-panel__message-body[data-v-c2a9280b] strong{font-weight:700}.ai-panel__message-body[data-v-c2a9280b] em{font-style:italic}.ai-panel__message-body[data-v-c2a9280b] a{color:var(--color-link);text-decoration:underline;text-underline-offset:.12em;transition:color var(--motion-fast)}.ai-panel__message-body[data-v-c2a9280b] a:hover,.ai-panel__message-body[data-v-c2a9280b] a:focus-visible{color:var(--color-button);outline:none}.ai-panel__message-body[data-v-c2a9280b] code{padding:.08rem .28rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-accent-soft);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}.ai-panel__message--user[data-v-c2a9280b]{align-self:flex-end;border:1px solid color-mix(in srgb,var(--color-button) 28%,var(--color-border));background:color-mix(in srgb,var(--color-button) 10%,var(--color-bg))}.ai-panel__message--assistant[data-v-c2a9280b]{align-self:flex-start;border:1px solid var(--color-border);background:var(--color-bg)}.ai-panel__message--streaming .ai-panel__message-body[data-v-c2a9280b]:after{content:"";display:inline-block;width:.36rem;height:1em;margin-left:.15rem;vertical-align:-.12em;background:var(--color-button);animation:ai-caret-c2a9280b .9s steps(1,end) infinite}.ai-panel__thinking[data-v-c2a9280b]{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;color:var(--color-text-muted);font-size:.82rem;line-height:1.4}.ai-panel__thinking-dots[data-v-c2a9280b]{display:inline-flex;align-items:center;gap:.22rem}.ai-panel__thinking-dots span[data-v-c2a9280b]{width:.34rem;height:.34rem;border-radius:50%;background:var(--color-button);animation:ai-thinking-dot-c2a9280b 1.05s ease-in-out infinite}.ai-panel__thinking-dots span[data-v-c2a9280b]:nth-child(2){animation-delay:.15s}.ai-panel__thinking-dots span[data-v-c2a9280b]:nth-child(3){animation-delay:.3s}.ai-panel__footer[data-v-c2a9280b]{display:grid;gap:.4rem;padding:.6rem 1rem .9rem;border-top:1px solid var(--color-border)}.ai-panel__error[data-v-c2a9280b],.ai-panel__note[data-v-c2a9280b]{margin:0;font-size:.85rem;line-height:1.4}.ai-panel__note[data-v-c2a9280b]{color:var(--color-text-muted)}.ai-panel__error[data-v-c2a9280b]{color:var(--color-error)}.visually-hidden[data-v-c2a9280b]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ai-modal-enter-active[data-v-c2a9280b],.ai-modal-leave-active[data-v-c2a9280b]{transition:opacity var(--motion-panel)}.ai-modal-enter-active .ai-panel__dialog[data-v-c2a9280b],.ai-modal-leave-active .ai-panel__dialog[data-v-c2a9280b]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.ai-modal-enter-from[data-v-c2a9280b],.ai-modal-leave-to[data-v-c2a9280b]{opacity:0}.ai-modal-enter-from .ai-panel__dialog[data-v-c2a9280b],.ai-modal-leave-to .ai-panel__dialog[data-v-c2a9280b]{opacity:0;transform:translateY(10px) scale(.985)}.ai-msg-move[data-v-c2a9280b],.ai-msg-enter-active[data-v-c2a9280b],.ai-msg-leave-active[data-v-c2a9280b]{transition:opacity .28s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1)}.ai-msg-enter-from[data-v-c2a9280b],.ai-msg-leave-to[data-v-c2a9280b]{opacity:0}.ai-panel__message--user.ai-msg-enter-from[data-v-c2a9280b],.ai-panel__message--user.ai-msg-leave-to[data-v-c2a9280b]{transform:translate3d(12px,8px,0) scale(.97)}.ai-panel__message--assistant.ai-msg-enter-from[data-v-c2a9280b],.ai-panel__message--assistant.ai-msg-leave-to[data-v-c2a9280b]{transform:translate3d(-12px,8px,0) scale(.97)}.ai-msg-leave-active[data-v-c2a9280b]{position:absolute}.ai-think-enter-active[data-v-c2a9280b],.ai-think-leave-active[data-v-c2a9280b]{transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.ai-think-enter-from[data-v-c2a9280b],.ai-think-leave-to[data-v-c2a9280b]{opacity:0;transform:translate3d(0,6px,0)}@media(max-width:720px){.ai-panel__cards[data-v-c2a9280b]{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-panel__home[data-v-c2a9280b],.ai-panel__messages[data-v-c2a9280b],.ai-panel__footer[data-v-c2a9280b]{padding-left:1rem;padding-right:1rem}}@media(max-width:640px){.ai-panel[data-v-c2a9280b]{padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left))}.ai-panel__dialog[data-v-c2a9280b]{width:100%;max-height:calc(100vh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ai-panel__dialog--chat[data-v-c2a9280b]{height:calc(100vh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ai-panel__card[data-v-c2a9280b]{min-height:3.9rem}.ai-panel__greeting[data-v-c2a9280b]{max-width:22ch}.ai-panel__message[data-v-c2a9280b]{max-width:92%}}@keyframes ai-caret-c2a9280b{0%,45%{opacity:1}55%,to{opacity:0}}@keyframes ai-thinking-dot-c2a9280b{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.ai-modal-enter-active[data-v-c2a9280b],.ai-modal-leave-active[data-v-c2a9280b],.ai-modal-enter-active .ai-panel__dialog[data-v-c2a9280b],.ai-modal-leave-active .ai-panel__dialog[data-v-c2a9280b],.ai-msg-move[data-v-c2a9280b],.ai-msg-enter-active[data-v-c2a9280b],.ai-msg-leave-active[data-v-c2a9280b],.ai-think-enter-active[data-v-c2a9280b],.ai-think-leave-active[data-v-c2a9280b]{transition:none}.ai-modal-enter-from .ai-panel__dialog[data-v-c2a9280b],.ai-modal-leave-to .ai-panel__dialog[data-v-c2a9280b],.ai-msg-enter-from[data-v-c2a9280b],.ai-msg-leave-to[data-v-c2a9280b],.ai-think-enter-from[data-v-c2a9280b],.ai-think-leave-to[data-v-c2a9280b]{transform:none}.ai-panel__thinking-dots span[data-v-c2a9280b],.ai-panel__message--streaming .ai-panel__message-body[data-v-c2a9280b]:after{animation:none}}.footer[data-v-820bd403]{margin-top:auto;background:var(--color-footer-bg);color:var(--color-footer-text);border-top:1px solid var(--color-footer-border)}.footer__inner[data-v-820bd403]{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:100%;min-height:4.25rem;padding:1.15rem 1.5rem;box-sizing:border-box}.footer__group[data-v-820bd403]{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .7rem;min-width:0;flex:1 1 0}.footer__group--end[data-v-820bd403]{justify-content:flex-end}.footer__link[data-v-820bd403]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:.72rem;font-weight:300;letter-spacing:.02em;line-height:1.2;text-decoration:none;cursor:pointer;transition:color var(--motion-fast),opacity var(--motion-fast)}.footer__link[data-v-820bd403]:hover,.footer__link[data-v-820bd403]:focus-visible{color:var(--color-footer-link-hover);outline:none}.footer__link[data-v-820bd403]:active{opacity:.8}.footer__sep[data-v-820bd403]{color:var(--color-footer-sep);font-size:.72rem;font-weight:300;line-height:1;-webkit-user-select:none;user-select:none}.footer__copy[data-v-820bd403]{margin:0;flex:0 1 auto;text-align:center;color:var(--color-footer-text);font-size:.72rem;font-weight:300;letter-spacing:.02em;line-height:1.2;white-space:normal}@media(max-width:1100px){.footer__inner[data-v-820bd403]{flex-direction:column;justify-content:center;gap:.85rem;min-height:0;padding:1.25rem 1rem max(1.25rem,env(safe-area-inset-bottom))}.footer__group[data-v-820bd403],.footer__group--end[data-v-820bd403]{flex:0 1 auto;justify-content:center;text-align:center}.footer__copy[data-v-820bd403]{order:0;white-space:normal}.footer__link[data-v-820bd403],.footer__sep[data-v-820bd403]{white-space:normal}}.ai[data-v-e3c4c74e]{position:relative;overflow:hidden;border-radius:999px;flex:0 0 auto}.ai__button[data-v-e3c4c74e]{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--color-button);cursor:pointer;isolation:isolate;overflow:hidden;clip-path:inset(0 round 999px);white-space:nowrap;transition:transform var(--motion-fast)}.ai__button[data-v-e3c4c74e]:hover,.ai__button[data-v-e3c4c74e]:focus-visible{transform:translateY(-1px);outline:none}.ai__button[data-v-e3c4c74e]:active{transform:scale(.98)}.ai__border[data-v-e3c4c74e]{position:absolute;top:-28%;right:-28%;bottom:-28%;left:-28%;z-index:0;background:conic-gradient(from 0deg,var(--color-button),#888888,var(--color-button),#cccccc,var(--color-button));animation:ai-spin-e3c4c74e 2.8s linear infinite}.ai__button[data-v-e3c4c74e]:after{content:"";position:absolute;top:1.5px;right:1.5px;bottom:1.5px;left:1.5px;z-index:1;border-radius:inherit;background:var(--color-surface)}.ai__inner[data-v-e3c4c74e]{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.2rem}.ai__spark[data-v-e3c4c74e]{width:.75rem;height:.75rem;flex-shrink:0;background:var(--color-button);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}.ai__label[data-v-e3c4c74e]{font-size:.88rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}@media(max-width:640px){.ai__button[data-v-e3c4c74e]{min-height:38px;min-width:38px}.ai__inner[data-v-e3c4c74e]{padding:.45rem;gap:0}.ai__label[data-v-e3c4c74e]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@keyframes ai-spin-e3c4c74e{to{transform:rotate(360deg)}}.brand[data-v-6303ea53]{display:inline-flex;align-items:center;justify-content:center;color:inherit;text-decoration:none;line-height:0;transition:opacity var(--motion-fast)}.brand__img[data-v-6303ea53]{display:block;height:var(--header-logo-height, 4.75rem);width:auto;max-width:min(46vw,11rem);object-fit:contain}.brand[data-v-6303ea53]:hover,.brand[data-v-6303ea53]:focus-visible{opacity:.9;outline:none}.brand[data-v-6303ea53]:active{opacity:1}@media(max-width:1100px){.brand__img[data-v-6303ea53]{height:4.05rem}}@media(max-width:900px){.brand__img[data-v-6303ea53]{height:2.4rem;max-width:100%}}.flag[data-v-ab25e913]{display:block;width:22px;height:15px;border-radius:2px;box-shadow:inset 0 0 0 1px #33333326}.flag--placeholder[data-v-ab25e913]{background:var(--color-border)}.lang[data-v-20684817]{position:relative}.lang__trigger[data-v-20684817]{display:inline-flex;align-items:center;gap:.45rem;min-height:38px;padding:.35rem .75rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.lang__trigger[data-v-20684817]:hover,.lang__trigger[data-v-20684817]:focus-visible{border-color:var(--color-accent);outline:none}.lang__trigger[data-v-20684817]:active{transform:scale(.98)}.lang__code[data-v-20684817]{font-size:.9rem;font-weight:700;letter-spacing:.02em}.lang__chevron[data-v-20684817]{width:.42rem;height:.42rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:transform var(--motion-fast)}.lang__chevron.is-open[data-v-20684817]{transform:rotate(225deg) translateY(-1px)}.lang__menu[data-v-20684817]{position:absolute;top:calc(100% + .45rem);right:0;z-index:40;min-width:11.5rem;margin:0;padding:.4rem;list-style:none;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:none;transform-origin:top right}.lang__option[data-v-20684817]{width:100%;display:flex;align-items:center;gap:.65rem;padding:.55rem .65rem;border:0;border-radius:8px;background:transparent;color:var(--color-text);cursor:pointer;text-align:left;transition:background-color var(--motion-fast),color var(--motion-fast)}.lang__option[data-v-20684817]:hover,.lang__option[data-v-20684817]:focus-visible{background:color-mix(in srgb,var(--color-accent) 10%,transparent);outline:none}.lang__option.is-active[data-v-20684817]{color:var(--color-accent)}.lang__option-code[data-v-20684817]{min-width:1.6rem;font-size:.82rem;font-weight:700}.lang-drop-enter-active[data-v-20684817],.lang-drop-leave-active[data-v-20684817]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.lang-drop-enter-from[data-v-20684817],.lang-drop-leave-to[data-v-20684817]{opacity:0;transform:translateY(-6px) scale(.98)}.social-icon[data-v-d94aeb48]{display:block;width:1.35rem;height:1.35rem;flex:0 0 1.35rem}.social[data-v-e67fe819]{display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0;gap:.15rem}.social__link[data-v-e67fe819]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.35rem;width:2.35rem;height:2.35rem;color:var(--color-text);text-decoration:none;line-height:0;transition:color var(--motion-fast),transform var(--motion-fast),opacity var(--motion-fast)}.social__link[data-v-e67fe819]:hover,.social__link[data-v-e67fe819]:focus-visible{color:var(--color-link-alt);outline:none}.social__link[data-v-e67fe819]:active{transform:translateY(0) scale(.96)}.nav-icon[data-v-acc42c2a]{flex-shrink:0;width:22px;height:22px;margin-top:.1rem;color:var(--color-text-muted);transition:color var(--motion-fast)}.header[data-v-1b59259e]{position:sticky;top:0;z-index:1100;width:100%;max-width:100%}.header.is-mobile-open[data-v-1b59259e]{position:relative}.header__backdrop[data-v-1b59259e]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:var(--color-overlay);cursor:default}.header__shell[data-v-1b59259e]{position:relative;z-index:1;width:100%;background:var(--color-header-solid);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);transition:background-color var(--motion-panel),border-color var(--motion-panel)}.header.is-scrolled .header__shell[data-v-1b59259e]{background:var(--color-header-scrolled)}.header.is-open .header__shell[data-v-1b59259e],.header.is-mobile-open .header__shell[data-v-1b59259e]{background:var(--color-header-solid);border-bottom-color:transparent}.header__bar[data-v-1b59259e]{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;width:100%;min-height:var(--header-logo-height, 4.75rem);column-gap:1.5rem}.header__side[data-v-1b59259e]{display:flex;align-items:center;min-width:0;width:100%;z-index:2;padding-inline:1.5rem;box-sizing:border-box}.header__side--left[data-v-1b59259e]{grid-column:1;justify-content:space-between;gap:.5rem}.header__side--right[data-v-1b59259e]{grid-column:3;justify-content:space-between;gap:0}.header__center[data-v-1b59259e]{grid-column:2;z-index:1;display:flex;align-items:center;justify-content:center}.header__github[data-v-1b59259e]{display:none}.header__menu-btn[data-v-1b59259e]{display:none;align-items:center;justify-content:center;width:2.75rem;align-self:stretch;min-height:100%;margin:0;padding:0;border:0;border-left:1px solid var(--color-border);border-radius:0;background:transparent;color:var(--color-text);cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}.header__menu-btn[data-v-1b59259e]:hover,.header__menu-btn[data-v-1b59259e]:focus-visible{background:var(--color-accent-soft);outline:none}.header__menu-btn[data-v-1b59259e]:active{background:var(--color-accent-soft)}.header__menu-icon[data-v-1b59259e]{display:grid;gap:.28rem;width:1.05rem}.header__menu-icon span[data-v-1b59259e]{display:block;width:100%;height:1.5px;background:currentColor;transition:transform var(--motion-fast),opacity var(--motion-fast)}.header.is-mobile-open .header__menu-icon span[data-v-1b59259e]:nth-child(1){transform:translateY(.34rem) rotate(45deg)}.header.is-mobile-open .header__menu-icon span[data-v-1b59259e]:nth-child(2){opacity:0}.header.is-mobile-open .header__menu-icon span[data-v-1b59259e]:nth-child(3){transform:translateY(-.34rem) rotate(-45deg)}.header__divider[data-v-1b59259e]{display:none}.header__social[data-v-1b59259e]{position:relative;z-index:2;flex:0 0 auto}.header__social[data-v-1b59259e] .social{flex:0 0 auto;justify-content:flex-end}.header__tools[data-v-1b59259e],.header__actions[data-v-1b59259e]{display:flex;align-items:center;flex:0 0 auto;gap:.45rem}.header__cv[data-v-1b59259e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.4rem .9rem;border:1px solid var(--color-text);border-radius:4px;background:transparent;color:var(--color-text);font-size:.82rem;font-weight:700;letter-spacing:.03em;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.header__cv[data-v-1b59259e]:hover,.header__cv[data-v-1b59259e]:focus-visible{background:var(--color-text);color:var(--color-bg);outline:none;transform:translateY(-1px)}.header__cv[data-v-1b59259e]:active{transform:scale(.98)}.header__contact[data-v-1b59259e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:38px;padding:.4rem .85rem .4rem 1rem;border:1px solid var(--color-button);border-radius:4px;background:var(--color-button);color:var(--color-button-contrast);font-size:.82rem;font-weight:700;letter-spacing:.03em;line-height:1.2;white-space:nowrap;cursor:pointer;animation:header-contact-blink-1b59259e 1.2s ease-in-out infinite;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.header__contact-arrow[data-v-1b59259e]{width:.55rem;height:.55rem;flex:0 0 .55rem;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(-45deg) translateY(-1px);transition:transform var(--motion-fast)}.header__contact[data-v-1b59259e]:hover,.header__contact[data-v-1b59259e]:focus-visible{animation:none;background:var(--color-button-hover);border-color:var(--color-button-hover);transform:translateY(-1px);outline:none}.header__contact:hover .header__contact-arrow[data-v-1b59259e],.header__contact:focus-visible .header__contact-arrow[data-v-1b59259e]{transform:rotate(-45deg) translate(2px,1px)}.header__contact[data-v-1b59259e]:active{animation:none;background:var(--color-button-active);border-color:var(--color-button-active);transform:scale(.98)}.header__nav[data-v-1b59259e]{display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0;gap:0}.header__link[data-v-1b59259e]{display:inline-flex;align-items:center;gap:.45rem;min-height:2.6rem;padding:.45rem .85rem;border:0;border-radius:999px;background:transparent;color:var(--color-text-muted);font:inherit;font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.header__link[data-v-1b59259e] .nav-icon{color:currentColor}.header__item:first-child .header__link[data-v-1b59259e]{padding-left:.55rem}.header__item:last-child .header__link[data-v-1b59259e]{padding-right:.55rem}.header__link[data-v-1b59259e]:hover,.header__link[data-v-1b59259e]:focus-visible,.header__link.is-active[data-v-1b59259e]{color:var(--color-text);background:var(--color-accent-soft);outline:none}.header__link[data-v-1b59259e]:hover .nav-icon,.header__link[data-v-1b59259e]:focus-visible .nav-icon,.header__link.is-active[data-v-1b59259e] .nav-icon{color:var(--color-link-alt)}.header__link[data-v-1b59259e]:active{transform:scale(.98)}.header__mega[data-v-1b59259e]{position:fixed;left:0;right:0;top:var(--header-height, 76px);z-index:2;border-bottom:1px solid var(--color-border);background:var(--color-header-solid);animation:mega-open-1b59259e .16s ease both}.header__mega-stage[data-v-1b59259e]{position:relative;overflow:visible}.header__mega-inner[data-v-1b59259e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:1.5rem;padding:1.75rem 0 1.9rem}.header__column[data-v-1b59259e]{display:grid;gap:.35rem;align-content:start}.header__mega .header__column-title[data-v-1b59259e],.header__mega .header__entry[data-v-1b59259e]{animation:mega-item-in-1b59259e .22s cubic-bezier(.22,1,.36,1) both;animation-delay:calc((var(--col) * 28ms) + (var(--item) * 22ms))}@keyframes mega-open-1b59259e{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.header__column-title[data-v-1b59259e]{margin:0 0 .7rem;color:var(--color-text-muted);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.header__entry[data-v-1b59259e]{display:flex;align-items:flex-start;gap:.9rem;padding:.8rem .7rem;border-radius:12px;color:inherit;text-decoration:none;transition:background-color var(--motion-fast),transform var(--motion-fast)}.header__entry[data-v-1b59259e]:hover,.header__entry[data-v-1b59259e]:focus-visible{background:var(--color-accent-soft);color:inherit;outline:none}.header__entry[data-v-1b59259e]:hover .nav-icon,.header__entry[data-v-1b59259e]:focus-visible .nav-icon{color:var(--color-link-alt)}.header__entry-copy[data-v-1b59259e]{display:grid;gap:.2rem}.header__entry-title[data-v-1b59259e]{font-size:.98rem;font-weight:500;color:var(--color-text)}.header__entry-desc[data-v-1b59259e]{color:var(--color-text-muted);font-size:.86rem;line-height:1.35}.header__mobile[data-v-1b59259e]{display:none;border-top:1px solid var(--color-border);background:var(--color-header-solid);overflow:visible;padding:1rem 1rem 1.25rem}.header__mobile-tools[data-v-1b59259e]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--color-border)}.header__mobile-tools[data-v-1b59259e] .social{flex:0 0 auto;justify-content:flex-end;gap:.15rem}.header__mobile-list[data-v-1b59259e]{display:grid;gap:.2rem}.header__mobile-link[data-v-1b59259e]{display:flex;align-items:center;gap:.8rem;width:100%;min-height:3rem;padding:.7rem .75rem;border:0;border-radius:12px;background:transparent;color:var(--color-text);font:inherit;font-size:1rem;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.header__mobile-link[data-v-1b59259e]:hover,.header__mobile-link[data-v-1b59259e]:focus-visible{background:var(--color-accent-soft);outline:none}.header__mobile-link[data-v-1b59259e]:active{transform:scale(.99)}.header__mobile-link[data-v-1b59259e] .nav-icon{color:var(--color-link-alt)}.mega-enter-active[data-v-1b59259e]{transition:opacity .16s ease,transform .16s ease}.mega-leave-active[data-v-1b59259e]{transition:opacity .12s ease,transform .12s ease}.mega-enter-from[data-v-1b59259e],.mega-leave-to[data-v-1b59259e]{opacity:0;transform:translateY(-4px)}.mega-panel-enter-active[data-v-1b59259e]{transition:opacity .16s ease,transform .16s ease}.mega-panel-leave-active[data-v-1b59259e]{position:absolute;left:0;right:0;top:0;transition:opacity .12s ease,transform .12s ease}.mega-panel-enter-from[data-v-1b59259e]{opacity:0;transform:translateY(6px)}.mega-panel-leave-to[data-v-1b59259e]{opacity:0;transform:translateY(-4px)}.backdrop-enter-active[data-v-1b59259e],.backdrop-leave-active[data-v-1b59259e]{transition:opacity .22s ease}.backdrop-enter-from[data-v-1b59259e],.backdrop-leave-to[data-v-1b59259e]{opacity:0}.mobile-enter-active[data-v-1b59259e]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.mobile-leave-active[data-v-1b59259e]{transition:opacity .16s ease,transform .16s ease}.mobile-enter-from[data-v-1b59259e],.mobile-leave-to[data-v-1b59259e]{opacity:0;transform:translateY(-10px)}@keyframes mega-item-in-1b59259e{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1320px){.header__social[data-v-1b59259e],.header__divider[data-v-1b59259e]:not(.header__divider--actions){display:none}}@media(max-width:1100px){.header__side[data-v-1b59259e]{padding-inline:1rem}}@media(max-width:1200px){.header__mega-inner[data-v-1b59259e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}}@media(max-width:900px){.header__nav[data-v-1b59259e],.header__mega[data-v-1b59259e],.header__social[data-v-1b59259e],.header__tools[data-v-1b59259e],.header__divider[data-v-1b59259e],.header__cv[data-v-1b59259e]{display:none}.header__github[data-v-1b59259e]{display:inline-flex}.header__github[data-v-1b59259e]{align-items:center;justify-content:center;flex:0 0 2.4rem;width:2.4rem;height:2.4rem;color:var(--color-text);text-decoration:none;transition:color var(--motion-fast),transform var(--motion-fast)}.header__github[data-v-1b59259e]:hover,.header__github[data-v-1b59259e]:focus-visible{color:var(--color-link-alt);outline:none}.header__github[data-v-1b59259e]:active{transform:scale(.96)}.header__menu-btn[data-v-1b59259e]{display:flex}.header__mobile[data-v-1b59259e]{display:block}.header__bar[data-v-1b59259e]{grid-template-columns:auto minmax(0,1fr) auto;min-height:3.6rem;column-gap:.35rem}.header__side--left[data-v-1b59259e]{padding-inline:.65rem .4rem;justify-content:flex-start;gap:.4rem}.header__side--right[data-v-1b59259e]{padding-inline:.4rem 0;justify-content:flex-end;align-items:center;gap:.35rem}.header__actions[data-v-1b59259e]{display:flex;flex:0 0 auto;gap:0}.header__side--right .header__contact[data-v-1b59259e]{margin:0;min-height:1.85rem;max-width:min(28vw,6.4rem);padding:.22rem .42rem;font-size:.56rem;letter-spacing:.01em;gap:0}.header__side--right .header__contact .header__contact-arrow[data-v-1b59259e]{display:none}.header__menu-btn[data-v-1b59259e]{width:2.5rem}.header__center[data-v-1b59259e]{position:static;left:auto;transform:none;grid-column:2;justify-content:center;min-width:0;pointer-events:auto}.header__mobile[data-v-1b59259e]{padding:.9rem .9rem max(1.15rem,env(safe-area-inset-bottom))}}@media(max-width:480px){.header__side--left[data-v-1b59259e]{padding-inline:.45rem .3rem;gap:.25rem}.header__side--right[data-v-1b59259e]{padding-inline:0}.header__github[data-v-1b59259e]{flex-basis:2.2rem;width:2.2rem;height:2.2rem}.header__side--right .header__contact[data-v-1b59259e]{max-width:min(26vw,5.6rem);padding:.18rem .36rem;font-size:.5rem}.header__menu-btn[data-v-1b59259e]{width:2.4rem}}@keyframes header-contact-blink-1b59259e{0%,to{filter:brightness(1)}50%{filter:brightness(1.35)}}@media(prefers-reduced-motion:reduce){.header__contact[data-v-1b59259e]{animation:none}}.contact[data-v-1419c6bd]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:1rem;background:var(--color-overlay)}.contact__dialog[data-v-1419c6bd]{position:relative;width:min(520px,100%);max-height:min(90vh,820px);overflow:auto;display:flex;flex-direction:column;gap:1.15rem;padding:1.55rem 1.5rem 1.6rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-surface);color:var(--color-text);box-shadow:none}.contact__frame[data-v-1419c6bd]{position:absolute;top:.7rem;right:.7rem;bottom:.7rem;left:.7rem;pointer-events:none}.contact__frame-mark[data-v-1419c6bd]{position:absolute;width:1.15rem;height:1.15rem;border-color:var(--color-button);border-style:solid}.contact__frame-mark--tl[data-v-1419c6bd]{top:0;left:0;border-width:1px 0 0 1px}.contact__frame-mark--tr[data-v-1419c6bd]{top:0;right:0;border-width:1px 1px 0 0}.contact__frame-mark--bl[data-v-1419c6bd]{bottom:0;left:0;border-width:0 0 1px 1px}.contact__frame-mark--br[data-v-1419c6bd]{bottom:0;right:0;border-width:0 1px 1px 0}.contact__head[data-v-1419c6bd]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.contact__head-copy[data-v-1419c6bd]{display:flex;flex-direction:column;min-width:0}.contact__title[data-v-1419c6bd]{margin:0;font-family:var(--font-family);font-size:clamp(1.3rem,2.4vw,1.55rem);font-weight:600;line-height:1.2}.contact__title[data-v-1419c6bd]:after{content:"";display:block;width:2.25rem;height:1px;margin-top:.55rem;background:var(--color-button);transform-origin:left center;animation:contact-rule-1419c6bd .45s ease both}.contact__close[data-v-1419c6bd]{flex:0 0 auto;width:2rem;height:2rem;border:1px solid var(--color-border);border-radius:0;background:transparent;color:var(--color-text);font-size:1.2rem;line-height:1;cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.contact__close[data-v-1419c6bd]:hover,.contact__close[data-v-1419c6bd]:focus-visible{border-color:var(--color-accent);background:var(--color-accent-soft);outline:none}.contact__close[data-v-1419c6bd]:active{transform:scale(.96)}.contact__main[data-v-1419c6bd]{min-width:0}@media(prefers-reduced-motion:reduce){.contact__success-ring[data-v-1419c6bd],.contact__success-tick[data-v-1419c6bd],.contact__spinner[data-v-1419c6bd],.contact__title[data-v-1419c6bd]:after,.contact__frame-mark[data-v-1419c6bd],.contact__field[data-v-1419c6bd],.contact__submit[data-v-1419c6bd]:before{animation:none}.contact__field input[data-v-1419c6bd],.contact__field textarea[data-v-1419c6bd],.contact__control[data-v-1419c6bd],.contact__icon[data-v-1419c6bd],.contact__submit[data-v-1419c6bd],.contact__submit[data-v-1419c6bd]:before{transition:none}.contact-modal-enter-active[data-v-1419c6bd],.contact-modal-leave-active[data-v-1419c6bd],.contact-modal-enter-active .contact__dialog[data-v-1419c6bd],.contact-modal-leave-active .contact__dialog[data-v-1419c6bd]{transition:none}}.contact__success-panel[data-v-1419c6bd]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:16rem;height:100%;text-align:center}.contact__success-mark[data-v-1419c6bd]{display:grid;place-items:center;width:4.5rem;height:4.5rem;color:var(--color-button)}.contact__success-mark svg[data-v-1419c6bd]{width:100%;height:100%}.contact__success-ring[data-v-1419c6bd]{stroke-dasharray:126;stroke-dashoffset:126;animation:contact-ring-1419c6bd .55s ease-out forwards}.contact__success-tick[data-v-1419c6bd]{stroke-dasharray:36;stroke-dashoffset:36;animation:contact-tick-1419c6bd .35s ease-out .35s forwards}@keyframes contact-ring-1419c6bd{to{stroke-dashoffset:0}}@keyframes contact-tick-1419c6bd{to{stroke-dashoffset:0}}.contact__success[data-v-1419c6bd]{margin:0;color:var(--color-text);font-size:1.05rem;font-weight:600;line-height:1.4}.contact__copy-error[data-v-1419c6bd],.contact__field-error[data-v-1419c6bd],.contact__error[data-v-1419c6bd]{margin:0;color:var(--color-error);font-size:.82rem;line-height:1.4}.contact__form[data-v-1419c6bd]{display:flex;flex-direction:column;gap:.85rem;height:100%}.contact__field[data-v-1419c6bd]{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;animation:contact-field-in-1419c6bd .4s ease both}.contact__field[data-v-1419c6bd]:nth-child(1){animation-delay:.04s}.contact__field[data-v-1419c6bd]:nth-child(2){animation-delay:.08s}.contact__field[data-v-1419c6bd]:nth-child(3){animation-delay:.12s}.contact__field[data-v-1419c6bd]:nth-child(4){animation-delay:.16s}.contact__control[data-v-1419c6bd]{position:relative;display:block;transition:transform var(--motion-fast)}.contact__control[data-v-1419c6bd]:hover,.contact__control[data-v-1419c6bd]:focus-within{transform:translateY(-1px)}.contact__icon[data-v-1419c6bd]{position:absolute;top:50%;left:.7rem;z-index:1;width:1rem;height:1rem;color:var(--color-text-muted);pointer-events:none;transform:translateY(-50%);transition:color var(--motion-fast)}.contact__control--area .contact__icon[data-v-1419c6bd]{top:.82rem;transform:none}.contact__control:hover .contact__icon[data-v-1419c6bd],.contact__control:focus-within .contact__icon[data-v-1419c6bd]{color:var(--color-button)}.contact__field input[data-v-1419c6bd],.contact__field textarea[data-v-1419c6bd]{width:100%;padding:.7rem .8rem .7rem 2.35rem;border:1px solid var(--color-border);border-radius:0;background:var(--color-bg);color:var(--color-text);font:inherit;transition:border-color var(--motion-fast),background-color var(--motion-fast)}.contact__field textarea[data-v-1419c6bd]{resize:vertical;min-height:6.5rem}.contact__field input[data-v-1419c6bd]:hover,.contact__field textarea[data-v-1419c6bd]:hover{border-color:var(--color-button)}.contact__field input[data-v-1419c6bd]:focus-visible,.contact__field textarea[data-v-1419c6bd]:focus-visible{border-color:var(--color-button);background:var(--color-surface);outline:none}.contact__field input[aria-invalid=true][data-v-1419c6bd],.contact__field textarea[aria-invalid=true][data-v-1419c6bd]{border-color:var(--color-error)}.contact__hint[data-v-1419c6bd]{color:var(--color-text-muted);font-size:.78rem;text-align:right}.contact__submit[data-v-1419c6bd]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.7rem;padding:.7rem 1.2rem;border:0;border-radius:0;background:var(--color-button);color:var(--color-button-contrast);font-size:.92rem;font-weight:600;cursor:pointer;transition:color var(--motion-fast),transform var(--motion-fast)}.contact__submit[data-v-1419c6bd]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--color-button-hover);transform:translate(-100%);transition:transform var(--motion-fast)}.contact__submit[data-v-1419c6bd]:hover,.contact__submit[data-v-1419c6bd]:focus-visible{outline:none}.contact__submit[data-v-1419c6bd]:hover:before,.contact__submit[data-v-1419c6bd]:focus-visible:before{transform:translate(0)}.contact__submit[data-v-1419c6bd]:active{background:var(--color-button-active);transform:scale(.98)}.contact__submit[data-v-1419c6bd]:disabled{opacity:.65;cursor:wait}.contact__submit[data-v-1419c6bd]:disabled:before{transform:translate(-100%)}.contact__spinner[data-v-1419c6bd]{width:.95rem;height:.95rem;border:2px solid color-mix(in srgb,var(--color-button-contrast) 28%,transparent);border-top-color:var(--color-button-contrast);border-radius:50%;animation:contact-spin-1419c6bd .7s linear infinite}@keyframes contact-spin-1419c6bd{to{transform:rotate(360deg)}}@keyframes contact-field-in-1419c6bd{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes contact-rule-1419c6bd{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes contact-frame-in-1419c6bd{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.contact-modal-enter-active .contact__frame-mark[data-v-1419c6bd]{animation:contact-frame-in-1419c6bd .4s ease both}.contact-modal-enter-active .contact__frame-mark--tl[data-v-1419c6bd]{animation-delay:.05s}.contact-modal-enter-active .contact__frame-mark--tr[data-v-1419c6bd]{animation-delay:.1s}.contact-modal-enter-active .contact__frame-mark--bl[data-v-1419c6bd]{animation-delay:.15s}.contact-modal-enter-active .contact__frame-mark--br[data-v-1419c6bd]{animation-delay:.2s}.contact-modal-enter-active[data-v-1419c6bd],.contact-modal-leave-active[data-v-1419c6bd]{transition:opacity var(--motion-mega)}.contact-modal-enter-active .contact__dialog[data-v-1419c6bd],.contact-modal-leave-active .contact__dialog[data-v-1419c6bd]{transition:transform var(--motion-mega)}.contact-modal-enter-from[data-v-1419c6bd],.contact-modal-leave-to[data-v-1419c6bd]{opacity:0}.contact-modal-enter-from .contact__dialog[data-v-1419c6bd],.contact-modal-leave-to .contact__dialog[data-v-1419c6bd]{transform:translateY(18px)}@media(max-width:759px){.contact[data-v-1419c6bd]{padding:max(.5rem,env(safe-area-inset-top)) .6rem max(.5rem,env(safe-area-inset-bottom));align-items:stretch}.contact__dialog[data-v-1419c6bd]{width:100%;max-height:calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:1.1rem 1rem 1.2rem}.contact__title[data-v-1419c6bd]{font-size:1.35rem}}.cookie[data-v-011618bc]{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#000;color:#fff}.cookie__inner[data-v-011618bc]{position:relative;width:min(1100px,calc(100% - 2.5rem));margin:0 auto;padding:1.35rem 2rem 1.2rem 1.5rem}.cookie__close[data-v-011618bc]{position:absolute;top:.65rem;right:.15rem;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background:transparent;color:#ffffffd9;font-size:1.15rem;font-weight:300;line-height:1;cursor:pointer;transition:color var(--motion-fast)}.cookie__close[data-v-011618bc]:hover,.cookie__close[data-v-011618bc]:focus-visible{color:#fff;outline:none}.cookie__close[data-v-011618bc]:active{transform:scale(.94)}.cookie__text[data-v-011618bc]{margin:0 1.25rem 1.35rem 0;max-width:62rem;font-size:.92rem;font-weight:400;line-height:1.5;color:#fff}.cookie__policy[data-v-011618bc]{color:#fff;text-decoration:underline;text-underline-offset:.12em}.cookie__policy[data-v-011618bc]:hover,.cookie__policy[data-v-011618bc]:focus-visible{color:#d0d0d0;outline:none}.cookie__prefs[data-v-011618bc]{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin:0 0 1.1rem}.cookie__pref[data-v-011618bc]{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:#fff;cursor:pointer}.cookie__row[data-v-011618bc]{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.cookie__settings[data-v-011618bc]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;background:transparent;color:#fff;font-size:.92rem;font-weight:400;text-decoration:underline;text-underline-offset:.12em;cursor:pointer;transition:color var(--motion-fast)}.cookie__settings[data-v-011618bc]:hover,.cookie__settings[data-v-011618bc]:focus-visible{color:#d0d0d0;outline:none}.cookie__actions[data-v-011618bc]{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-left:auto}.cookie__btn[data-v-011618bc]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.55rem 1.15rem;border:0;border-radius:3px;background:var(--color-button);color:var(--color-button-contrast);font-size:.9rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background-color var(--motion-fast),transform var(--motion-fast)}.cookie__btn[data-v-011618bc]:hover,.cookie__btn[data-v-011618bc]:focus-visible{background:var(--color-button-hover);outline:none}.cookie__btn[data-v-011618bc]:active{background:var(--color-button-active);transform:scale(.98)}.cookie-enter-active[data-v-011618bc],.cookie-leave-active[data-v-011618bc]{transition:opacity .22s ease,transform .22s ease}.cookie-enter-from[data-v-011618bc],.cookie-leave-to[data-v-011618bc]{opacity:0;transform:translateY(100%)}@media(max-width:760px){.cookie[data-v-011618bc]{padding-bottom:env(safe-area-inset-bottom)}.cookie__inner[data-v-011618bc]{width:calc(100% - 1.25rem);padding:1.1rem 1.4rem 1rem 1rem}.cookie__text[data-v-011618bc]{margin-right:1rem;font-size:.84rem}.cookie__row[data-v-011618bc]{align-items:stretch}.cookie__actions[data-v-011618bc]{width:100%;margin-left:0}.cookie__btn[data-v-011618bc]{flex:1;min-width:0;padding:.6rem .7rem;font-size:.8rem}}.greeting[data-v-bcb8fdf1]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;text-align:center;background:var(--color-bg)}.greeting__fx[data-v-bcb8fdf1]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.greeting__haze[data-v-bcb8fdf1]{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background:radial-gradient(circle at 30% 40%,rgba(0,0,0,.035),transparent 42%),radial-gradient(circle at 70% 60%,rgba(0,0,0,.03),transparent 46%);animation:greeting-haze-bcb8fdf1 20s ease-in-out infinite}.greeting__lines[data-v-bcb8fdf1]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(115deg,transparent 0,transparent 11px,rgba(0,0,0,.025) 11px,rgba(0,0,0,.025) 12px);background-size:180% 180%;animation:greeting-lines-bcb8fdf1 36s linear infinite;opacity:.7}[data-theme=dark]{background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.04),transparent 42%),radial-gradient(circle at 70% 60%,rgba(255,255,255,.03),transparent 46%)}[data-theme=dark]{background-image:repeating-linear-gradient(115deg,transparent 0,transparent 11px,rgba(255,255,255,.03) 11px,rgba(255,255,255,.03) 12px)}.greeting__content[data-v-bcb8fdf1]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;width:min(100%,40rem);max-width:100%;min-width:0;min-height:0;padding:1rem;box-sizing:border-box}.greeting__title[data-v-bcb8fdf1],.greeting__ask[data-v-bcb8fdf1],.greeting__input[data-v-bcb8fdf1],.greeting__cta[data-v-bcb8fdf1]{animation:greeting-item-in-bcb8fdf1 .7s cubic-bezier(.22,1,.36,1) both}.greeting__title[data-v-bcb8fdf1]{animation-delay:.36s}.greeting__ask[data-v-bcb8fdf1]{animation-delay:.46s}.greeting__input[data-v-bcb8fdf1]{animation-delay:.5s}.greeting__cta[data-v-bcb8fdf1]{animation-delay:.57s}@keyframes greeting-item-in-bcb8fdf1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.greeting__title[data-v-bcb8fdf1]{margin:0;max-width:100%;font-family:var(--font-display);font-size:clamp(1.15rem,2.4vw,2.35rem);font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--color-text);overflow-wrap:anywhere;text-wrap:balance}.greeting__ask[data-v-bcb8fdf1]{margin:0;max-width:100%;color:var(--color-text-muted);overflow-wrap:anywhere;font-size:clamp(.88rem,1.4vw,1rem);line-height:1.4}.greeting__input[data-v-bcb8fdf1]{display:flex;align-items:center;justify-content:space-between;gap:1.1rem;width:min(100%,38rem);max-width:100%;min-width:0;min-height:4rem;padding:.95rem 1rem .95rem 1.45rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);box-shadow:var(--shadow-soft);color:var(--color-text-muted);cursor:pointer;text-align:left;box-sizing:border-box;transition:border-color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.greeting__input[data-v-bcb8fdf1]:hover,.greeting__input[data-v-bcb8fdf1]:focus-visible{border-color:var(--color-button);transform:translateY(-1px);box-shadow:0 14px 28px #0000001f;outline:none}.greeting__input[data-v-bcb8fdf1]:active{transform:translateY(0) scale(.995)}.greeting__placeholder[data-v-bcb8fdf1]{min-width:0;font-size:1.12rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.greeting__action[data-v-bcb8fdf1]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2.7rem;height:2.7rem;border-radius:999px;background:var(--color-button);color:var(--color-button-contrast);transition:background-color var(--motion-fast)}.greeting__search[data-v-bcb8fdf1]{display:block}.greeting__input:hover .greeting__action[data-v-bcb8fdf1],.greeting__input:focus-visible .greeting__action[data-v-bcb8fdf1]{background:var(--color-button-hover)}.greeting__cta[data-v-bcb8fdf1]{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;flex:0 0 auto;gap:.7rem;width:min(100%,38rem);max-width:100%;min-width:0}.greeting__btn[data-v-bcb8fdf1]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.55rem;min-width:0;max-width:100%;padding:.65rem 1.25rem;border-radius:4px;font-size:.95rem;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.greeting__btn-icon[data-v-bcb8fdf1]{display:block;flex:0 0 auto}.greeting__btn--ghost[data-v-bcb8fdf1]{border:1px solid var(--color-text);background:transparent;color:var(--color-text)}.greeting__btn--ghost[data-v-bcb8fdf1]:hover,.greeting__btn--ghost[data-v-bcb8fdf1]:focus-visible{background:var(--color-text);color:var(--color-bg);outline:none}.greeting__btn--solid[data-v-bcb8fdf1]{border:1px solid var(--color-button);background:var(--color-button);color:var(--color-button-contrast)}.greeting__btn--solid[data-v-bcb8fdf1]:hover,.greeting__btn--solid[data-v-bcb8fdf1]:focus-visible{background:var(--color-button-hover);border-color:var(--color-button-hover);outline:none}.greeting__btn[data-v-bcb8fdf1]:active{transform:scale(.98)}@keyframes greeting-haze-bcb8fdf1{0%,to{transform:translateZ(0) scale(1);opacity:.85}50%{transform:translate3d(2%,-1.5%,0) scale(1.03);opacity:1}}@keyframes greeting-lines-bcb8fdf1{0%{background-position:0 0}to{background-position:120px 80px}}@media(prefers-reduced-motion:reduce){.greeting__haze[data-v-bcb8fdf1],.greeting__lines[data-v-bcb8fdf1]{animation:none}.greeting__title[data-v-bcb8fdf1],.greeting__ask[data-v-bcb8fdf1],.greeting__input[data-v-bcb8fdf1],.greeting__cta[data-v-bcb8fdf1]{animation:none;opacity:1;transform:none}}@media(max-width:900px){.greeting[data-v-bcb8fdf1]{height:auto}.greeting__content[data-v-bcb8fdf1]{gap:.7rem;padding:1.1rem 1rem;width:100%}.greeting__title[data-v-bcb8fdf1]{font-size:clamp(1.1rem,4.6vw,1.45rem)}.greeting__input[data-v-bcb8fdf1]{width:100%;min-height:3.1rem;padding:.6rem .65rem .6rem 1rem;gap:.55rem}.greeting__placeholder[data-v-bcb8fdf1]{font-size:.9rem}.greeting__action[data-v-bcb8fdf1]{width:2.2rem;height:2.2rem}.greeting__cta[data-v-bcb8fdf1]{width:100%;gap:.5rem}.greeting__btn[data-v-bcb8fdf1]{flex:1 1 7.5rem;min-height:2.4rem;padding:.5rem .7rem;font-size:.84rem}}@media(max-width:480px){.greeting__content[data-v-bcb8fdf1]{gap:.6rem;padding:.95rem .85rem}.greeting__title[data-v-bcb8fdf1]{font-size:clamp(1.05rem,5.2vw,1.3rem)}.greeting__input[data-v-bcb8fdf1]{min-height:2.9rem}.greeting__placeholder[data-v-bcb8fdf1]{font-size:.84rem}.greeting__btn[data-v-bcb8fdf1]{flex:1 1 7.5rem;min-height:2.35rem;font-size:.82rem}}.slider[data-v-54552ebe]{display:grid;grid-template-rows:minmax(4.5rem,1fr) auto;gap:.55rem;width:100%;min-height:0}.slider__track[data-v-54552ebe]{position:relative;height:4.5rem;min-height:4.5rem;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.slider__track.is-dragging[data-v-54552ebe]{cursor:grabbing}.slider__slide[data-v-54552ebe]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:start;justify-items:start;gap:.45rem;opacity:0;transform:translate(18px);pointer-events:none;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.slider__slide.is-from-left[data-v-54552ebe]{transform:translate(-18px)}.slider__slide.is-from-right[data-v-54552ebe]{transform:translate(18px)}.slider__slide.is-active[data-v-54552ebe]{opacity:1;transform:translate(0);pointer-events:auto}.slider__slide strong[data-v-54552ebe]{font-size:.95rem;font-weight:700;color:var(--color-text);line-height:1.3;max-width:100%;overflow-wrap:anywhere}.slider__slide span[data-v-54552ebe]{color:var(--color-text-muted);font-size:.82rem;line-height:1.4;max-width:100%;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.slider__bar[data-v-54552ebe]{position:relative;z-index:5;display:inline-flex;align-items:center;justify-content:flex-end;gap:.45rem;min-height:2rem;margin-left:auto}.slider__dots[data-v-54552ebe]{display:flex;align-items:center;justify-content:center;gap:.4rem}.slider__dot[data-v-54552ebe]{width:.45rem;height:.45rem;border-radius:999px;background:var(--color-border);transition:background-color var(--motion-fast),transform var(--motion-fast)}.slider__dot.is-active[data-v-54552ebe]{background:var(--color-accent);transform:scale(1.2)}.slider__btn[data-v-54552ebe]{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:0;border-radius:0;background:transparent;color:var(--color-text);font-size:1.15rem;line-height:1;cursor:pointer;transition:color var(--motion-fast),opacity var(--motion-fast),transform var(--motion-fast)}.slider__btn[data-v-54552ebe]:hover,.slider__btn[data-v-54552ebe]:focus-visible{color:var(--color-accent);opacity:.8;outline:none}.slider__btn--prev.is-press[data-v-54552ebe]{transform:translate(-4px)}.slider__btn--next.is-press[data-v-54552ebe]{transform:translate(4px)}.slider__btn[data-v-54552ebe]:active{transform:scale(.96)}.mark[data-v-e7483c70]{display:block;flex:0 0 auto}.tile[data-v-8b2b7851]{display:flex;flex-direction:column;min-height:0;height:100%;color:inherit;text-decoration:none;cursor:pointer}.tile__panel[data-v-8b2b7851]{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;border:0;border-radius:0;background:#111;overflow:hidden}.tile__body[data-v-8b2b7851]{--tile-pad-x: 1.05rem;--tile-pad-y: 1.05rem;--tile-ease: ease;--tile-duration: .32s;position:relative;z-index:1;display:block;flex:1;min-height:0;padding:var(--tile-pad-y) var(--tile-pad-x) .95rem;overflow:hidden}.tile__bg[data-v-8b2b7851]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-color:#050505;background-size:cover;background-position:center;filter:brightness(.62) saturate(.85);opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1)}.tile__bg.is-active[data-v-8b2b7851]{opacity:1}.tile__shade[data-v-8b2b7851]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 32%,rgba(0,0,0,.18) 58%,rgba(0,0,0,.04) 78%,transparent 100%),linear-gradient(180deg,#0000009e,#00000085 42%,#000000bd);pointer-events:none}.tile__stack[data-v-8b2b7851]{position:absolute;inset:var(--tile-pad-y) var(--tile-pad-x) .85rem;z-index:2;display:flex;align-items:center;justify-content:center;overflow:visible}.tile__cluster[data-v-8b2b7851]{display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%}.tile__head[data-v-8b2b7851]{display:flex;flex-direction:column;align-items:center;gap:.6rem;width:100%;max-width:100%;margin:0;text-align:center}.tile__head[data-v-8b2b7851]:after{content:"";display:block;width:2.75rem;height:1px;background:var(--color-button);flex-shrink:0}.tile__mark[data-v-8b2b7851]{display:flex;align-items:center;justify-content:center;width:100%;color:var(--color-button)}.tile__mark[data-v-8b2b7851] .mark{display:block}.tile__title[data-v-8b2b7851]{margin:0;min-width:0;max-width:100%;width:100%;font-family:var(--font-display);font-size:clamp(.95rem,1.4vw,1.45rem);font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#fff;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;text-align:center}.tile__reveal[data-v-8b2b7851]{display:grid;grid-template-rows:0fr;width:100%;opacity:0;margin-top:0;pointer-events:none;transition:grid-template-rows var(--tile-duration) var(--tile-ease),opacity var(--tile-duration) var(--tile-ease),margin-top var(--tile-duration) var(--tile-ease)}.tile__reveal-body[data-v-8b2b7851]{min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:center}.tile__content[data-v-8b2b7851]{width:100%;min-height:0}.tile__content p[data-v-8b2b7851]{margin:0 auto;max-width:min(22rem,100%);color:#ffffffeb;font-size:clamp(.88rem,1.15vw,1.15rem);line-height:1.45;font-weight:400;text-align:center;text-wrap:balance;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.tile__content[data-v-8b2b7851] .slider{position:relative;display:grid;grid-template-rows:minmax(3.5rem,auto) auto;gap:.45rem;width:100%;min-width:0;min-height:0}.tile__content[data-v-8b2b7851] .slider__track{position:relative;min-height:4.5rem;height:4.5rem;overflow:hidden}.tile__content[data-v-8b2b7851] .slider__bar{position:relative;z-index:5;margin-left:auto}.tile__content[data-v-8b2b7851] .slider__slide strong{color:#fff;font-size:clamp(1.05rem,1.35vw,1.3rem);font-weight:600}.tile__content[data-v-8b2b7851] .slider__slide span{color:#ffffffd1;font-size:clamp(.92rem,1.15vw,1.08rem)}.tile__content[data-v-8b2b7851] .slider__btn{background:transparent;color:#fff;border-color:transparent}.tile__content[data-v-8b2b7851] .slider__btn:hover,.tile__content[data-v-8b2b7851] .slider__btn:focus-visible{background:transparent;color:#fff;opacity:1}.tile__content[data-v-8b2b7851] .slider__dot{background:#fff6}.tile__content[data-v-8b2b7851] .slider__dot.is-active{background:var(--color-button)}.tile__more[data-v-8b2b7851]{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;margin-top:.75rem;color:var(--color-button);font-size:.95rem;font-weight:600}.tile:hover .tile__reveal[data-v-8b2b7851],.tile:focus-within .tile__reveal[data-v-8b2b7851]{grid-template-rows:1fr;opacity:1;margin-top:.85rem;pointer-events:auto}.tile:hover .tile__more[data-v-8b2b7851],.tile:focus-within .tile__more[data-v-8b2b7851]{color:var(--color-button-hover);opacity:.82}.tile[data-v-8b2b7851]:focus-visible{outline:2px solid var(--color-button);outline-offset:-2px}.tile__skeleton[data-v-8b2b7851]{display:grid;gap:.65rem;width:100%;margin-top:.85rem;opacity:.7}.tile__bone[data-v-8b2b7851]{display:block;height:.75rem;border-radius:999px;background:linear-gradient(90deg,#ffffff1f,#ffffff47,#ffffff1f);background-size:200% 100%;animation:tile-shimmer-8b2b7851 1.2s linear infinite}.tile__bone--lg[data-v-8b2b7851]{width:78%;height:1rem}.tile__bone--sm[data-v-8b2b7851]{width:42%}.tile--xl[data-v-8b2b7851],.tile--md[data-v-8b2b7851],.tile--sm[data-v-8b2b7851]{min-height:0}@keyframes tile-shimmer-8b2b7851{0%{background-position:100% 0}to{background-position:-100% 0}}@media(hover:none){.tile__reveal[data-v-8b2b7851]{grid-template-rows:1fr;opacity:1;margin-top:.85rem;pointer-events:auto}}@media(max-width:900px){.tile__body[data-v-8b2b7851]{--tile-pad-x: .65rem;--tile-pad-y: .65rem}.tile__title[data-v-8b2b7851]{font-size:clamp(.78rem,3.1vw,1.05rem);-webkit-line-clamp:3}.tile__content[data-v-8b2b7851],.tile__reveal[data-v-8b2b7851],.tile__more[data-v-8b2b7851],.tile__skeleton[data-v-8b2b7851]{display:none}}@media(prefers-reduced-motion:reduce){.tile__bone[data-v-8b2b7851]{animation:none}.tile__bg[data-v-8b2b7851],.tile__cluster[data-v-8b2b7851],.tile__reveal[data-v-8b2b7851]{transition:none}}.hero[data-v-e5c6d457]{position:relative;z-index:auto;box-sizing:border-box;width:100%;height:calc(100dvh - var(--header-height, 76px));max-height:calc(100dvh - var(--header-height, 76px));padding:0;overflow:hidden;background:#000}.hero__tiles[data-v-e5c6d457]{display:grid;width:100%;height:100%;min-height:0;grid-template-columns:minmax(0,.78fr) minmax(0,.85fr) minmax(0,.85fr) minmax(0,.78fr);grid-template-rows:repeat(24,minmax(0,1fr));gap:20px;padding:20px;box-sizing:border-box}.hero__cell[data-v-e5c6d457]{min-width:0;min-height:0;overflow:hidden}@media(prefers-reduced-motion:no-preference){.hero__cell[data-v-e5c6d457]{animation:hero-cell-in-e5c6d457 .82s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--hero-i, 0) * 55ms + 40ms)}}.hero__cell--about[data-v-e5c6d457]{grid-column:1;grid-row:1 / 16}.hero__cell--cases[data-v-e5c6d457]{grid-column:2;grid-row:1 / 7}.hero__cell--tools[data-v-e5c6d457]{grid-column:3;grid-row:1 / 7}.hero__cell--lab[data-v-e5c6d457]{grid-column:4;grid-row:1 / 9}.hero__cell--greeting[data-v-e5c6d457]{grid-column:2 / 4;grid-row:7 / 18;display:flex;align-items:stretch;justify-content:stretch;background:var(--color-bg);overflow:hidden}.hero__cell--education[data-v-e5c6d457]{grid-column:4;grid-row:9 / 15}.hero__cell--knowledge[data-v-e5c6d457]{grid-column:1;grid-row:16 / 25}.hero__cell--orders[data-v-e5c6d457]{grid-column:2 / 4;grid-row:18 / 25}.hero__cell--github[data-v-e5c6d457]{grid-column:4;grid-row:15 / 25}.hero__cell[data-v-e5c6d457] .tile{height:100%;min-height:0}.hero__cell--greeting[data-v-e5c6d457] .greeting{width:100%;height:100%}.hero__cell--greeting[data-v-e5c6d457] .greeting__content{width:min(100%,40rem);max-width:100%;gap:.85rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__title{font-size:clamp(1.2rem,2.4vw,2.2rem)}.hero__cell--greeting[data-v-e5c6d457] .greeting__input{width:100%;min-height:4rem;padding:.9rem .95rem .9rem 1.4rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__placeholder{font-size:1.08rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__action{width:2.7rem;height:2.7rem}@keyframes hero-cell-in-e5c6d457{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:1100px){.hero__tiles[data-v-e5c6d457]{grid-template-columns:minmax(0,.82fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,.82fr)}.hero__cell--greeting[data-v-e5c6d457] .greeting__content{width:min(100%,100%);gap:1rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__title{font-size:clamp(1.25rem,2.6vw,1.9rem)}}@media(max-width:900px){.hero[data-v-e5c6d457]{height:auto;max-height:none;min-height:0;overflow:visible}.hero__tiles[data-v-e5c6d457]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:minmax(8.5rem,auto);gap:20px;padding:20px}.hero__cell[data-v-e5c6d457]{grid-column:auto;grid-row:auto;min-height:8.5rem;overflow:visible}.hero__cell--about[data-v-e5c6d457]{order:1}.hero__cell--cases[data-v-e5c6d457]{order:2}.hero__cell--tools[data-v-e5c6d457]{order:3}.hero__cell--lab[data-v-e5c6d457]{order:4}.hero__cell--greeting[data-v-e5c6d457]{grid-column:1 / -1;order:5;min-height:min-content;height:auto;overflow:visible}.hero__cell--education[data-v-e5c6d457]{order:6}.hero__cell--knowledge[data-v-e5c6d457]{order:7}.hero__cell--orders[data-v-e5c6d457]{order:8}.hero__cell--github[data-v-e5c6d457]{order:9}.hero__cell--greeting[data-v-e5c6d457] .greeting{height:auto}.hero__cell--greeting[data-v-e5c6d457] .greeting__content{width:100%;max-width:100%;gap:.7rem;padding:1.1rem 1rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__title{font-size:clamp(1.1rem,4.6vw,1.45rem)}.hero__cell--greeting[data-v-e5c6d457] .greeting__input{min-height:3.1rem;padding:.6rem .65rem .6rem 1rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__placeholder{font-size:.9rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__action{width:2.2rem;height:2.2rem}}@media(max-width:480px){.hero__tiles[data-v-e5c6d457]{grid-auto-rows:minmax(7.75rem,auto)}.hero__cell[data-v-e5c6d457]{min-height:7.75rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__content{gap:.6rem;padding:.95rem .85rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__title{font-size:clamp(1.05rem,5.2vw,1.3rem)}.hero__cell--greeting[data-v-e5c6d457] .greeting__input{min-height:2.9rem}.hero__cell--greeting[data-v-e5c6d457] .greeting__placeholder{font-size:.84rem}}@media(prefers-reduced-motion:reduce){.hero__cell[data-v-e5c6d457]{animation:none;opacity:1;transform:none}}.profile[data-v-3caee281]{background:var(--color-bg);color:var(--color-text);padding:2.5rem 0 4rem}.profile__inner[data-v-3caee281]{max-width:52rem}.profile__hero[data-v-3caee281]{scroll-margin-top:calc(var(--header-height) + 1rem);margin-bottom:1.25rem;text-align:center}.profile__title[data-v-3caee281]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,2.6rem);font-weight:500;line-height:1.15;letter-spacing:-.02em}.profile__lead[data-v-3caee281]{margin:.7rem 0 0;color:var(--color-text-muted);font-size:1.02rem;line-height:1.55}.profile__tabs[data-v-3caee281]{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-bottom:1.75rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.profile__tab[data-v-3caee281]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.45rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.88rem;line-height:1.2;cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.profile__tab-icon[data-v-3caee281]{flex-shrink:0;display:block}.profile__tab[data-v-3caee281]:hover,.profile__tab[data-v-3caee281]:focus-visible{border-color:color-mix(in srgb,var(--color-button) 45%,var(--color-border));background:color-mix(in srgb,var(--color-button) 10%,var(--color-bg));outline:none}.profile__tab.is-active[data-v-3caee281]{border-color:var(--color-text);background:var(--color-text);color:var(--color-bg)}.profile__tab[data-v-3caee281]:active{transform:scale(.98)}.profile__status[data-v-3caee281]{margin:0;color:var(--color-text-muted);text-align:center}.profile__body[data-v-3caee281]{position:relative;min-height:12rem}.profile__panel[data-v-3caee281]{scroll-margin-top:calc(var(--header-height) + 1rem)}.profile-panel-enter-active[data-v-3caee281],.profile-panel-leave-active[data-v-3caee281]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.profile-panel-enter-from[data-v-3caee281]{opacity:0;transform:translateY(8px)}.profile-panel-leave-to[data-v-3caee281]{opacity:0;transform:translateY(-6px)}@media(prefers-reduced-motion:reduce){.profile-panel-enter-active[data-v-3caee281],.profile-panel-leave-active[data-v-3caee281]{transition:none}.profile-panel-enter-from[data-v-3caee281],.profile-panel-leave-to[data-v-3caee281]{transform:none}.profile__degree[data-v-3caee281]:hover,.profile__degree[data-v-3caee281]:focus-within{transform:none}}.profile__heading[data-v-3caee281]{margin:0 0 1rem;font-family:var(--font-family);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-button)}.profile__empty[data-v-3caee281]{margin:0;color:var(--color-text-muted)}.profile__timeline[data-v-3caee281]{margin:0;padding:0;list-style:none;display:grid;gap:0}.profile__job[data-v-3caee281]{display:grid;grid-template-columns:9.5rem minmax(0,1fr);gap:1.25rem;align-items:center;padding:1.1rem 0;border-top:1px solid var(--color-border)}.profile__job[data-v-3caee281]:first-child{border-top:0;padding-top:0}.profile__job-when[data-v-3caee281]{margin:0;color:var(--color-text);font-size:.92rem;font-weight:600}.profile__job-head[data-v-3caee281]{display:flex;align-items:center;gap:.7rem}.profile__job-logo[data-v-3caee281]{width:2.5rem;height:2.5rem;object-fit:contain;padding:.15rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);flex-shrink:0}.profile__job-company[data-v-3caee281]{margin:0;font-weight:600;font-size:1.02rem}.profile__job-role[data-v-3caee281]{margin:.15rem 0 0;color:var(--color-text-muted);font-size:.92rem}.profile__job-text[data-v-3caee281]{margin:.55rem 0 0;color:var(--color-text-muted);font-size:.95rem;line-height:1.5}.profile__split[data-v-3caee281]{display:grid;grid-template-columns:1fr 1fr;gap:2rem 2.5rem}.profile__langs[data-v-3caee281],.profile__certs[data-v-3caee281],.profile__degrees[data-v-3caee281]{margin:0;padding:0;list-style:none}.profile__degrees[data-v-3caee281]{display:grid;gap:.85rem}.profile__degree[data-v-3caee281]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.4rem;min-height:14rem;padding:1.6rem 1.25rem 1.4rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);transition:border-color var(--motion-fast),transform var(--motion-fast)}.profile__degree[data-v-3caee281]:hover,.profile__degree[data-v-3caee281]:focus-within{border-color:color-mix(in srgb,var(--color-button) 40%,var(--color-border));transform:translateY(-2px)}.profile__degree-mark[data-v-3caee281]{display:flex;align-items:center;justify-content:center;width:4.25rem;height:4.25rem;margin-bottom:.45rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-button)}.profile__degree-kind[data-v-3caee281]{margin:0;color:var(--color-button);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.profile__degree-faculty[data-v-3caee281]{margin:0;font-family:var(--font-family);font-size:clamp(1.25rem,2.4vw,1.55rem);font-weight:500;line-height:1.25}.profile__degree-school[data-v-3caee281]{margin:0;color:var(--color-text-muted);font-size:1rem}.profile__degree-when[data-v-3caee281]{margin:.45rem 0 0;font-size:1rem;font-weight:600}.profile__langs[data-v-3caee281]{display:grid;gap:.55rem}.profile__langs li[data-v-3caee281]{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--color-border);font-size:.98rem}.profile__langs li[data-v-3caee281]:last-child{border-bottom:0}.profile__langs li span[data-v-3caee281]:last-child{color:var(--color-text-muted)}.profile__certs[data-v-3caee281]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.profile__cert[data-v-3caee281]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.55rem;min-height:14rem;padding:1.4rem 1.1rem 1.2rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);transition:border-color var(--motion-fast),transform var(--motion-fast)}.profile__cert[data-v-3caee281]:hover,.profile__cert[data-v-3caee281]:focus-within{border-color:color-mix(in srgb,var(--color-button) 40%,var(--color-border));transform:translateY(-2px)}.profile__cert-mark[data-v-3caee281]{display:flex;align-items:center;justify-content:center;width:6.5rem;height:6.5rem;margin-bottom:.35rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.profile__cert-logo[data-v-3caee281]{width:4.4rem;height:4.4rem;object-fit:contain}.profile__cert-name[data-v-3caee281]{margin:0;font-weight:600;font-size:1.02rem;line-height:1.3}.profile__cert-meta[data-v-3caee281]{margin:0;color:var(--color-text-muted);font-size:.92rem}.profile__foot-text[data-v-3caee281]{margin:0 0 1.1rem;max-width:32rem;color:var(--color-text-muted);line-height:1.5}.profile__contact[data-v-3caee281]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.7rem 1.1rem;border:1px solid var(--color-text);border-radius:4px;background:var(--color-text);color:var(--color-bg);font:inherit;font-weight:500;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.profile__contact[data-v-3caee281]:hover,.profile__contact[data-v-3caee281]:focus-visible{background:var(--color-button);border-color:var(--color-button);color:var(--color-button-contrast);outline:none}.profile__contact[data-v-3caee281]:active{transform:translateY(1px)}@media(max-width:720px){.profile[data-v-3caee281]{padding:1.5rem 0 3rem}.profile__title[data-v-3caee281]{font-size:clamp(1.7rem,8vw,2.2rem)}.profile__lead[data-v-3caee281]{font-size:.96rem}.profile__tabs[data-v-3caee281]{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--container-gutter) * -1);padding-inline:var(--container-gutter)}.profile__tabs[data-v-3caee281]::-webkit-scrollbar{display:none}.profile__tab[data-v-3caee281]{flex:0 0 auto;white-space:nowrap}.profile__job[data-v-3caee281]{grid-template-columns:1fr;gap:.45rem}.profile__split[data-v-3caee281]{grid-template-columns:1fr}.profile__job-when[data-v-3caee281]{white-space:normal}.profile__certs[data-v-3caee281]{grid-template-columns:1fr}}.process[data-v-332a864e]{background:var(--color-bg);color:var(--color-text);padding:2.5rem 0 4.5rem}.process__layout[data-v-332a864e]{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:2.5rem;align-items:start}.process__aside[data-v-332a864e]{position:sticky;top:calc(var(--header-height) + 1rem);display:flex;flex-direction:column;gap:1.1rem;padding:1.1rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.process__aside-label[data-v-332a864e]{margin:0;color:var(--color-text-muted);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.process__nav[data-v-332a864e]{display:flex;flex-direction:column;gap:.2rem}.process__nav-link[data-v-332a864e]{display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border-radius:var(--radius);color:var(--color-text);font-size:.92rem;line-height:1.3;text-decoration:none;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.process__nav-index[data-v-332a864e]{min-width:1.5rem;color:var(--color-text-muted);font-size:.78rem;font-weight:600;letter-spacing:.04em}.process__nav-link[data-v-332a864e]:hover,.process__nav-link[data-v-332a864e]:focus-visible{background:var(--color-accent-soft);outline:none}.process__nav-link.is-active[data-v-332a864e]{background:color-mix(in srgb,var(--color-button) 14%,var(--color-surface))}.process__nav-link.is-active .process__nav-index[data-v-332a864e]{color:var(--color-button)}.process__nav-link[data-v-332a864e]:active{transform:scale(.99)}.process__main[data-v-332a864e]{min-width:0;display:flex;flex-direction:column;gap:1.75rem}.process__hero[data-v-332a864e]{scroll-margin-top:calc(var(--header-height) + 1rem);display:flex;flex-direction:column;gap:.85rem;padding:1.5rem 1.5rem 1.6rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.process__eyebrow[data-v-332a864e]{margin:0;color:var(--color-button);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.process__title[data-v-332a864e]{margin:0;max-width:16ch;font-family:var(--font-family);font-size:clamp(2.2rem,4.5vw,3.2rem);font-weight:600;line-height:1.08;letter-spacing:-.03em}.process__lead[data-v-332a864e]{margin:0;max-width:40rem;color:var(--color-text-muted);font-size:1.05rem;line-height:1.6}.process__phases[data-v-332a864e]{margin:.65rem 0 0;padding:.85rem 0 0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.55rem;border-top:1px solid var(--color-border)}.process__phase[data-v-332a864e]{min-width:0}.process__phase-btn[data-v-332a864e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;gap:.3rem;width:100%;min-height:100%;padding:.7rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);text-align:left;cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.process__phase-btn[data-v-332a864e]:hover,.process__phase-btn[data-v-332a864e]:focus-visible{border-color:var(--color-button);background:var(--color-accent-soft);outline:none}.process__phase-btn[data-v-332a864e]:active{transform:scale(.98)}.process__phase-num[data-v-332a864e]{color:var(--color-button);font-size:.75rem;font-weight:700;letter-spacing:.06em}.process__phase-name[data-v-332a864e]{font-size:.88rem;font-weight:600;line-height:1.25}.process__status[data-v-332a864e]{margin:0;color:var(--color-text-muted)}.process__body[data-v-332a864e]{display:flex;flex-direction:column;gap:0}.process__step[data-v-332a864e]{scroll-margin-top:calc(var(--header-height) + 1rem);display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:1.15rem;padding:.35rem 0 1.5rem}.process__step-rail[data-v-332a864e]{display:flex;flex-direction:column;align-items:center;gap:.65rem;padding-top:1.35rem}.process__step-num[data-v-332a864e]{color:var(--color-button);font-size:.95rem;font-weight:700;letter-spacing:.06em;line-height:1}.process__step-line[data-v-332a864e]{flex:1;width:1px;min-height:3rem;background:var(--color-border)}.process__step-panel[data-v-332a864e]{display:flex;flex-direction:column;gap:.95rem;padding:1.35rem 1.4rem 1.45rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);transition:border-color var(--motion-fast),background-color var(--motion-fast)}.process__step:hover .process__step-panel[data-v-332a864e],.process__step:focus-within .process__step-panel[data-v-332a864e]{border-color:color-mix(in srgb,var(--color-button) 40%,var(--color-border))}.process__step-head[data-v-332a864e]{display:block}.process__step-title[data-v-332a864e]{margin:0;font-family:var(--font-family);font-size:clamp(1.35rem,2.4vw,1.7rem);font-weight:600;line-height:1.2;letter-spacing:-.02em}.process__step-body[data-v-332a864e]{margin:0;max-width:46rem;color:var(--color-text-muted);font-size:1rem;line-height:1.65}.process__cta[data-v-332a864e]{scroll-margin-top:calc(var(--header-height) + 1rem);display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;margin-top:.5rem;padding:1.5rem 1.5rem 1.55rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.process__cta-copy[data-v-332a864e]{display:flex;flex-direction:column;gap:.35rem;min-width:0;max-width:36rem}.process__cta-kicker[data-v-332a864e]{margin:0;color:var(--color-button);font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.process__cta-title[data-v-332a864e]{margin:0;font-size:clamp(1.25rem,2vw,1.55rem);font-weight:600;line-height:1.25}.process__cta-text[data-v-332a864e]{margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.55}.process__contact[data-v-332a864e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.5rem;min-height:2.7rem;padding:.7rem 1.15rem;border:0;border-radius:4px;background:var(--color-button);color:var(--color-button-contrast);font:inherit;font-weight:600;cursor:pointer;transition:background-color var(--motion-fast),transform var(--motion-fast)}.process__contact[data-v-332a864e]:hover,.process__contact[data-v-332a864e]:focus-visible{background:var(--color-button-hover);outline:none}.process__contact[data-v-332a864e]:active{background:var(--color-button-active);transform:scale(.98)}@media(max-width:960px){.process__layout[data-v-332a864e]{grid-template-columns:1fr;gap:1.5rem}.process__aside[data-v-332a864e]{position:static}.process__nav[data-v-332a864e]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.process__phases[data-v-332a864e]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.process[data-v-332a864e]{padding:1.5rem 0 3rem}.process__hero[data-v-332a864e],.process__step-panel[data-v-332a864e],.process__cta[data-v-332a864e]{padding-inline:1rem}.process__step[data-v-332a864e]{grid-template-columns:1fr;gap:.75rem;padding-bottom:1.15rem}.process__step-rail[data-v-332a864e]{flex-direction:row;align-items:center;justify-content:flex-start;padding-top:0}.process__step-line[data-v-332a864e]{display:none}.process__nav[data-v-332a864e],.process__phases[data-v-332a864e]{grid-template-columns:1fr}.process__cta[data-v-332a864e]{align-items:stretch;padding:1.15rem 1rem 1.2rem}.process__title[data-v-332a864e]{max-width:none;font-size:clamp(1.7rem,8vw,2.3rem)}.process__contact[data-v-332a864e]{width:100%;justify-content:center}}.stack-icon[data-v-f74267e9]{display:block;flex-shrink:0;overflow:visible}.stack-modal[data-v-d9721e01]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:1rem}.stack-modal__backdrop[data-v-d9721e01]{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:var(--color-overlay);cursor:pointer}.stack-modal__card[data-v-d9721e01]{position:relative;z-index:1;width:min(100%,42rem);max-height:min(90vh,48rem);overflow:auto;padding:1.75rem 1.7rem 1.6rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 6px);background:var(--color-surface);box-shadow:none}.stack-modal__close[data-v-d9721e01]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;top:1rem;right:1rem;width:2.35rem;height:2.35rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);font-size:1.4rem;line-height:1;cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.stack-modal__close[data-v-d9721e01]:hover,.stack-modal__close[data-v-d9721e01]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.stack-modal__close[data-v-d9721e01]:active{transform:scale(.96)}.stack-modal__head[data-v-d9721e01]{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:start;padding-right:2.6rem;margin-bottom:1.4rem}.stack-modal__badge[data-v-d9721e01]{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-bg);color:var(--color-button)}.stack-modal__titles[data-v-d9721e01]{min-width:0}.stack-modal__eyebrow[data-v-d9721e01]{margin:0 0 .35rem;color:var(--color-button);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.stack-modal__title[data-v-d9721e01]{margin:0;font-family:var(--font-family);font-size:clamp(1.55rem,3vw,1.9rem);font-weight:500;line-height:1.15}.stack-modal__summary[data-v-d9721e01]{margin:.65rem 0 0;color:var(--color-text-muted);font-size:1rem;line-height:1.6}.stack-modal__body[data-v-d9721e01]{display:grid;gap:0;border-top:1px solid var(--color-border)}.stack-modal__section[data-v-d9721e01]{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;padding:1.15rem 0;border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:transparent}.stack-modal__section[data-v-d9721e01]:last-child{border-bottom:0;padding-bottom:.2rem}.stack-modal__index[data-v-d9721e01]{color:var(--color-button);font-family:var(--font-family);font-size:.95rem;font-weight:500;line-height:1.4}.stack-modal__section h3[data-v-d9721e01]{margin:0 0 .4rem;color:var(--color-text);font-size:.92rem;font-weight:500;line-height:1.35}.stack-modal__section p[data-v-d9721e01]{margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.7}.stack-modal__tags[data-v-d9721e01]{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.2rem 0 0;padding:0;list-style:none}.stack-modal__tags li[data-v-d9721e01]{padding:.3rem .7rem;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);font-size:.8rem;line-height:1.35}.stack-modal-enter-active[data-v-d9721e01],.stack-modal-leave-active[data-v-d9721e01]{transition:opacity var(--motion-panel)}.stack-modal-enter-active .stack-modal__card[data-v-d9721e01],.stack-modal-leave-active .stack-modal__card[data-v-d9721e01]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.stack-modal-enter-from[data-v-d9721e01],.stack-modal-leave-to[data-v-d9721e01]{opacity:0}.stack-modal-enter-from .stack-modal__card[data-v-d9721e01],.stack-modal-leave-to .stack-modal__card[data-v-d9721e01]{opacity:0;transform:translateY(.85rem) scale(.98)}@media(max-width:900px){.stack-modal[data-v-d9721e01]{place-items:end center;padding:0}.stack-modal__card[data-v-d9721e01]{width:100%;max-height:min(92dvh,100%);padding:1.2rem 1rem 1.35rem;border-radius:calc(var(--radius) + 4px) calc(var(--radius) + 4px) 0 0;border-left:0;border-right:0;border-bottom:0}.stack-modal__close[data-v-d9721e01]{top:.75rem;right:.75rem;width:2.2rem;height:2.2rem}.stack-modal__head[data-v-d9721e01]{gap:.75rem;margin-bottom:1rem;padding-right:2.4rem}.stack-modal__badge[data-v-d9721e01]{width:2.9rem;height:2.9rem}.stack-modal__title[data-v-d9721e01]{font-size:clamp(1.3rem,6vw,1.6rem)}.stack-modal__summary[data-v-d9721e01]{margin-top:.45rem;font-size:.92rem;line-height:1.5}.stack-modal__section[data-v-d9721e01]{gap:.65rem;padding:.95rem 0}.stack-modal__section p[data-v-d9721e01]{font-size:.92rem;line-height:1.6}.stack-modal-enter-from .stack-modal__card[data-v-d9721e01],.stack-modal-leave-to .stack-modal__card[data-v-d9721e01]{transform:translateY(1.25rem)}}.stack[data-v-37d95f8a]{background:var(--color-bg);color:var(--color-text);padding:2.75rem 0 4.5rem;overflow-x:clip}.stack__layout[data-v-37d95f8a]{display:grid;grid-template-columns:minmax(14rem,16.5rem) minmax(0,1fr);gap:2.75rem;align-items:start;min-width:0}.stack__aside[data-v-37d95f8a]{position:sticky;top:calc(var(--header-height) + 1rem);display:flex;flex-direction:column;gap:1.15rem;min-width:0;max-width:100%;padding:1.15rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.stack__aside-label[data-v-37d95f8a]{margin:0 .35rem;color:var(--color-button);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.stack__nav[data-v-37d95f8a]{display:flex;flex-direction:column;gap:.2rem}.stack__nav-link[data-v-37d95f8a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;width:100%;padding:.58rem .7rem;border:0;border-radius:var(--radius);background:transparent;color:var(--color-text);font:inherit;font-size:.92rem;line-height:1.25;text-align:left;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.stack__nav-link[data-v-37d95f8a]:before{content:"";position:absolute;left:0;top:.55rem;bottom:.55rem;width:2px;border-radius:999px;background:transparent;transition:background-color var(--motion-fast)}.stack__nav-mark[data-v-37d95f8a]{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-button);transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}.stack__nav-copy[data-v-37d95f8a]{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-width:0}.stack__nav-text[data-v-37d95f8a]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack__nav-count[data-v-37d95f8a]{flex-shrink:0;color:var(--color-text-muted);font-size:.78rem;font-weight:500;font-variant-numeric:tabular-nums}.stack__nav-link[data-v-37d95f8a]:hover,.stack__nav-link[data-v-37d95f8a]:focus-visible{background:var(--color-accent-soft);outline:none}.stack__nav-link:hover .stack__nav-mark[data-v-37d95f8a],.stack__nav-link:focus-visible .stack__nav-mark[data-v-37d95f8a],.stack__nav-link.is-active .stack__nav-mark[data-v-37d95f8a]{border-color:color-mix(in srgb,var(--color-button) 55%,var(--color-border));background:color-mix(in srgb,var(--color-button) 12%,var(--color-bg))}.stack__nav-link.is-active[data-v-37d95f8a]{background:color-mix(in srgb,var(--color-button) 12%,var(--color-surface))}.stack__nav-link.is-active[data-v-37d95f8a]:before{background:var(--color-button)}.stack__nav-link[data-v-37d95f8a]:active{transform:scale(.99)}.stack__main[data-v-37d95f8a]{min-width:0;display:flex;flex-direction:column;gap:1.75rem}.stack__hero[data-v-37d95f8a]{display:grid;gap:.75rem;max-width:40rem;padding:.15rem 0 .35rem}.stack__eyebrow[data-v-37d95f8a]{margin:0;color:var(--color-button);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.stack__title[data-v-37d95f8a]{margin:0;font-family:var(--font-family);font-size:clamp(2.1rem,4.2vw,3rem);font-weight:500;line-height:1.08;letter-spacing:-.03em}.stack__lead[data-v-37d95f8a]{margin:0;color:var(--color-text-muted);font-size:1.05rem;line-height:1.6}.stack__meta[data-v-37d95f8a]{margin:.15rem 0 0;color:var(--color-text);font-size:.88rem;font-weight:500;letter-spacing:.01em}.stack__status[data-v-37d95f8a]{margin:0;color:var(--color-text-muted);font-size:.98rem}.stack__section[data-v-37d95f8a]{display:grid;gap:1.15rem}.stack__section-head[data-v-37d95f8a]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.95rem;border-bottom:1px solid var(--color-border)}.stack__section-titles[data-v-37d95f8a]{display:flex;align-items:center;gap:.85rem;min-width:0}.stack__section-icon[data-v-37d95f8a]{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-surface);color:var(--color-button)}.stack__section-title[data-v-37d95f8a]{margin:0;font-size:1.35rem;font-weight:600;line-height:1.2;letter-spacing:-.02em}.stack__section-meta[data-v-37d95f8a]{margin:.2rem 0 0;color:var(--color-text-muted);font-size:.82rem}.stack__section-back[data-v-37d95f8a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;padding:.45rem .85rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.82rem;font-weight:500;cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.stack__section-back[data-v-37d95f8a]:hover,.stack__section-back[data-v-37d95f8a]:focus-visible{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 10%,var(--color-surface));outline:none}.stack__section-back[data-v-37d95f8a]:active{transform:scale(.98)}.stack__grid[data-v-37d95f8a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:stretch}.stack-panel-enter-active[data-v-37d95f8a],.stack-panel-leave-active[data-v-37d95f8a]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.stack-panel-enter-from[data-v-37d95f8a],.stack-panel-leave-to[data-v-37d95f8a]{opacity:0;transform:translateY(.5rem)}.stack__card[data-v-37d95f8a],.stack__row-item[data-v-37d95f8a]{animation:stack-rise-37d95f8a .42s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--i, 0) * 35ms)}.stack__card[data-v-37d95f8a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.85rem;align-items:center;width:100%;padding:1.05rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.stack__card[data-v-37d95f8a]:hover,.stack__card[data-v-37d95f8a]:focus-visible{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 8%,var(--color-surface));outline:none;transform:translateY(-1px)}.stack__card[data-v-37d95f8a]:active{transform:translateY(0) scale(.99)}.stack__card-icon[data-v-37d95f8a]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.55rem;height:2.55rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-bg);color:var(--color-button);transition:border-color var(--motion-fast),background-color var(--motion-fast)}.stack__card:hover .stack__card-icon[data-v-37d95f8a],.stack__card:focus-visible .stack__card-icon[data-v-37d95f8a]{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 12%,var(--color-bg))}.stack__card-titles[data-v-37d95f8a]{display:grid;gap:.2rem;min-width:0}.stack__card-title[data-v-37d95f8a]{margin:0;font-family:var(--font-family);font-size:1.1rem;font-weight:600;line-height:1.2;letter-spacing:-.015em}.stack__card-meta[data-v-37d95f8a]{margin:0;color:var(--color-text-muted);font-size:.78rem;font-variant-numeric:tabular-nums}.stack__card-browse[data-v-37d95f8a]{flex-shrink:0;padding:.4rem .7rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg);color:var(--color-link-alt);font-size:.76rem;font-weight:600;transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}.stack__card:hover .stack__card-browse[data-v-37d95f8a],.stack__card:focus-visible .stack__card-browse[data-v-37d95f8a]{border-color:var(--color-button);color:var(--color-button)}.stack__row[data-v-37d95f8a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:0;padding:0;list-style:none}.stack__row-item[data-v-37d95f8a]{margin:0;min-width:0}.stack__feature[data-v-37d95f8a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.05rem;align-items:start;width:100%;min-height:8.25rem;padding:1.15rem 1.2rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.stack__feature-icon[data-v-37d95f8a]{display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-bg);color:var(--color-button);transition:background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.stack__feature-body[data-v-37d95f8a]{display:grid;gap:.45rem;min-width:0;align-content:start}.stack__feature-name[data-v-37d95f8a]{font-size:1.15rem;font-weight:600;line-height:1.25;letter-spacing:-.015em}.stack__feature-desc[data-v-37d95f8a]{color:var(--color-text-muted);font-size:.9rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.stack__feature-more[data-v-37d95f8a]{display:inline-flex;align-items:center;gap:.35rem;margin-top:.15rem;color:var(--color-link-alt);font-size:.82rem;font-weight:600;transition:color var(--motion-fast),gap var(--motion-fast)}.stack__feature[data-v-37d95f8a]:hover,.stack__feature[data-v-37d95f8a]:focus-visible{background:var(--color-bg);border-color:var(--color-button);transform:translateY(-2px);outline:none}.stack__feature:hover .stack__feature-icon[data-v-37d95f8a],.stack__feature:focus-visible .stack__feature-icon[data-v-37d95f8a]{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 12%,var(--color-bg));transform:scale(1.04)}.stack__feature:hover .stack__feature-more[data-v-37d95f8a],.stack__feature:focus-visible .stack__feature-more[data-v-37d95f8a]{color:var(--color-button);gap:.5rem}.stack__feature[data-v-37d95f8a]:active{transform:translateY(0) scale(.99)}@keyframes stack-rise-37d95f8a{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){.stack[data-v-37d95f8a]{padding:1.35rem 0 2.85rem}.stack__layout[data-v-37d95f8a]{grid-template-columns:minmax(0,1fr);gap:1.2rem}.stack__aside[data-v-37d95f8a]{position:static;gap:.7rem;padding:.85rem .75rem}.stack__nav[data-v-37d95f8a]{flex-direction:row;flex-wrap:wrap;gap:.4rem}.stack__nav-link[data-v-37d95f8a]{flex:0 1 auto;width:auto;max-width:100%;grid-template-columns:auto minmax(0,1fr);padding:.48rem .75rem;border:1px solid var(--color-border);border-radius:999px;font-size:.82rem}.stack__nav-link[data-v-37d95f8a]:before{display:none}.stack__nav-mark[data-v-37d95f8a]{width:1.45rem;height:1.45rem}.stack__nav-link.is-active[data-v-37d95f8a]{border-color:var(--color-button)}.stack__hero[data-v-37d95f8a]{gap:.55rem;max-width:none}.stack__title[data-v-37d95f8a]{font-size:clamp(1.55rem,7vw,2.15rem);overflow-wrap:anywhere}.stack__lead[data-v-37d95f8a]{font-size:.94rem}.stack__grid[data-v-37d95f8a],.stack__row[data-v-37d95f8a]{grid-template-columns:1fr}.stack__section-head[data-v-37d95f8a]{flex-wrap:wrap}.stack__card[data-v-37d95f8a]{grid-template-columns:auto minmax(0,1fr)}.stack__card-browse[data-v-37d95f8a]{grid-column:1 / -1;justify-self:start}.stack__feature[data-v-37d95f8a]{min-height:0;padding:1rem}.stack__feature[data-v-37d95f8a]:hover,.stack__feature[data-v-37d95f8a]:focus-visible,.stack__card[data-v-37d95f8a]:hover,.stack__card[data-v-37d95f8a]:focus-visible{transform:none}}@media(max-width:480px){.stack__card-browse[data-v-37d95f8a]{width:100%;text-align:center}.stack__section-back[data-v-37d95f8a]{display:inline-flex;align-items:center;justify-content:center;width:100%}.stack__aside-label[data-v-37d95f8a]{padding-inline:.15rem}.stack__nav-text[data-v-37d95f8a]{white-space:normal}}@media(prefers-reduced-motion:reduce){.stack__card[data-v-37d95f8a],.stack__row-item[data-v-37d95f8a]{animation:none}.stack-panel-enter-active[data-v-37d95f8a],.stack-panel-leave-active[data-v-37d95f8a],.stack__card[data-v-37d95f8a],.stack__feature[data-v-37d95f8a],.stack__nav-link[data-v-37d95f8a]{transition:none}}.experience[data-v-b1576f2a]{background:var(--color-accent-soft);color:var(--color-text);padding:2.5rem 0 4rem}.experience__layout[data-v-b1576f2a]{display:grid;grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);gap:2.5rem;align-items:start}.experience__aside[data-v-b1576f2a]{position:sticky;top:calc(var(--header-height) + 1rem);display:flex;flex-direction:column;gap:1.5rem;padding:1.25rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.experience__aside-label[data-v-b1576f2a]{margin:0;color:var(--color-button);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.experience__nav[data-v-b1576f2a]{position:relative;display:flex;flex-direction:column;gap:.15rem}.experience__nav-link[data-v-b1576f2a]{position:relative;display:flex;align-items:center;gap:.7rem;padding:.55rem .8rem;border-radius:var(--radius);color:var(--color-text);font-size:.95rem;line-height:1.3;text-decoration:none;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.experience__nav-link[data-v-b1576f2a]:hover,.experience__nav-link[data-v-b1576f2a]:focus-visible{background:var(--color-accent-soft);outline:none}.experience__nav-link.is-active[data-v-b1576f2a]{background:color-mix(in srgb,var(--color-button) 14%,var(--color-surface))}.experience__nav-link[data-v-b1576f2a]:active{transform:scale(.99)}.experience__main[data-v-b1576f2a]{min-width:0;display:flex;flex-direction:column;gap:1.5rem}.experience__hero[data-v-b1576f2a]{scroll-margin-top:calc(var(--header-height) + 1rem)}.experience__title[data-v-b1576f2a]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,2.75rem);font-weight:500;line-height:1.15;letter-spacing:-.02em}.experience__lead[data-v-b1576f2a]{margin:.75rem 0 0;max-width:40rem;color:var(--color-text-muted);font-size:1.02rem;line-height:1.55}.experience__status[data-v-b1576f2a]{margin:0;color:var(--color-text-muted)}.experience__grid[data-v-b1576f2a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.experience__card[data-v-b1576f2a]{scroll-margin-top:calc(var(--header-height) + 1rem);padding:1.35rem 1.35rem 1.4rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);transition:transform var(--motion-fast),border-color var(--motion-fast)}.experience__card[data-v-b1576f2a]:hover,.experience__card[data-v-b1576f2a]:focus-within{border-color:color-mix(in srgb,var(--color-button) 35%,var(--color-border))}.experience__card--work[data-v-b1576f2a]{grid-column:1 / -1}.experience__footer[data-v-b1576f2a]{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.15rem 1.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.experience__card-head[data-v-b1576f2a]{display:flex;align-items:center;gap:.7rem;margin-bottom:1.1rem}.experience__card-icon[data-v-b1576f2a]{display:inline-flex;color:var(--color-button)}.experience__card-title[data-v-b1576f2a]{margin:0;font-family:var(--font-family);font-size:1.35rem;font-weight:500;line-height:1.2}.experience__empty[data-v-b1576f2a]{color:var(--color-text-muted);font-size:.95rem}.experience__degree-list[data-v-b1576f2a],.experience__cert-list[data-v-b1576f2a],.experience__work-list[data-v-b1576f2a],.experience__lang-list[data-v-b1576f2a]{margin:0;padding:0;list-style:none}.experience__degree-item[data-v-b1576f2a]{display:flex;gap:1rem;align-items:flex-start}.experience__degree-mark[data-v-b1576f2a]{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border:1px solid var(--color-border);border-radius:50%;color:var(--color-button);flex-shrink:0}.experience__degree-faculty[data-v-b1576f2a]{margin:0;font-weight:500;font-size:1.05rem}.experience__degree-university[data-v-b1576f2a],.experience__degree-meta[data-v-b1576f2a],.experience__degree-type[data-v-b1576f2a]{margin:.25rem 0 0;color:var(--color-text-muted);font-size:.95rem}.experience__cert-item[data-v-b1576f2a],.experience__lang-item[data-v-b1576f2a]{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--color-border)}.experience__cert-item[data-v-b1576f2a]:last-child,.experience__lang-item[data-v-b1576f2a]:last-child{border-bottom:0;padding-bottom:0}.experience__cert-item[data-v-b1576f2a]:first-child,.experience__lang-item[data-v-b1576f2a]:first-child{padding-top:0}.experience__cert-main[data-v-b1576f2a]{display:inline-flex;align-items:center;gap:.65rem;min-width:0}.experience__cert-logo[data-v-b1576f2a]{width:2rem;height:2rem;object-fit:contain;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);flex-shrink:0}.experience__cert-name[data-v-b1576f2a],.experience__lang-item>span[data-v-b1576f2a]:first-child{font-weight:500}.experience__cert-meta[data-v-b1576f2a],.experience__lang-level[data-v-b1576f2a]{color:var(--color-text-muted);overflow-wrap:anywhere}.experience__work-item[data-v-b1576f2a]{padding:1rem 0 1rem .85rem;border-left:2px solid var(--color-border);border-bottom:1px solid var(--color-border)}.experience__work-item[data-v-b1576f2a]:first-child{padding-top:.25rem}.experience__work-item[data-v-b1576f2a]:last-child{border-bottom:0;padding-bottom:0}.experience__work-top[data-v-b1576f2a]{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.experience__work-titles[data-v-b1576f2a]{min-width:0}.experience__work-heading[data-v-b1576f2a]{display:flex;align-items:center;gap:.75rem}.experience__work-logo[data-v-b1576f2a]{width:3rem;height:3rem;object-fit:contain;padding:.2rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);flex-shrink:0}.experience__work-role[data-v-b1576f2a]{margin:0;font-weight:500;font-size:1.02rem}.experience__work-sep[data-v-b1576f2a]{margin:0 .35rem;color:var(--color-text-muted);font-weight:400}.experience__work-status[data-v-b1576f2a]{display:inline-flex;margin-top:.4rem;padding:.2rem .55rem;border-radius:var(--radius);background:var(--color-accent-soft);color:var(--color-text-muted);font-size:.75rem}.experience__work-time[data-v-b1576f2a]{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;white-space:nowrap}.experience__work-period[data-v-b1576f2a]{color:var(--color-text);font-size:.98rem;font-weight:600}.experience__work-active[data-v-b1576f2a]{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-link);font-size:.82rem;font-weight:500}.experience__work-dot[data-v-b1576f2a]{width:.45rem;height:.45rem;border-radius:50%;background:currentColor}.experience__work-desc[data-v-b1576f2a]{margin:.55rem 0 0;color:var(--color-text-muted);font-size:.95rem;line-height:1.5}.experience__documents-text[data-v-b1576f2a]{margin:0;color:var(--color-text-muted);line-height:1.55}.experience__footer-copy[data-v-b1576f2a]{display:flex;align-items:flex-start;gap:.85rem;min-width:0}.experience__footer-copy p[data-v-b1576f2a]{margin:0;color:var(--color-text-muted);line-height:1.5}.experience__footer-bar[data-v-b1576f2a]{width:2px;align-self:stretch;min-height:2rem;border-radius:0;background:var(--color-button);flex-shrink:0}.experience__contact[data-v-b1576f2a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border:1px solid var(--color-button);border-radius:4px;background:transparent;color:var(--color-button);font:inherit;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.experience__contact[data-v-b1576f2a]:hover,.experience__contact[data-v-b1576f2a]:focus-visible{background:var(--color-button);color:var(--color-button-contrast);outline:none}.experience__contact[data-v-b1576f2a]:active{transform:translateY(1px)}@media(max-width:900px){.experience__layout[data-v-b1576f2a]{grid-template-columns:1fr;gap:1.25rem}.experience__aside[data-v-b1576f2a]{position:static;gap:.7rem;padding:.85rem .75rem}.experience__nav[data-v-b1576f2a]{flex-direction:row;flex-wrap:nowrap;gap:.4rem;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.experience__nav[data-v-b1576f2a]::-webkit-scrollbar{display:none}.experience__nav-link[data-v-b1576f2a]{flex:0 0 auto;white-space:nowrap;padding:.48rem .75rem;border:1px solid var(--color-border);border-radius:999px;font-size:.82rem}.experience__nav-link.is-active[data-v-b1576f2a]{border-color:var(--color-button)}}@media(max-width:720px){.experience[data-v-b1576f2a]{padding:1.5rem 0 3rem}.experience__title[data-v-b1576f2a]{font-size:clamp(1.7rem,8vw,2.2rem)}.experience__lead[data-v-b1576f2a]{font-size:.96rem}.experience__grid[data-v-b1576f2a]{grid-template-columns:1fr}.experience__card[data-v-b1576f2a],.experience__footer[data-v-b1576f2a]{padding:1.1rem 1rem}.experience__work-heading[data-v-b1576f2a]{align-items:flex-start}.experience__work-role[data-v-b1576f2a]{display:flex;flex-direction:column;gap:.15rem}.experience__work-sep[data-v-b1576f2a]{display:none}.experience__work-time[data-v-b1576f2a]{align-items:flex-start;white-space:normal}.experience__cert-item[data-v-b1576f2a],.experience__lang-item[data-v-b1576f2a]{flex-wrap:wrap}.experience__cert-meta[data-v-b1576f2a],.experience__lang-level[data-v-b1576f2a]{white-space:normal}.experience__footer[data-v-b1576f2a]{align-items:stretch}.experience__contact[data-v-b1576f2a]{width:100%;justify-content:center}}.news-tile[data-v-20dc772f]{min-width:0;min-height:0;height:100%;border-radius:1rem;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border)}.news-tile__link[data-v-20dc772f]{position:relative;display:flex;height:100%;min-height:100%;color:#fff;text-decoration:none;outline:none}.news-tile__bg[data-v-20dc772f]{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#1a1a1a;background-position:center;background-size:cover;filter:grayscale(1);opacity:0;transform:scale(1.02);transition:opacity var(--motion-panel),transform var(--motion-panel),filter var(--motion-panel)}.news-tile.is-visible .news-tile__bg[data-v-20dc772f]{opacity:1;transform:scale(1)}.news-tile--diagram .news-tile__bg[data-v-20dc772f]{background-position:center top;background-size:cover;filter:none}.news-tile--cover-mark .news-tile__bg[data-v-20dc772f]{background-position:center 18%;background-size:cover;filter:none}.news-tile--logo .news-tile__bg[data-v-20dc772f]{background-color:#fff;background-position:center;background-size:contain;background-repeat:no-repeat;filter:none}.news-tile__shade[data-v-20dc772f]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000001f,#00000061 42%,#000000db);pointer-events:none}.news-tile--diagram .news-tile__shade[data-v-20dc772f],.news-tile--cover-mark .news-tile__shade[data-v-20dc772f]{background:linear-gradient(180deg,#0000,#0000001f 42%,#000000eb)}.news-tile__content[data-v-20dc772f]{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:.55rem;width:100%;padding:1.15rem 1.2rem 1.25rem}.news-tile__meta[data-v-20dc772f]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffffd1}.news-tile__dot[data-v-20dc772f]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.news-tile__title[data-v-20dc772f]{margin:0;font-family:var(--font-display);font-size:clamp(1.15rem,1.8vw,1.55rem);font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--motion-fast)}.news-tile--lg .news-tile__title[data-v-20dc772f],.news-tile--wide .news-tile__title[data-v-20dc772f],.news-tile--tall .news-tile__title[data-v-20dc772f]{font-size:clamp(1.35rem,2.2vw,1.9rem)}.news-tile__excerpt[data-v-20dc772f]{margin:0;max-width:34rem;color:#ffffffc7;font-size:.9rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-tile__link:hover .news-tile__bg[data-v-20dc772f],.news-tile__link:focus-visible .news-tile__bg[data-v-20dc772f]{transform:scale(1.06);filter:grayscale(.35)}.news-tile--diagram .news-tile__link:hover .news-tile__bg[data-v-20dc772f],.news-tile--diagram .news-tile__link:focus-visible .news-tile__bg[data-v-20dc772f],.news-tile--cover-mark .news-tile__link:hover .news-tile__bg[data-v-20dc772f],.news-tile--cover-mark .news-tile__link:focus-visible .news-tile__bg[data-v-20dc772f],.news-tile--logo .news-tile__link:hover .news-tile__bg[data-v-20dc772f],.news-tile--logo .news-tile__link:focus-visible .news-tile__bg[data-v-20dc772f]{filter:none}.news-tile__link:hover .news-tile__title[data-v-20dc772f],.news-tile__link:focus-visible .news-tile__title[data-v-20dc772f]{color:var(--color-button-hover)}.news-tile__link[data-v-20dc772f]:focus-visible{box-shadow:inset 0 0 0 2px var(--color-button)}.news-tile__link:active .news-tile__bg[data-v-20dc772f]{transform:scale(1.03)}@media(max-width:700px){.news-tile[data-v-20dc772f]{border-radius:.85rem}.news-tile__content[data-v-20dc772f]{padding:.9rem .95rem 1rem;gap:.4rem}.news-tile__title[data-v-20dc772f],.news-tile--lg .news-tile__title[data-v-20dc772f],.news-tile--wide .news-tile__title[data-v-20dc772f],.news-tile--tall .news-tile__title[data-v-20dc772f]{font-size:1.2rem}}.news[data-v-5b8e4988]{padding:2.5rem 0 4rem;background:var(--color-bg);color:var(--color-text)}.news__inner[data-v-5b8e4988]{display:grid;gap:1.75rem}.news__hero[data-v-5b8e4988]{display:grid;gap:.55rem;max-width:40rem;margin-inline:auto;text-align:center;justify-items:center}.news__title[data-v-5b8e4988]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.news__lead[data-v-5b8e4988],.news__status[data-v-5b8e4988]{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.5}.news__grid[data-v-5b8e4988]{display:grid;grid-auto-rows:9.5rem;gap:.75rem}@media(max-width:1100px){.news__grid[data-v-5b8e4988]{grid-auto-rows:9rem}}@media(max-width:700px){.news[data-v-5b8e4988]{padding:1.5rem 0 2.75rem}.news__title[data-v-5b8e4988]{font-size:clamp(1.7rem,8vw,2.2rem)}.news__lead[data-v-5b8e4988],.news__status[data-v-5b8e4988]{font-size:.96rem}.news__grid[data-v-5b8e4988]{grid-auto-rows:16rem}}.share-icon[data-v-4607d640]{display:block;width:1.35rem;height:1.35rem;flex:0 0 1.35rem}.share[data-v-e8945811]{display:grid;width:100%}.share__open[data-v-e8945811]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:2.75rem;margin:.25rem 0 0;padding:.7rem 1.25rem;border:1px solid #000000;border-radius:4px;background:#000;color:#fff;font:inherit;font-size:1rem;font-weight:700;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.share__open[data-v-e8945811]:hover,.share__open[data-v-e8945811]:focus-visible{background:#222;border-color:#222;color:#fff;outline:none}.share__open[data-v-e8945811]:active{transform:scale(.98)}.app[data-theme=dark]{border-color:#fff}.share-modal[data-v-e8945811]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));background:var(--color-overlay)}.share-modal__dialog[data-v-e8945811]{width:min(100%,20rem);padding:1.2rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text)}.share-modal__head[data-v-e8945811]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.9rem}.share-modal__title[data-v-e8945811]{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.share-modal__close[data-v-e8945811]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2rem;height:2rem;margin:0;padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:1.2rem;line-height:1;cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.share-modal__close[data-v-e8945811]:hover,.share-modal__close[data-v-e8945811]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.share-modal__close[data-v-e8945811]:active{transform:scale(.96)}.share-modal__list[data-v-e8945811]{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;margin:0;padding:0;list-style:none}.share-modal__icon[data-v-e8945811]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin:0;padding:0;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);text-decoration:none;cursor:pointer;transition:color var(--motion-fast),border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.share-modal__icon[data-v-e8945811] .share-icon{width:1.35rem;height:1.35rem;flex:0 0 1.35rem}.share-modal__icon[data-v-e8945811]:hover,.share-modal__icon[data-v-e8945811]:focus-visible{color:var(--color-button-contrast);border-color:var(--color-button);background:var(--color-button);outline:none}.share-modal__icon[data-v-e8945811]:active{transform:scale(.96)}.share-modal-enter-active[data-v-e8945811],.share-modal-leave-active[data-v-e8945811]{transition:opacity var(--motion-panel)}.share-modal-enter-active .share-modal__dialog[data-v-e8945811],.share-modal-leave-active .share-modal__dialog[data-v-e8945811]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.share-modal-enter-from[data-v-e8945811],.share-modal-leave-to[data-v-e8945811]{opacity:0}.share-modal-enter-from .share-modal__dialog[data-v-e8945811],.share-modal-leave-to .share-modal__dialog[data-v-e8945811]{opacity:0;transform:translateY(10px) scale(.98)}.error-page[data-v-bf88053d]{display:grid;place-items:center;min-height:calc(100vh - 12rem);padding:4rem 0 5rem}.error-page__inner[data-v-bf88053d]{width:100%;max-width:36rem;text-align:center}.error-page__code[data-v-bf88053d]{margin:0 0 1rem;color:var(--color-text-muted);font-family:var(--font-family);font-size:clamp(4rem,12vw,7rem);font-weight:600;line-height:.9;letter-spacing:-.04em}.error-page__title[data-v-bf88053d]{margin:0 0 .85rem;color:var(--color-text);font-family:var(--font-family);font-size:clamp(1.6rem,3vw,2.1rem);font-weight:600;line-height:1.2}.error-page__lead[data-v-bf88053d]{margin:0 auto 2rem;max-width:28rem;color:var(--color-text-muted);font-size:1rem;font-weight:400;line-height:1.65}.error-page__actions[data-v-bf88053d]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem 1.25rem}.error-page__link[data-v-bf88053d]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--color-link);font-size:.95rem;font-weight:600;line-height:1.2;text-decoration:underline;text-underline-offset:.18em;cursor:pointer;transition:color var(--motion-fast),transform var(--motion-fast)}.error-page__link[data-v-bf88053d]:hover,.error-page__link[data-v-bf88053d]:focus-visible{color:var(--color-link-alt);outline:none}.error-page__link[data-v-bf88053d]:active{transform:scale(.98)}@media(max-width:640px){.error-page[data-v-bf88053d]{min-height:calc(100dvh - 9rem);padding:2.5rem 0 3.25rem}.error-page__actions[data-v-bf88053d]{flex-direction:column;width:100%}}.news-detail[data-v-74641cd1]{padding:2.5rem 0 4rem}.news-detail__inner[data-v-74641cd1]{display:grid;gap:1rem;max-width:48rem}.news-detail__status[data-v-74641cd1]{margin:0;color:var(--color-text-muted)}.news-detail__meta[data-v-74641cd1]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.news-detail__dot[data-v-74641cd1]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.news-detail__title[data-v-74641cd1]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.news-detail__excerpt[data-v-74641cd1]{margin:0;color:var(--color-text-muted);font-size:1.05rem;line-height:1.55}.news-detail__body[data-v-74641cd1]{color:var(--color-text);font-size:1.02rem;line-height:1.7}.news-detail__body[data-v-74641cd1] h2{margin:1.4rem 0 .7rem;font-family:var(--font-family);font-size:1.4rem}.news-detail__body[data-v-74641cd1] p,.news-detail__body[data-v-74641cd1] ul,.news-detail__body[data-v-74641cd1] ol,.news-detail__body[data-v-74641cd1] pre{margin:0 0 .9rem}.news-detail__body[data-v-74641cd1] ul,.news-detail__body[data-v-74641cd1] ol{padding-left:1.2rem}.news-detail__body[data-v-74641cd1] li{margin:0 0 .35rem}.news-detail__body[data-v-74641cd1] figure{margin:1.2rem 0 1.4rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.news-detail__body[data-v-74641cd1] figure img{display:block;width:100%;height:auto}.news-detail__body[data-v-74641cd1] figcaption{margin:.65rem 0 0;color:var(--color-text-muted);font-size:.88rem;line-height:1.45}.news-detail__body[data-v-74641cd1] code{font-size:.92em}.news-detail__body[data-v-74641cd1] a{color:var(--color-link);transition:color var(--motion-fast)}.news-detail__body[data-v-74641cd1] a:hover,.news-detail__body[data-v-74641cd1] a:focus-visible{color:var(--color-link-hover)}.news-detail__back[data-v-74641cd1]{width:fit-content;margin-top:.5rem;color:var(--color-link-alt);text-decoration:none;transition:color var(--motion-fast)}.news-detail__back[data-v-74641cd1]:hover,.news-detail__back[data-v-74641cd1]:focus-visible{color:var(--color-link-alt-hover)}.news-detail__back[data-v-74641cd1]:active{opacity:.85}@media(max-width:640px){.news-detail[data-v-74641cd1]{padding:1.5rem 0 2.75rem}.news-detail__title[data-v-74641cd1]{overflow-wrap:break-word}.news-detail__body[data-v-74641cd1] img{max-width:100%;height:auto}}.notes[data-v-6f86b038]{padding:2.5rem 0 4rem;background:var(--color-bg);color:var(--color-text)}.notes__inner[data-v-6f86b038]{display:grid;gap:1.75rem}.notes__hero[data-v-6f86b038]{display:grid;gap:.55rem;max-width:40rem;margin-inline:auto;text-align:center;justify-items:center}.notes__title[data-v-6f86b038]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.notes__lead[data-v-6f86b038],.notes__status[data-v-6f86b038]{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.5}.notes__filters[data-v-6f86b038]{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.notes__filter[data-v-6f86b038]{margin:0;padding:.45rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.86rem;line-height:1.2;cursor:pointer;transition:color var(--motion-fast),background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.notes__filter[data-v-6f86b038]:hover,.notes__filter[data-v-6f86b038]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.notes__filter[data-v-6f86b038]:active{transform:scale(.98)}.notes__filter.is-active[data-v-6f86b038]{border-color:var(--color-button);background:var(--color-button);color:var(--color-button-contrast)}.notes__grid[data-v-6f86b038]{display:grid;grid-auto-rows:9.5rem;gap:.75rem}@media(max-width:1100px){.notes__grid[data-v-6f86b038]{grid-auto-rows:9rem}}@media(max-width:700px){.notes[data-v-6f86b038]{padding:1.5rem 0 2.75rem}.notes__title[data-v-6f86b038]{font-size:clamp(1.7rem,8vw,2.2rem)}.notes__lead[data-v-6f86b038],.notes__status[data-v-6f86b038]{font-size:.96rem}.notes__filters[data-v-6f86b038]{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--container-gutter) * -1);padding-inline:var(--container-gutter)}.notes__filters[data-v-6f86b038]::-webkit-scrollbar{display:none}.notes__filter[data-v-6f86b038]{flex:0 0 auto;white-space:nowrap}.notes__grid[data-v-6f86b038]{grid-auto-rows:16rem}}.notes-detail[data-v-b953aa2f]{padding:2.5rem 0 4rem}.notes-detail__inner[data-v-b953aa2f]{display:grid;gap:1rem;max-width:48rem}.notes-detail__status[data-v-b953aa2f]{margin:0;color:var(--color-text-muted)}.notes-detail__meta[data-v-b953aa2f]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.notes-detail__dot[data-v-b953aa2f]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.notes-detail__title[data-v-b953aa2f]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.notes-detail__excerpt[data-v-b953aa2f]{margin:0;color:var(--color-text-muted);font-size:1.05rem;line-height:1.55}.notes-detail__body[data-v-b953aa2f]{color:var(--color-text);font-size:1.02rem;line-height:1.7}.notes-detail__body[data-v-b953aa2f] h2{margin:1.4rem 0 .7rem;font-family:var(--font-family);font-size:1.4rem}.notes-detail__body[data-v-b953aa2f] p,.notes-detail__body[data-v-b953aa2f] ul,.notes-detail__body[data-v-b953aa2f] ol,.notes-detail__body[data-v-b953aa2f] pre{margin:0 0 .9rem}.notes-detail__body[data-v-b953aa2f] li{margin:0 0 .35rem}.notes-detail__body[data-v-b953aa2f] figure{margin:1.2rem 0 1.4rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.notes-detail__body[data-v-b953aa2f] figure img{display:block;width:100%;height:auto}.notes-detail__body[data-v-b953aa2f] figcaption{margin:.65rem 0 0;color:var(--color-text-muted);font-size:.88rem;line-height:1.45}.notes-detail__body[data-v-b953aa2f] pre{overflow-x:auto;padding:.85rem 1rem;border:1px solid var(--color-border);background:var(--color-accent-soft);font-size:.92rem;line-height:1.5}.notes-detail__body[data-v-b953aa2f] code{font-size:.92em}.notes-detail__body[data-v-b953aa2f] pre code{font-size:.92rem}.notes-detail__body[data-v-b953aa2f] a{color:var(--color-link);transition:color var(--motion-fast)}.notes-detail__body[data-v-b953aa2f] a:hover,.notes-detail__body[data-v-b953aa2f] a:focus-visible{color:var(--color-link-hover)}.notes-detail__back[data-v-b953aa2f]{width:fit-content;margin-top:.5rem;color:var(--color-link-alt);text-decoration:none;transition:color var(--motion-fast)}.notes-detail__back[data-v-b953aa2f]:hover,.notes-detail__back[data-v-b953aa2f]:focus-visible{color:var(--color-link-alt-hover)}.notes-detail__back[data-v-b953aa2f]:active{opacity:.85}@media(max-width:640px){.notes-detail[data-v-b953aa2f]{padding:1.5rem 0 2.75rem}.notes-detail__title[data-v-b953aa2f]{overflow-wrap:break-word}.notes-detail__body[data-v-b953aa2f] img{max-width:100%;height:auto}}.legal[data-v-3600a2f9]{padding:3.5rem 0 4.5rem}.legal__inner[data-v-3600a2f9]{max-width:48rem}.legal__head[data-v-3600a2f9]{margin-bottom:1.75rem}.legal__title[data-v-3600a2f9]{margin:0 0 .65rem;font-family:var(--font-family);font-size:clamp(1.8rem,3vw,2.4rem);font-weight:600;line-height:1.15;color:var(--color-text)}.legal__updated[data-v-3600a2f9]{margin:0;color:var(--color-text-muted);font-size:.88rem;font-weight:300;line-height:1.4}.legal__intro[data-v-3600a2f9]{margin:0 0 2rem;color:var(--color-text);font-size:1rem;font-weight:400;line-height:1.7}.legal__section[data-v-3600a2f9]{margin:0 0 1.75rem}.legal__heading[data-v-3600a2f9]{margin:0 0 .7rem;font-size:1.05rem;font-weight:600;line-height:1.35;color:var(--color-text)}.legal__text[data-v-3600a2f9]{margin:0 0 .75rem;color:var(--color-text-muted);font-size:.96rem;font-weight:400;line-height:1.7}.legal__text[data-v-3600a2f9]:last-child{margin-bottom:0}@media(max-width:720px){.legal[data-v-3600a2f9]{padding:1.75rem 0 2.75rem}.legal__title[data-v-3600a2f9]{font-size:clamp(1.6rem,8vw,2rem)}}.admin-login[data-v-f0340479]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem;background:var(--color-bg)}.admin-login__card[data-v-f0340479]{width:min(100%,24rem);display:flex;flex-direction:column;gap:1rem;padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.admin-login__title[data-v-f0340479]{margin:0;font-family:var(--font-family);font-size:1.6rem;font-weight:600}.admin-login__lead[data-v-f0340479]{margin:0;color:var(--color-text-muted)}.admin-login__field[data-v-f0340479]{display:flex;flex-direction:column;gap:.4rem;font-size:.95rem}.admin-login__field input[data-v-f0340479]{width:100%;padding:.7rem .8rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.admin-login__field input[data-v-f0340479]:hover{border-color:var(--color-button)}.admin-login__field input[data-v-f0340479]:focus-visible{outline:none;border-color:var(--color-button);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-button) 35%,transparent)}.admin-login__error[data-v-f0340479]{margin:0;color:var(--color-error);font-size:.9rem}.admin-login__submit[data-v-f0340479]{width:100%}.admin-login__submit[data-v-f0340479]:disabled{opacity:.7;cursor:wait}@media(max-width:480px){.admin-login[data-v-f0340479]{padding:1rem;align-items:stretch}.admin-login__card[data-v-f0340479]{padding:1.25rem 1rem}}.admin-dashboard[data-v-198fb4de]{display:grid;gap:1.5rem}.admin-dashboard__intro[data-v-198fb4de]{display:grid;gap:.35rem;padding:1.25rem 1.35rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.admin-dashboard__text[data-v-198fb4de]{margin:0;font-size:1.05rem;line-height:1.45}.admin-dashboard__meta[data-v-198fb4de]{margin:0;color:var(--color-text-muted);font-size:.92rem}.admin-dashboard__grid[data-v-198fb4de]{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.85rem}.admin-dashboard__card[data-v-198fb4de]{display:flex;align-items:flex-start;gap:.85rem;padding:1.05rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);text-decoration:none;transition:border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.admin-dashboard__card[data-v-198fb4de]:hover,.admin-dashboard__card[data-v-198fb4de]:focus-visible{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 8%,var(--color-surface));box-shadow:none;outline:none}.admin-dashboard__card[data-v-198fb4de]:active{transform:translateY(0)}.admin-dashboard__card-icon[data-v-198fb4de]{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-button);flex-shrink:0}.admin-dashboard__card-body[data-v-198fb4de]{display:grid;gap:.25rem;min-width:0}.admin-dashboard__card-title[data-v-198fb4de]{font-weight:700}.admin-dashboard__card-lead[data-v-198fb4de]{color:var(--color-text-muted);font-size:.86rem;line-height:1.4}.confirm-modal[data-v-8cc545f0]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1rem}.confirm-modal__backdrop[data-v-8cc545f0]{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:var(--color-overlay);cursor:pointer}.confirm-modal__card[data-v-8cc545f0]{position:relative;z-index:1;width:min(100%,24rem);padding:1.35rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:none}.confirm-modal__title[data-v-8cc545f0]{margin:0 0 .55rem;font-size:1.15rem;font-weight:600}.confirm-modal__body[data-v-8cc545f0]{margin:0 0 1.15rem;color:var(--color-text-muted);line-height:1.5}.confirm-modal__actions[data-v-8cc545f0]{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.65rem}.confirm-modal__btn[data-v-8cc545f0]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.55rem 1rem;border-radius:4px;font:inherit;font-weight:700;cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.confirm-modal__btn--ghost[data-v-8cc545f0]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.confirm-modal__btn--ghost[data-v-8cc545f0]:hover,.confirm-modal__btn--ghost[data-v-8cc545f0]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.confirm-modal__btn--danger[data-v-8cc545f0]{border:1px solid var(--color-error);background:var(--color-error);color:#fff}.confirm-modal__btn--danger[data-v-8cc545f0]:hover,.confirm-modal__btn--danger[data-v-8cc545f0]:focus-visible{outline:none}.confirm-modal__btn[data-v-8cc545f0]:active{transform:scale(.98)}.confirm-modal__btn[data-v-8cc545f0]:disabled{opacity:.6;cursor:wait}@media(max-width:480px){.confirm-modal[data-v-8cc545f0]{padding:.75rem}.confirm-modal__actions[data-v-8cc545f0]{flex-direction:column-reverse}.confirm-modal__btn[data-v-8cc545f0]{width:100%}}.admin-crud{display:grid;gap:1.25rem}.admin-crud__toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-crud__toolbar-copy{display:grid;gap:.35rem;min-width:min(100%,18rem);flex:1}.admin-crud__lead{margin:0;color:var(--color-text);font-size:.98rem;line-height:1.45}.admin-crud__count{margin:0;color:var(--color-text-muted);font-size:.85rem}.admin-crud__form,.admin-crud__list{padding:1.35rem 1.4rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.admin-crud__form{display:grid;gap:0;max-width:44rem;box-shadow:none}.admin-crud__list{overflow:hidden}.admin-crud__form-title{margin:0 0 1.15rem;font-family:var(--font-family);font-size:1.2rem;font-weight:600}.admin-crud__form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1.15rem}.admin-crud__form-head .admin-crud__form-title{margin:0}.admin-crud__field{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem;font-size:.95rem}.admin-crud__field>span:first-child{color:var(--color-text);font-size:.88rem;font-weight:600}.admin-crud__hint{margin:0;color:var(--color-text-muted);font-size:.82rem;line-height:1.4}.admin-crud__field input,.admin-crud__field select,.admin-crud__field textarea{width:100%;min-height:2.75rem;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font:inherit;box-sizing:border-box;transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background-color var(--motion-fast)}.admin-crud__field input[type=checkbox]{width:1.15rem;min-height:1.15rem;padding:0;border:0;accent-color:var(--color-button);cursor:pointer}.admin-crud__field input[type=file]{min-height:0;padding:.7rem;cursor:pointer}.admin-crud__field input[type=file]::file-selector-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-right:.75rem;padding:.4rem .75rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),background-color var(--motion-fast)}.admin-crud__field input[type=file]::file-selector-button:hover{border-color:var(--color-button);color:var(--color-button)}.admin-crud__check{display:inline-flex;align-items:center;gap:.55rem;min-height:2.75rem}.admin-crud__field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.4rem;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 1.15rem) calc(50% - .12rem),calc(100% - .8rem) calc(50% - .12rem);background-size:.35rem .35rem,.35rem .35rem;background-repeat:no-repeat;cursor:pointer}.admin-crud__field textarea{min-height:7.5rem;resize:vertical;line-height:1.45}.admin-crud__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.admin-crud__grid .admin-crud__field{min-width:0}.admin-crud__fieldset{margin:0 0 1rem;padding:1rem 1rem .25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb,var(--color-accent-soft) 55%,var(--color-surface))}.admin-crud__fieldset legend{padding:0 .35rem;color:var(--color-text);font-size:.9rem;font-weight:600}.admin-crud__locale-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.admin-crud__locale-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;min-height:2.25rem;padding:.35rem .85rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text-muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.admin-crud__locale-tab:hover,.admin-crud__locale-tab:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.admin-crud__locale-tab.is-active{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 12%,var(--color-surface));color:var(--color-button)}.admin-crud__locale-tab.is-filled:after{content:"";position:absolute;top:.35rem;right:.35rem;width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.admin-crud__locale-tab:active{transform:scale(.98)}.admin-crud__field input:hover,.admin-crud__field select:hover,.admin-crud__field textarea:hover{border-color:color-mix(in srgb,var(--color-button) 45%,var(--color-border))}.admin-crud__field input:focus-visible,.admin-crud__field select:focus-visible,.admin-crud__field textarea:focus-visible{outline:none;border-color:var(--color-button);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-button) 35%,transparent)}.admin-crud__icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(3.4rem,1fr));gap:.55rem}.admin-crud__icon-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-button);cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.admin-crud__icon-option:hover,.admin-crud__icon-option:focus-visible{border-color:var(--color-button);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-button) 25%,transparent)}.admin-crud__icon-option.is-active{border-color:var(--color-button);background:color-mix(in srgb,var(--color-button) 14%,var(--color-surface));color:var(--color-button)}.admin-crud__icon-option:active{transform:scale(.97)}.admin-crud__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.35rem;padding-top:1.1rem;border-top:1px solid var(--color-border)}.admin-crud__icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:2.45rem;height:2.45rem;border:1px solid transparent;border-radius:4px;background:transparent;color:inherit;text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.admin-crud__icon-btn:hover,.admin-crud__icon-btn:focus-visible{outline:none}.admin-crud__icon-btn:active{transform:scale(.96)}.admin-crud__icon-btn--create{width:auto;gap:.45rem;padding:0 1rem;min-height:2.55rem;border-color:var(--color-button);background:var(--color-button);color:var(--color-button-contrast);font-weight:700}.admin-crud__icon-btn--create:hover,.admin-crud__icon-btn--create:focus-visible{background:var(--color-button-hover);border-color:var(--color-button-hover);color:var(--color-button-contrast)}.admin-crud__icon-btn--edit{color:var(--color-link);border-color:color-mix(in srgb,var(--color-link) 35%,var(--color-border))}.admin-crud__icon-btn--edit:hover,.admin-crud__icon-btn--edit:focus-visible{background:color-mix(in srgb,var(--color-link) 12%,var(--color-surface));color:var(--color-link-hover)}.admin-crud__icon-btn--delete{color:var(--color-error);border-color:color-mix(in srgb,var(--color-error) 35%,var(--color-border))}.admin-crud__icon-btn--delete:hover,.admin-crud__icon-btn--delete:focus-visible{background:color-mix(in srgb,var(--color-error) 10%,var(--color-surface))}.admin-crud__icon-btn--save{width:auto;gap:.45rem;padding:0 1.05rem;min-height:2.55rem;border-color:var(--color-button);background:var(--color-button);color:var(--color-button-contrast);font-weight:700}.admin-crud__icon-btn--save:hover,.admin-crud__icon-btn--save:focus-visible{background:var(--color-button-hover);border-color:var(--color-button-hover);color:var(--color-button-contrast)}.admin-crud__icon-btn--cancel,.admin-crud__icon-btn--ghost{width:auto;gap:.45rem;padding:0 1.05rem;min-height:2.55rem;border-color:var(--color-border);background:var(--color-surface);color:var(--color-text)}.admin-crud__icon-btn--cancel:hover,.admin-crud__icon-btn--cancel:focus-visible,.admin-crud__icon-btn--ghost:hover,.admin-crud__icon-btn--ghost:focus-visible{border-color:var(--color-button);color:var(--color-button)}.admin-crud__icon-btn:disabled{opacity:.6;cursor:wait;transform:none}.admin-crud__error{margin:0 0 .95rem;padding:.7rem .85rem;border:1px solid color-mix(in srgb,var(--color-error) 35%,var(--color-border));border-radius:4px;background:color-mix(in srgb,var(--color-error) 8%,var(--color-surface));color:var(--color-error);font-size:.92rem;line-height:1.4}.admin-crud__meta{margin:0;color:var(--color-text-muted)}.admin-crud__state{display:grid;justify-items:start;gap:.75rem;padding:1.75rem .25rem}.admin-crud__state--empty,.admin-crud__state--loading{justify-items:center;text-align:center;padding:2.5rem 1rem}.admin-crud__state p{margin:0;color:var(--color-text-muted);line-height:1.45}.admin-crud__state--error p{width:100%;margin:0;padding:.7rem .85rem;border:1px solid color-mix(in srgb,var(--color-error) 35%,var(--color-border));border-radius:4px;background:color-mix(in srgb,var(--color-error) 8%,var(--color-surface));color:var(--color-error);text-align:left}.admin-crud__spinner{width:1.5rem;height:1.5rem;border:2px solid var(--color-border);border-top-color:var(--color-button);border-radius:50%;animation:admin-crud-spin .7s linear infinite}@keyframes admin-crud-spin{to{transform:rotate(360deg)}}.admin-crud__table-wrap{width:100%;overflow-x:auto}.admin-crud__table{width:100%;border-collapse:collapse}.admin-crud__table th,.admin-crud__table td{padding:.9rem .7rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}.admin-crud__table th{color:var(--color-text-muted);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.admin-crud__table tbody tr{transition:background-color var(--motion-fast)}.admin-crud__table tbody tr:hover{background:color-mix(in srgb,var(--color-accent-soft) 80%,var(--color-surface))}.admin-crud__table tbody tr:last-child td{border-bottom:0}.admin-crud__name-cell{display:inline-flex;align-items:center;gap:.65rem;font-weight:600}.admin-crud__name-cell :deep(.stack-icon){color:var(--color-button);flex-shrink:0}.admin-crud__tags{display:flex;flex-wrap:wrap;gap:.35rem}.admin-crud__tag{display:inline-flex;align-items:center;max-width:100%;padding:.2rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-muted);font-size:.78rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-crud__badge{display:inline-flex;align-items:center;min-height:1.6rem;padding:.15rem .55rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-muted);font-size:.78rem;font-weight:600;white-space:nowrap}.admin-crud__badge--ok{border-color:color-mix(in srgb,var(--color-button) 45%,var(--color-border));background:color-mix(in srgb,var(--color-button) 12%,var(--color-surface));color:var(--color-button)}.admin-crud__badge--muted{opacity:.9}.admin-crud__logo-preview{display:flex;align-items:center;gap:.75rem;margin-top:.15rem}.admin-crud__logo-preview img,.admin-crud__logo-thumb{width:2.75rem;height:2.75rem;object-fit:contain;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);padding:.2rem}.admin-crud__row-actions{display:flex;flex-wrap:wrap;gap:.45rem}.admin-crud__mono{font-variant-numeric:tabular-nums}@media(max-width:720px){.admin-crud__grid{grid-template-columns:1fr}.admin-crud__form,.admin-crud__list{padding:1.1rem}.admin-crud__table-wrap{overflow:visible}.admin-crud__table,.admin-crud__table thead,.admin-crud__table tbody,.admin-crud__table tr,.admin-crud__table th,.admin-crud__table td{display:block;width:100%}.admin-crud__table thead{display:none}.admin-crud__table tbody{display:grid;gap:.85rem}.admin-crud__table tr{padding:.95rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.admin-crud__table tbody tr:hover{background:var(--color-bg)}.admin-crud__table td{display:grid;grid-template-columns:minmax(6.5rem,35%) 1fr;gap:.65rem;align-items:start;border:0;padding:.35rem 0}.admin-crud__table td:before{content:attr(data-label);color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.admin-crud__table td.admin-crud__row-actions{display:flex;justify-content:flex-end;padding-top:.65rem;margin-top:.35rem;border-top:1px solid var(--color-border)}.admin-crud__table td.admin-crud__row-actions:before{display:none}}.image-crop[data-v-8ffb147f]{display:grid;gap:.75rem}.image-crop__preview[data-v-8ffb147f]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.image-crop__preview img[data-v-8ffb147f]{width:120px;height:72px;object-fit:cover;border-radius:4px;border:1px solid var(--color-border)}.image-crop__actions[data-v-8ffb147f]{display:flex;gap:.5rem;flex-wrap:wrap}.image-crop__modal[data-v-8ffb147f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:1rem;background:var(--color-overlay)}.image-crop__dialog[data-v-8ffb147f]{width:min(100%,42rem);padding:1rem;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);display:grid;gap:.85rem}.image-crop__title[data-v-8ffb147f]{margin:0;font-size:1rem}.image-crop__stage[data-v-8ffb147f]{position:relative;overflow:hidden;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);max-height:60vh}.image-crop__source[data-v-8ffb147f]{display:block;width:100%;height:auto;max-height:60vh;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.image-crop__box[data-v-8ffb147f]{position:absolute;border:2px solid var(--color-button);box-shadow:0 0 0 9999px #00000059;cursor:move;touch-action:none}.image-crop__handle[data-v-8ffb147f]{position:absolute;right:-.35rem;bottom:-.35rem;width:.85rem;height:.85rem;border-radius:2px;background:var(--color-button);cursor:nwse-resize;touch-action:none}.image-crop__footer[data-v-8ffb147f]{display:flex;gap:.5rem;flex-wrap:wrap}.wysiwyg[data-v-29217f33]{display:grid;gap:.45rem}.wysiwyg__toolbar[data-v-29217f33]{display:flex;flex-wrap:wrap;gap:.35rem}.wysiwyg__btn[data-v-29217f33]{min-width:2.25rem;min-height:2.25rem;padding:.35rem .55rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}.wysiwyg__btn--italic[data-v-29217f33]{font-style:italic}.wysiwyg__btn[data-v-29217f33]:hover,.wysiwyg__btn[data-v-29217f33]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.wysiwyg__btn[data-v-29217f33]:active{background:var(--color-accent-soft)}.wysiwyg__editor[data-v-29217f33]{min-height:12rem;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font:inherit;line-height:1.55;overflow:auto;transition:border-color var(--motion-fast)}.wysiwyg__editor[data-v-29217f33]:focus{border-color:var(--color-button);outline:none}.wysiwyg__editor[data-v-29217f33] h2{margin:0 0 .6rem;font-family:var(--font-family);font-size:1.2rem}.wysiwyg__editor[data-v-29217f33] p,.wysiwyg__editor[data-v-29217f33] ul,.wysiwyg__editor[data-v-29217f33] ol{margin:0 0 .65rem}.wysiwyg__editor[data-v-29217f33] a{color:var(--color-link)}.admin-about-form[data-v-456d113b]{max-width:52rem}.admin-about-form__section[data-v-456d113b]{margin:0 0 1.25rem;padding:1rem 1rem .25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.admin-about-form__section-head[data-v-456d113b]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.85rem}.admin-about-form__section-head h3[data-v-456d113b]{margin:0;font-size:1rem;font-weight:600}.admin-about-form__item[data-v-456d113b]{display:grid;gap:0;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--color-border)}.admin-about-form__item[data-v-456d113b]:last-child{border-bottom:0}.admin-process-form[data-v-3a1fefc8]{max-width:52rem}.admin-process-form__section[data-v-3a1fefc8]{margin:0 0 1.25rem;padding:1rem 1rem .25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.admin-process-form__section-head[data-v-3a1fefc8]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.85rem}.admin-process-form__section-head h3[data-v-3a1fefc8]{margin:0;font-size:1rem;font-weight:600}.admin-process-form__item[data-v-3a1fefc8]{display:grid;gap:0;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--color-border)}.admin-process-form__item[data-v-3a1fefc8]:last-child{border-bottom:0}.work-browser[data-v-1af73d0c]{overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.work-browser--pan[data-v-1af73d0c]{height:auto}.work-browser__bar[data-v-1af73d0c]{display:flex;align-items:center;gap:.7rem;min-height:2.4rem;padding:.4rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-bg)}@media(max-width:640px){.work-browser__bar[data-v-1af73d0c]{min-height:2.1rem;gap:.45rem;padding:.3rem .6rem}.work-browser__url[data-v-1af73d0c]{font-size:.7rem}}.work-browser__dots[data-v-1af73d0c]{display:flex;flex-shrink:0;gap:.3rem}.work-browser__dots span[data-v-1af73d0c]{display:block;width:.52rem;height:.52rem;border-radius:50%;background:var(--color-border)}.work-browser__url[data-v-1af73d0c]{min-width:0;overflow:hidden;color:var(--color-text-muted);font-size:.78rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.work-browser__screen[data-v-1af73d0c]{min-height:0}.work-browser--pan .work-browser__screen[data-v-1af73d0c]{overflow:hidden;aspect-ratio:1440 / 1100}.work-browser__screen[data-v-1af73d0c] img{display:block;width:100%;height:auto}.work-browser--pan .work-browser__screen[data-v-1af73d0c] img{width:100%;height:100%;object-fit:cover;object-position:50% 0%;transition:object-position 4s linear}.work-browser--pan:hover .work-browser__screen[data-v-1af73d0c] img,.work-browser--pan:focus-within .work-browser__screen[data-v-1af73d0c] img{object-position:50% 100%}@media(prefers-reduced-motion:reduce){.work-browser--pan .work-browser__screen[data-v-1af73d0c] img{transition:none}.work-browser--pan:hover .work-browser__screen[data-v-1af73d0c] img,.work-browser--pan:focus-within .work-browser__screen[data-v-1af73d0c] img{object-position:50% 0%}}.work-tile[data-v-8f8b571a]{min-width:0;perspective:920px}.work-tile__link[data-v-8f8b571a]{display:grid;gap:0;color:#fff;text-decoration:none;outline:none;transform:rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));transform-style:preserve-3d;box-shadow:0 .35rem .7rem color-mix(in srgb,var(--color-text) 10%,transparent);transition:transform var(--motion-fast),box-shadow var(--motion-fast)}.work-tile[data-v-8f8b571a] .work-browser{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.work-tile--sm[data-v-8f8b571a] .work-browser--pan .work-browser__screen{aspect-ratio:16 / 11}.work-tile--md[data-v-8f8b571a] .work-browser--pan .work-browser__screen{aspect-ratio:4 / 3}.work-tile--lg[data-v-8f8b571a] .work-browser--pan .work-browser__screen,.work-tile--wide[data-v-8f8b571a] .work-browser--pan .work-browser__screen{aspect-ratio:16 / 11}.work-tile--tall[data-v-8f8b571a] .work-browser--pan .work-browser__screen{aspect-ratio:5 / 4}.work-tile__preview[data-v-8f8b571a]{opacity:0;transition:opacity var(--motion-panel)}.work-tile.is-visible .work-tile__preview[data-v-8f8b571a]{opacity:1}.work-tile__content[data-v-8f8b571a]{display:grid;padding:.85rem 1rem 1rem;border:1px solid var(--color-border);border-top:0;border-radius:0 0 var(--radius) var(--radius);background:#000;color:#fff;text-align:left}.work-tile__title[data-v-8f8b571a]{margin:0;color:#fff;font-family:var(--font-family);font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:600;letter-spacing:-.03em;line-height:1.2;overflow-wrap:anywhere;transition:color var(--motion-fast)}.work-tile:hover .work-tile__link[data-v-8f8b571a],.work-tile:focus-within .work-tile__link[data-v-8f8b571a]{transform:translateY(-4px) translateZ(10px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));box-shadow:0 .85rem 1.35rem color-mix(in srgb,var(--color-text) 16%,transparent)}.work-tile[data-v-8f8b571a]:hover .work-browser,.work-tile[data-v-8f8b571a]:focus-within .work-browser,.work-tile:hover .work-tile__content[data-v-8f8b571a],.work-tile:focus-within .work-tile__content[data-v-8f8b571a]{border-color:var(--color-button)}.work-tile[data-v-8f8b571a]:hover .work-browser--pan .work-browser__screen img,.work-tile[data-v-8f8b571a]:focus-within .work-browser--pan .work-browser__screen img{object-position:50% 100%}.work-tile__link:hover .work-tile__title[data-v-8f8b571a],.work-tile__link:focus-visible .work-tile__title[data-v-8f8b571a]{color:var(--color-button)}.work-tile__link[data-v-8f8b571a]:focus-visible .work-browser,.work-tile__link:focus-visible .work-tile__content[data-v-8f8b571a]{outline:2px solid var(--color-button);outline-offset:3px}.work-tile:active .work-tile__link[data-v-8f8b571a]{transform:rotateX(0) rotateY(0) scale(.995);box-shadow:0 .2rem .4rem color-mix(in srgb,var(--color-text) 8%,transparent)}@media(prefers-reduced-motion:reduce){.work-tile__link[data-v-8f8b571a],.work-tile:hover .work-tile__link[data-v-8f8b571a],.work-tile:focus-within .work-tile__link[data-v-8f8b571a],.work-tile:active .work-tile__link[data-v-8f8b571a]{transform:none;box-shadow:none;transition:none}.work-tile[data-v-8f8b571a]:hover .work-browser--pan .work-browser__screen img,.work-tile[data-v-8f8b571a]:focus-within .work-browser--pan .work-browser__screen img{object-position:50% 0%}}@media(hover:none){.work-tile:hover .work-tile__link[data-v-8f8b571a],.work-tile:focus-within .work-tile__link[data-v-8f8b571a],.work-tile:active .work-tile__link[data-v-8f8b571a]{transform:none;box-shadow:0 .35rem .7rem color-mix(in srgb,var(--color-text) 10%,transparent)}}@media(max-width:640px){.work-tile__content[data-v-8f8b571a]{padding:.75rem .85rem .9rem}.work-tile__title[data-v-8f8b571a]{font-size:1.12rem}}.work[data-v-11fbd965]{padding:3rem 0 4.5rem;background:var(--color-bg);color:var(--color-text)}.work__inner[data-v-11fbd965]{display:grid;gap:2.4rem}.work__hero[data-v-11fbd965]{display:grid;gap:.7rem;max-width:32rem;margin-inline:auto;text-align:center;justify-items:center}.work__eyebrow[data-v-11fbd965]{margin:0;color:var(--color-button);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.work__title[data-v-11fbd965]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.work__status[data-v-11fbd965]{margin:0;color:var(--color-text-muted);font-size:1.02rem;line-height:1.55}.work__grid[data-v-11fbd965]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;align-items:start}@media(max-width:900px){.work[data-v-11fbd965]{padding:2rem 0 3.25rem}.work__grid[data-v-11fbd965]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}}@media(max-width:640px){.work[data-v-11fbd965]{padding:1.5rem 0 2.75rem}.work__inner[data-v-11fbd965]{gap:1.35rem}.work__title[data-v-11fbd965]{font-size:clamp(1.7rem,8vw,2.2rem)}.work__grid[data-v-11fbd965]{grid-template-columns:1fr}}.work-detail[data-v-a672e1c5]{padding:3rem 0 4.5rem;background:var(--color-bg);color:var(--color-text)}.work-detail__inner[data-v-a672e1c5]{display:grid;gap:2.4rem;max-width:64rem;margin-inline:auto;justify-items:start}.work-detail__status[data-v-a672e1c5]{margin:0;color:var(--color-text-muted)}.work-detail__intro[data-v-a672e1c5]{display:grid;justify-items:center;gap:.85rem;width:100%;text-align:center}.work-detail__title[data-v-a672e1c5]{margin:0;font-family:var(--font-family);font-size:clamp(2.2rem,5vw,3.2rem);font-weight:600;letter-spacing:-.04em;line-height:1.12}.work-detail__copy[data-v-a672e1c5]{width:100%;max-width:40rem;margin-inline:auto;color:var(--color-text);font-size:1.05rem;line-height:1.6;text-align:center}.work-detail__copy[data-v-a672e1c5] p{margin:0 0 .85rem}.work-detail__copy[data-v-a672e1c5] p:last-child{margin-bottom:0}.work-detail__live[data-v-a672e1c5]{color:inherit;text-decoration:none;transition:color var(--motion-fast)}.work-detail__live[data-v-a672e1c5]:hover,.work-detail__live[data-v-a672e1c5]:focus-visible{color:var(--color-link);outline:none}.work-detail__media[data-v-a672e1c5]{display:grid;gap:1.5rem;width:100%}.work-detail__shot[data-v-a672e1c5]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left;transition:transform var(--motion-fast)}.work-detail__shot[data-v-a672e1c5]:hover .work-browser,.work-detail__shot[data-v-a672e1c5]:focus-visible .work-browser{border-color:var(--color-button)}.work-detail__shot[data-v-a672e1c5]:focus-visible{outline:2px solid var(--color-button);outline-offset:3px}.work-detail__shot[data-v-a672e1c5]:active{transform:scale(.997)}.work-detail__back[data-v-a672e1c5]{width:fit-content;margin-top:.15rem;color:var(--color-link-alt);text-decoration:none;transition:color var(--motion-fast),transform var(--motion-fast)}.work-detail__back--top[data-v-a672e1c5]{margin-top:0;margin-bottom:.1rem;font-size:.92rem}.work-detail__back[data-v-a672e1c5]:hover,.work-detail__back[data-v-a672e1c5]:focus-visible{color:var(--color-link-alt-hover);outline:none}.work-detail__back[data-v-a672e1c5]:active{transform:translate(-2px);opacity:.9}.work-lightbox[data-v-a672e1c5]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:1.25rem}.work-lightbox__backdrop[data-v-a672e1c5]{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:var(--color-overlay);cursor:pointer}.work-lightbox__image[data-v-a672e1c5]{position:relative;z-index:1;max-width:min(100%,92vw);max-height:min(88vh,100dvh);width:auto;height:auto;object-fit:contain}.work-lightbox__close[data-v-a672e1c5]{position:absolute;top:1rem;right:1rem;z-index:2;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2rem;height:2rem;margin:0;padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:1.2rem;line-height:1;cursor:pointer;transition:color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.work-lightbox__close[data-v-a672e1c5]:hover,.work-lightbox__close[data-v-a672e1c5]:focus-visible{color:var(--color-button);border-color:var(--color-button);outline:none}.work-lightbox__close[data-v-a672e1c5]:active{transform:scale(.96)}.work-shot-enter-active[data-v-a672e1c5],.work-shot-leave-active[data-v-a672e1c5]{transition:opacity var(--motion-panel)}.work-shot-enter-active .work-lightbox__image[data-v-a672e1c5],.work-shot-leave-active .work-lightbox__image[data-v-a672e1c5]{transition:transform var(--motion-panel)}.work-shot-enter-from[data-v-a672e1c5],.work-shot-leave-to[data-v-a672e1c5]{opacity:0}.work-shot-enter-from .work-lightbox__image[data-v-a672e1c5],.work-shot-leave-to .work-lightbox__image[data-v-a672e1c5]{transform:translateY(10px) scale(.98)}@media(prefers-reduced-motion:reduce){.work-shot-enter-active[data-v-a672e1c5],.work-shot-leave-active[data-v-a672e1c5],.work-shot-enter-active .work-lightbox__image[data-v-a672e1c5],.work-shot-leave-active .work-lightbox__image[data-v-a672e1c5]{transition:none}}@media(max-width:640px){.work-detail[data-v-a672e1c5]{padding:1.5rem 0 2.75rem}.work-detail__title[data-v-a672e1c5]{font-size:clamp(1.7rem,8vw,2.1rem);overflow-wrap:break-word}.work-detail__copy[data-v-a672e1c5]{font-size:1rem}.work-lightbox[data-v-a672e1c5]{padding:.75rem}.work-lightbox__close[data-v-a672e1c5]{top:max(.65rem,env(safe-area-inset-top));right:max(.65rem,env(safe-area-inset-right))}}.case-tile[data-v-05163a6e]{min-width:0;min-height:0;height:100%;border-radius:1rem;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border)}.case-tile__link[data-v-05163a6e]{position:relative;display:flex;height:100%;min-height:100%;color:#fff;text-decoration:none;outline:none}.case-tile__image[data-v-05163a6e]{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#1a1a1a;background-position:center;background-size:cover;filter:grayscale(1);opacity:0;transform:scale(1.02);transition:opacity var(--motion-panel),transform var(--motion-panel),filter var(--motion-panel)}.case-tile.is-visible .case-tile__image[data-v-05163a6e]{opacity:1;transform:scale(1)}.case-tile--diagram .case-tile__image[data-v-05163a6e]{background-position:center top;background-size:cover;filter:none}.case-tile__shade[data-v-05163a6e]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000002e,#0000006b 42%,#000000d6);pointer-events:none}.case-tile--diagram .case-tile__shade[data-v-05163a6e]{background:linear-gradient(180deg,#0000,#0000001f 42%,#000000eb)}.case-tile__index[data-v-05163a6e]{position:absolute;top:.9rem;right:.95rem;z-index:1;color:#ffffffd1;font-size:.72rem;font-weight:700;letter-spacing:.1em}.case-tile__content[data-v-05163a6e]{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;width:100%;padding:1.1rem 1.15rem 1.2rem}.case-tile__meta[data-v-05163a6e]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffffd1}.case-tile__dot[data-v-05163a6e]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.case-tile__title[data-v-05163a6e]{margin:0;font-family:var(--font-display);font-size:clamp(1.15rem,1.8vw,1.55rem);font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--motion-fast)}.case-tile--lg .case-tile__title[data-v-05163a6e],.case-tile--wide .case-tile__title[data-v-05163a6e],.case-tile--tall .case-tile__title[data-v-05163a6e]{font-size:clamp(1.35rem,2.2vw,1.9rem)}.case-tile__excerpt[data-v-05163a6e]{margin:0;max-width:34rem;color:#ffffffc7;font-size:.9rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.case-tile--sm .case-tile__excerpt[data-v-05163a6e],.case-tile--md .case-tile__excerpt[data-v-05163a6e]{-webkit-line-clamp:2}.case-tile__link:hover .case-tile__image[data-v-05163a6e],.case-tile__link:focus-visible .case-tile__image[data-v-05163a6e]{transform:scale(1.06);filter:grayscale(.35)}.case-tile--diagram .case-tile__link:hover .case-tile__image[data-v-05163a6e],.case-tile--diagram .case-tile__link:focus-visible .case-tile__image[data-v-05163a6e]{filter:none}.case-tile__link:hover .case-tile__title[data-v-05163a6e],.case-tile__link:focus-visible .case-tile__title[data-v-05163a6e]{color:var(--color-button-hover)}.case-tile__link[data-v-05163a6e]:focus-visible{box-shadow:inset 0 0 0 2px var(--color-button)}.case-tile__link:active .case-tile__image[data-v-05163a6e]{transform:scale(1.03)}.case-tile__link[data-v-05163a6e]:active{transform:scale(.995)}@media(max-width:640px){.case-tile[data-v-05163a6e]{border-radius:.85rem}.case-tile__content[data-v-05163a6e]{padding:.9rem .95rem 1rem;gap:.4rem}.case-tile__title[data-v-05163a6e],.case-tile--lg .case-tile__title[data-v-05163a6e],.case-tile--wide .case-tile__title[data-v-05163a6e],.case-tile--tall .case-tile__title[data-v-05163a6e]{font-size:1.2rem}}.cases[data-v-4ea6050d]{padding:2.5rem 0 4rem;background:var(--color-bg);color:var(--color-text)}.cases__inner[data-v-4ea6050d]{display:grid;gap:2rem}.cases__hero[data-v-4ea6050d]{display:grid;gap:.65rem;max-width:40rem;margin-inline:auto;text-align:center;justify-items:center}.cases__eyebrow[data-v-4ea6050d]{margin:0;color:var(--color-button);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.cases__title[data-v-4ea6050d]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.cases__lead[data-v-4ea6050d],.cases__status[data-v-4ea6050d]{margin:0;color:var(--color-text-muted);font-size:1.02rem;line-height:1.55}.cases__filters[data-v-4ea6050d]{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.cases__filter[data-v-4ea6050d]{margin:0;padding:.45rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.86rem;line-height:1.2;cursor:pointer;transition:color var(--motion-fast),background-color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.cases__filter[data-v-4ea6050d]:hover,.cases__filter[data-v-4ea6050d]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.cases__filter[data-v-4ea6050d]:active{transform:scale(.98)}.cases__filter.is-active[data-v-4ea6050d]{border-color:var(--color-button);background:var(--color-button);color:var(--color-button-contrast)}.cases__grid[data-v-4ea6050d]{display:grid;grid-auto-rows:9.5rem;gap:.75rem;align-items:stretch}@media(max-width:1200px){.cases__grid[data-v-4ea6050d]{grid-auto-rows:9rem}}@media(max-width:900px){.cases[data-v-4ea6050d]{padding:2rem 0 3.25rem}.cases__grid[data-v-4ea6050d]{grid-auto-rows:9rem}}@media(max-width:640px){.cases[data-v-4ea6050d]{padding:1.5rem 0 2.75rem}.cases__inner[data-v-4ea6050d]{gap:1.35rem}.cases__title[data-v-4ea6050d]{font-size:clamp(1.7rem,8vw,2.2rem)}.cases__lead[data-v-4ea6050d],.cases__status[data-v-4ea6050d]{font-size:.96rem}.cases__filters[data-v-4ea6050d]{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--container-gutter) * -1);padding-inline:var(--container-gutter)}.cases__filters[data-v-4ea6050d]::-webkit-scrollbar{display:none}.cases__filter[data-v-4ea6050d]{flex:0 0 auto;white-space:nowrap}.cases__grid[data-v-4ea6050d]{grid-auto-rows:16rem;gap:.7rem}}.cases-detail[data-v-a33aa61b]{padding:2.5rem 0 4rem;background:var(--color-bg);color:var(--color-text)}.cases-detail__inner[data-v-a33aa61b]{display:grid;gap:1.15rem;max-width:48rem}.cases-detail__status[data-v-a33aa61b]{margin:0;color:var(--color-text-muted)}.cases-detail__meta[data-v-a33aa61b]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.cases-detail__dot[data-v-a33aa61b]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.cases-detail__title[data-v-a33aa61b]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.cases-detail__excerpt[data-v-a33aa61b]{margin:0;color:var(--color-text-muted);font-size:1.08rem;line-height:1.55}.cases-detail__body[data-v-a33aa61b]{color:var(--color-text);font-size:1.02rem;line-height:1.7}.cases-detail__body[data-v-a33aa61b] h2{margin:1.4rem 0 .7rem;font-family:var(--font-family);font-size:1.4rem}.cases-detail__body[data-v-a33aa61b] p,.cases-detail__body[data-v-a33aa61b] ul,.cases-detail__body[data-v-a33aa61b] ol{margin:0 0 .9rem}.cases-detail__body[data-v-a33aa61b] ul,.cases-detail__body[data-v-a33aa61b] ol{padding-left:1.2rem}.cases-detail__body[data-v-a33aa61b] li{margin:0 0 .35rem}.cases-detail__body[data-v-a33aa61b] figure{margin:1.2rem 0 1.4rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.cases-detail__body[data-v-a33aa61b] figure img{display:block;width:100%;height:auto}.cases-detail__body[data-v-a33aa61b] figcaption{margin:.65rem 0 0;color:var(--color-text-muted);font-size:.88rem;line-height:1.45}.cases-detail__body[data-v-a33aa61b] a{color:var(--color-link);transition:color var(--motion-fast)}.cases-detail__body[data-v-a33aa61b] a:hover,.cases-detail__body[data-v-a33aa61b] a:focus-visible{color:var(--color-link-hover)}.cases-detail__back[data-v-a33aa61b]{width:fit-content;margin-top:.35rem;color:var(--color-link-alt);text-decoration:none;transition:color var(--motion-fast),transform var(--motion-fast)}.cases-detail__back--top[data-v-a33aa61b]{margin-top:0;margin-bottom:.15rem;font-size:.92rem}.cases-detail__back[data-v-a33aa61b]:hover,.cases-detail__back[data-v-a33aa61b]:focus-visible{color:var(--color-link-alt-hover);outline:none}.cases-detail__back[data-v-a33aa61b]:active{transform:translate(-2px);opacity:.9}@media(max-width:640px){.cases-detail[data-v-a33aa61b]{padding:1.5rem 0 2.75rem}.cases-detail__title[data-v-a33aa61b]{overflow-wrap:break-word}.cases-detail__body[data-v-a33aa61b] pre,.cases-detail__body[data-v-a33aa61b] img{max-width:100%}.cases-detail__body[data-v-a33aa61b] pre{overflow-x:auto}}.lab[data-v-ceb4200e]{padding:2.5rem 0 4rem;background:var(--color-bg);color:var(--color-text)}.lab__inner[data-v-ceb4200e]{display:grid;gap:1.75rem}.lab__hero[data-v-ceb4200e]{display:grid;gap:.55rem;max-width:40rem;margin-inline:auto;text-align:center;justify-items:center}.lab__title[data-v-ceb4200e]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.lab__lead[data-v-ceb4200e],.lab__status[data-v-ceb4200e]{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.5}.lab__grid[data-v-ceb4200e]{display:grid;grid-auto-rows:9.5rem;gap:.75rem}@media(max-width:1100px){.lab__grid[data-v-ceb4200e]{grid-auto-rows:9rem}}@media(max-width:700px){.lab[data-v-ceb4200e]{padding:1.5rem 0 2.75rem}.lab__title[data-v-ceb4200e]{font-size:clamp(1.7rem,8vw,2.2rem)}.lab__lead[data-v-ceb4200e],.lab__status[data-v-ceb4200e]{font-size:.96rem}.lab__grid[data-v-ceb4200e]{grid-auto-rows:16rem}}.lab-detail[data-v-216e907c]{padding:2.5rem 0 4rem}.lab-detail__inner[data-v-216e907c]{display:grid;gap:1rem;max-width:48rem}.lab-detail__status[data-v-216e907c]{margin:0;color:var(--color-text-muted)}.lab-detail__meta[data-v-216e907c]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.lab-detail__dot[data-v-216e907c]{width:.35rem;height:.35rem;border-radius:50%;background:var(--color-button)}.lab-detail__title[data-v-216e907c]{margin:0;font-family:var(--font-family);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.lab-detail__excerpt[data-v-216e907c]{margin:0;color:var(--color-text-muted);font-size:1.05rem;line-height:1.55}.lab-detail__body[data-v-216e907c]{color:var(--color-text);font-size:1.02rem;line-height:1.7}.lab-detail__body[data-v-216e907c] h2{margin:1.4rem 0 .7rem;font-family:var(--font-family);font-size:1.4rem}.lab-detail__body[data-v-216e907c] p,.lab-detail__body[data-v-216e907c] ul,.lab-detail__body[data-v-216e907c] ol{margin:0 0 .9rem}.lab-detail__body[data-v-216e907c] ul,.lab-detail__body[data-v-216e907c] ol{padding-left:1.2rem}.lab-detail__body[data-v-216e907c] li{margin:0 0 .35rem}.lab-detail__body[data-v-216e907c] figure{margin:1.2rem 0 1.4rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.lab-detail__body[data-v-216e907c] figure img{display:block;width:100%;height:auto}.app[data-theme=dark]{filter:invert(1)}.lab-detail__body[data-v-216e907c] figcaption{margin:.65rem 0 0;color:var(--color-text-muted);font-size:.88rem;line-height:1.45}.lab-detail__body[data-v-216e907c] a{color:var(--color-link);transition:color var(--motion-fast)}.lab-detail__body[data-v-216e907c] a:hover,.lab-detail__body[data-v-216e907c] a:focus-visible{color:var(--color-link-hover)}.lab-detail__body[data-v-216e907c] .lab-links{text-align:center}.lab-detail__back[data-v-216e907c]{width:fit-content;margin-top:.5rem;color:var(--color-link-alt);text-decoration:none;transition:color var(--motion-fast)}.lab-detail__back[data-v-216e907c]:hover,.lab-detail__back[data-v-216e907c]:focus-visible{color:var(--color-link-alt-hover)}.lab-detail__back[data-v-216e907c]:active{opacity:.85}@media(max-width:640px){.lab-detail[data-v-216e907c]{padding:1.5rem 0 2.75rem}.lab-detail__title[data-v-216e907c]{overflow-wrap:break-word}.lab-detail__body[data-v-216e907c] img{max-width:100%;height:auto}}.admin-contact__mail[data-v-d39a33d7]{color:var(--color-link);text-decoration:none;transition:color var(--motion-fast)}.admin-contact__mail[data-v-d39a33d7]:hover,.admin-contact__mail[data-v-d39a33d7]:focus-visible{color:var(--color-link-hover);outline:none}.admin-contact-show[data-v-04ee4996]{display:grid;gap:1rem}.admin-contact-show__meta[data-v-04ee4996]{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}.admin-contact-show__meta p[data-v-04ee4996]{margin:0;display:grid;gap:.2rem}.admin-contact-show__meta span[data-v-04ee4996]{color:var(--color-text-muted);font-size:.82rem}.admin-contact-show__mail[data-v-04ee4996]{color:var(--color-link);text-decoration:none;transition:color var(--motion-fast)}.admin-contact-show__mail[data-v-04ee4996]:hover,.admin-contact-show__mail[data-v-04ee4996]:focus-visible{color:var(--color-link-hover);outline:none}.admin-crud__success[data-v-04ee4996]{margin:0;color:var(--color-text-muted);font-size:.9rem}.admin-crud__form input[readonly][data-v-04ee4996],.admin-crud__form textarea[readonly][data-v-04ee4996]{background:var(--color-bg)}.admin-layout[data-v-7dd45fcf]{display:grid;grid-template-columns:16rem minmax(0,1fr);min-height:100vh;background:var(--color-bg);color:var(--color-text)}.admin-layout__sidebar[data-v-7dd45fcf]{position:sticky;top:0;display:flex;flex-direction:column;gap:1.5rem;height:100vh;padding:1.25rem 1rem;border-right:1px solid var(--color-border);background:var(--color-surface);overflow:auto}.admin-layout__brand-link[data-v-7dd45fcf]{color:var(--color-text);font-family:var(--font-family);font-size:1.15rem;font-weight:600;text-decoration:none;transition:color var(--motion-fast)}.admin-layout__brand-link[data-v-7dd45fcf]:hover,.admin-layout__brand-link[data-v-7dd45fcf]:focus-visible{color:var(--color-link-alt)}.admin-layout__nav[data-v-7dd45fcf]{display:flex;flex-direction:column;gap:1.25rem;flex:1}.admin-layout__group[data-v-7dd45fcf]{display:flex;flex-direction:column;gap:.35rem}.admin-layout__group-label[data-v-7dd45fcf]{margin:0;padding:0 .75rem;color:var(--color-text-muted);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.admin-layout__link[data-v-7dd45fcf]{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:4px;color:var(--color-text);text-decoration:none;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.admin-layout__link[data-v-7dd45fcf]:hover,.admin-layout__link[data-v-7dd45fcf]:focus-visible{background:var(--color-accent-soft);color:var(--color-link-alt);outline:none}.admin-layout__link[data-v-7dd45fcf]:active{transform:translateY(1px)}.admin-layout__link.is-active[data-v-7dd45fcf]{background:var(--color-button);color:var(--color-button-contrast)}.admin-layout__footer[data-v-7dd45fcf]{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid var(--color-border)}.admin-layout__user[data-v-7dd45fcf]{margin:0;color:var(--color-text-muted);font-size:.9rem}.admin-layout__logout[data-v-7dd45fcf]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:4px;background:transparent;color:var(--color-text);cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.admin-layout__logout[data-v-7dd45fcf]:hover,.admin-layout__logout[data-v-7dd45fcf]:focus-visible{border-color:var(--color-button);color:var(--color-button);outline:none}.admin-layout__logout[data-v-7dd45fcf]:active{transform:translateY(1px)}.admin-layout__logout[data-v-7dd45fcf]:disabled{opacity:.6;cursor:wait}.admin-layout__main[data-v-7dd45fcf]{display:flex;flex-direction:column;min-width:0;min-height:100vh}.admin-layout__top[data-v-7dd45fcf]{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.admin-layout__title[data-v-7dd45fcf]{margin:0;font-family:var(--font-family);font-size:1.4rem;font-weight:600}.admin-layout__content[data-v-7dd45fcf]{padding:1.5rem;background:var(--color-bg);min-height:12rem}.admin-page-enter-active[data-v-7dd45fcf],.admin-page-leave-active[data-v-7dd45fcf]{transition:opacity var(--motion-panel),transform var(--motion-panel)}.admin-page-enter-from[data-v-7dd45fcf],.admin-page-leave-to[data-v-7dd45fcf]{opacity:0;transform:translateY(10px)}.admin-page-enter-to[data-v-7dd45fcf],.admin-page-leave-from[data-v-7dd45fcf]{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.admin-page-enter-active[data-v-7dd45fcf],.admin-page-leave-active[data-v-7dd45fcf]{transition:none}.admin-page-enter-from[data-v-7dd45fcf],.admin-page-leave-to[data-v-7dd45fcf]{opacity:1;transform:none}}@media(max-width:800px){.admin-layout[data-v-7dd45fcf]{grid-template-columns:1fr}.admin-layout__sidebar[data-v-7dd45fcf]{position:static;height:auto;border-right:0;border-bottom:1px solid var(--color-border)}.admin-layout__nav[data-v-7dd45fcf]{flex-direction:row;flex-wrap:wrap;gap:1rem}.admin-layout__group[data-v-7dd45fcf]{min-width:10rem}.admin-layout__top[data-v-7dd45fcf]{padding:1rem .95rem}.admin-layout__content[data-v-7dd45fcf]{padding:1rem .85rem 1.5rem}.admin-layout__main[data-v-7dd45fcf]{min-height:0}}.skip-link{position:absolute;left:.75rem;top:-4rem;z-index:100;padding:.55rem .9rem;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);text-decoration:none}.skip-link:focus,.skip-link:focus-visible{top:.75rem;outline:2px solid var(--color-button)}.app{min-height:100vh;max-width:100%;display:flex;flex-direction:column;overflow-x:clip;background:var(--color-bg);color:var(--color-text)}.app__main{flex:1 0 auto;position:relative;z-index:0;padding:0;min-width:0;max-width:100%;min-height:40vh;overflow-x:clip}:root,[data-theme=light]{--color-bg: #ffffff;--color-surface: #ffffff;--color-text: #000000;--color-text-muted: #666666;--color-border: #e5e5e5;--color-accent: #000000;--color-accent-soft: #f5f5f5;--color-accent-contrast: #ffffff;--color-button: #a5916e;--color-button-hover: #b4a07d;--color-button-active: #94815c;--color-button-contrast: #ffffff;--color-link: #000000;--color-link-hover: #333333;--color-link-alt: #000000;--color-link-alt-hover: #333333;--color-overlay: rgba(0, 0, 0, .45);--color-error: #000000;--color-header-solid: #ffffff;--color-header-scrolled: rgba(255, 255, 255, .92);--color-footer-bg: #000000;--color-footer-text: #c8c8c8;--color-footer-sep: #8a8a8a;--color-footer-border: #000000;--color-footer-link-hover: #ffffff;--shadow-soft: 0 1px 0 var(--color-border);--font-family: "Open Sans", Arial, sans-serif;--font-display: "Open Sans", Arial, sans-serif;--container-width: 1550px;--container-gutter: 20px;--header-height: 76px;--header-logo-height: 4.75rem;--radius: 8px;--motion-fast: .18s cubic-bezier(.22, 1, .36, 1);--motion-panel: .32s cubic-bezier(.22, 1, .36, 1);--motion-mega: .36s cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--color-bg: #000000;--color-surface: #0a0a0a;--color-text: #ffffff;--color-text-muted: #999999;--color-border: #2a2a2a;--color-accent: #ffffff;--color-accent-soft: #1a1a1a;--color-accent-contrast: #000000;--color-button: #a5916e;--color-button-hover: #b4a07d;--color-button-active: #94815c;--color-button-contrast: #ffffff;--color-link: #ffffff;--color-link-hover: #d0d0d0;--color-link-alt: #ffffff;--color-link-alt-hover: #d0d0d0;--color-overlay: rgba(0, 0, 0, .65);--color-error: #ffffff;--color-header-solid: #000000;--color-header-scrolled: rgba(0, 0, 0, .92);--color-footer-bg: #000000;--color-footer-text: #c8c8c8;--color-footer-sep: #8a8a8a;--color-footer-border: #2a2a2a;--color-footer-link-hover: #ffffff;--shadow-soft: 0 1px 0 var(--color-border)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;max-width:100%;overflow-x:clip;background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);overflow-wrap:anywhere}img,video,iframe{max-width:100%;height:auto}body{min-height:100vh}a{color:var(--color-link);text-decoration:underline;text-underline-offset:.14em;transition:color var(--motion-fast)}a:hover,a:focus-visible{color:var(--color-link-hover);outline:none}a:active{opacity:.9}button{font:inherit}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem 1.15rem;border:0;border-radius:4px;background:var(--color-button);color:var(--color-button-contrast);font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.btn:hover,.btn:focus-visible{background:var(--color-button-hover);color:var(--color-button-contrast);outline:none}.btn:active{background:var(--color-button-active);transform:scale(.98)}.container{width:min(var(--container-width),calc(100% - (var(--container-gutter) * 2)));max-width:100%;min-width:0;margin-inline:auto}@media(max-width:900px){:root,[data-theme=light],[data-theme=dark]{--header-height: 58px;--header-logo-height: 2.85rem;--container-gutter: 16px}}@media(max-width:480px){:root,[data-theme=light],[data-theme=dark]{--header-height: 54px;--header-logo-height: 2.55rem;--container-gutter: 14px}}
