*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--a2-bg);color:var(--a2-text);font-family:var(--a2-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[hidden]{display:none!important}.a2-page:where(.astro-7zbwgomp){margin:0;background:var(--a2-bg);color:var(--a2-text);overflow-x:clip}.a2-wrap:where(.astro-7zbwgomp){width:100%;max-width:1200px;margin:0 auto;padding:0 36px}@media(max-width:640px){.a2-wrap:where(.astro-7zbwgomp){padding:0 20px}}.a2-topbar:where(.astro-7zbwgomp){position:sticky;top:0;z-index:60;height:64px;background:var(--a2-bg-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--a2-border)}.a2-topbar__inner:where(.astro-7zbwgomp){max-width:1280px;height:100%;margin:0 auto;padding:0 24px}.a2-hero:where(.astro-7zbwgomp){position:relative;padding:44px 0 36px;overflow:clip}.a2-hero__grid-bg:where(.astro-7zbwgomp){position:absolute;inset:0;background-image:linear-gradient(to right,var(--a2-border-subtle) 1px,transparent 1px),linear-gradient(to bottom,var(--a2-border-subtle) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 90% 75% at 50% 15%,#000 15%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse 90% 75% at 50% 15%,#000 15%,transparent 78%);pointer-events:none}.a2-h1:where(.astro-7zbwgomp){margin:0;font-family:var(--a2-font-display);font-weight:700;line-height:1.05;letter-spacing:var(--a2-tracking-display);color:var(--a2-text)}.a2-h-accent:where(.astro-7zbwgomp){color:var(--a2-heading-accent)}.a2-btn:where(.astro-7zbwgomp){display:inline-flex;align-items:center;justify-content:center;gap:10px;height:44px;padding:0 20px;border-radius:3px;font-family:var(--a2-font-sans);font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.a2-btn--outline:where(.astro-7zbwgomp){background:transparent;color:var(--a2-text);border:1px solid var(--a2-border-strong)}.a2-btn--outline:where(.astro-7zbwgomp):hover{border-color:var(--a2-text)}.a2-cmd-bar:where(.astro-7zbwgomp){display:inline-flex;align-items:center;gap:10px;height:42px;padding:0 14px;border-radius:3px;border:1px solid var(--a2-border-strong);background:var(--a2-surface);color:var(--a2-text);font-family:var(--a2-font-mono);font-size:12.5px;cursor:pointer;max-width:100%;transition:border-color .15s ease}.a2-cmd-bar:where(.astro-7zbwgomp):hover{border-color:var(--a2-text)}.a2-cmd-bar:where(.astro-7zbwgomp).is-copied{border-color:var(--a2-success)}.a2-cmd-bar__sig:where(.astro-7zbwgomp){color:var(--a2-accent);user-select:none}.a2-cmd-bar__act:where(.astro-7zbwgomp){font-size:10px;font-weight:700;letter-spacing:.08em;padding-left:10px;border-left:1px solid var(--a2-border);color:var(--a2-text-muted);white-space:nowrap}.a2-cmd-bar:where(.astro-7zbwgomp).is-copied .a2-cmd-bar__act:where(.astro-7zbwgomp){color:var(--a2-success)}.a2-section:where(.astro-7zbwgomp){position:relative;border-top:1px solid var(--a2-border-strong);scroll-margin-top:72px}.a2-section--alt:where(.astro-7zbwgomp){background:var(--a2-bg-alt)}.a2-footer:where(.astro-7zbwgomp){border-top:1px solid var(--a2-border-strong);padding:40px 0 56px}.a2-footer__inner:where(.astro-7zbwgomp){display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.a2-footer__brand:where(.astro-7zbwgomp){display:flex;align-items:center;gap:10px;font-size:13px;color:var(--a2-text-muted)}.a2-footer__brand:where(.astro-7zbwgomp) strong:where(.astro-7zbwgomp){color:var(--a2-text);font-weight:650}.a2-footer__links:where(.astro-7zbwgomp){display:flex;flex-wrap:wrap;gap:20px}.a2-footer__links:where(.astro-7zbwgomp) a:where(.astro-7zbwgomp){font-size:13px;color:var(--a2-text-secondary);text-decoration:none}.a2-footer__links:where(.astro-7zbwgomp) a:where(.astro-7zbwgomp):hover{color:var(--a2-text)}.c-hero__inner:where(.astro-7zbwgomp){position:relative}.c-h1:where(.astro-7zbwgomp){font-size:clamp(2.2rem,3.6vw,3.1rem);margin-bottom:20px}.c-skill-bar:where(.astro-7zbwgomp),.c-dir-head:where(.astro-7zbwgomp){display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap}.c-dir-head:where(.astro-7zbwgomp){margin-bottom:24px}.c-row-copy:where(.astro-7zbwgomp){margin:0;font-size:15.5px;line-height:1.55;color:var(--a2-text-secondary);text-wrap:pretty}.c-row-q:where(.astro-7zbwgomp){display:inline;margin:0;font-family:var(--a2-font-sans);font-size:inherit;font-weight:650;line-height:inherit;letter-spacing:var(--a2-tracking-body);color:var(--a2-text)}.c-row-p:where(.astro-7zbwgomp){display:inline;margin:0}.c-inline-link:where(.astro-7zbwgomp){color:var(--a2-accent);font-weight:600;text-decoration:underline;text-decoration-color:var(--a2-accent-border);text-underline-offset:3px;transition:color .15s ease,text-decoration-color .15s ease}.c-inline-link:where(.astro-7zbwgomp):hover{color:var(--a2-accent-strong);text-decoration-color:currentColor}.c-cmd-bar__txt:where(.astro-7zbwgomp){white-space:nowrap}.c-directory:where(.astro-7zbwgomp){padding:36px 0 88px}.c-grid:where(.astro-7zbwgomp){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.c-card:where(.astro-7zbwgomp){display:flex;flex-direction:column;background:var(--a2-surface);border:1px solid var(--a2-border-strong);border-radius:var(--a2-radius-sm);box-shadow:var(--a2-shadow-sm);overflow:hidden}.c-card__head:where(.astro-7zbwgomp){padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--a2-surface-subtle);border-bottom:1px solid var(--a2-border)}.c-agency-brand:where(.astro-7zbwgomp){display:inline-flex;align-items:center;text-decoration:none;min-height:28px}.c-agency-logo:where(.astro-7zbwgomp){display:block;width:auto;max-width:156px;object-fit:contain}.c-agency-logo--dark:where(.astro-7zbwgomp),:root[data-theme=dark] .c-agency-logo--light:where(.astro-7zbwgomp){display:none}:root[data-theme=dark] .c-agency-logo--dark:where(.astro-7zbwgomp){display:block}.c-domain:where(.astro-7zbwgomp){display:inline-flex;align-items:center;padding:2px 7px;border-radius:3px;border:1px solid var(--a2-border-strong);background:var(--a2-surface);font-family:var(--a2-font-mono);font-size:11px;font-weight:500;color:var(--a2-text-secondary);white-space:nowrap}.c-stage__bar:where(.astro-7zbwgomp){padding:7px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--a2-code-header);border-bottom:1px solid var(--a2-border)}.c-tabs:where(.astro-7zbwgomp),.c-stage__actions:where(.astro-7zbwgomp),.c-links:where(.astro-7zbwgomp){display:flex;align-items:center}.c-tabs:where(.astro-7zbwgomp){gap:4px}.c-tab:where(.astro-7zbwgomp){padding:4px 10px;border-radius:3px;border:1px solid transparent;background:transparent;color:var(--a2-text-secondary);font-family:var(--a2-font-sans);font-size:12.5px;font-weight:500;line-height:1.3;white-space:nowrap;cursor:pointer;transition:color .14s ease,background-color .14s ease,border-color .14s ease}.c-tab:where(.astro-7zbwgomp):hover{color:var(--a2-text)}.c-tab:where(.astro-7zbwgomp).is-active{background:var(--a2-surface);border-color:var(--a2-border-strong);color:var(--a2-text);font-weight:600}.c-stage__actions:where(.astro-7zbwgomp){gap:6px}.c-icon-btn:where(.astro-7zbwgomp){display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:3px;border:1px solid var(--a2-border-strong);background:var(--a2-surface);color:var(--a2-text-secondary);cursor:pointer;transition:color .15s ease,border-color .15s ease}.c-icon-btn:where(.astro-7zbwgomp):hover{color:var(--a2-text);border-color:var(--a2-text)}.c-viewport:where(.astro-7zbwgomp){background:var(--a2-code-bg);border-bottom:1px solid var(--a2-border)}.c-pane:where(.astro-7zbwgomp){aspect-ratio:16 / 10;overflow:hidden}.c-pane--clickable:where(.astro-7zbwgomp){cursor:zoom-in}.c-pane:where(.astro-7zbwgomp) video:where(.astro-7zbwgomp),.c-pane:where(.astro-7zbwgomp) img:where(.astro-7zbwgomp){display:block;width:100%;height:100%;object-fit:contain}.c-card__body:where(.astro-7zbwgomp){display:flex;flex-direction:column;justify-content:space-between;flex:1;gap:14px;padding:18px 18px 16px}.c-app-title:where(.astro-7zbwgomp){margin:0 0 8px;font-family:var(--a2-font-display);font-size:18px;font-weight:700;line-height:1.25;letter-spacing:var(--a2-tracking-h3);color:var(--a2-text)}.c-app-tagline:where(.astro-7zbwgomp){font-weight:500;color:var(--a2-text-muted)}.c-summary:where(.astro-7zbwgomp),.c-notes:where(.astro-7zbwgomp) p:where(.astro-7zbwgomp){margin:0;font-size:14px;line-height:1.6;color:var(--a2-text-secondary);text-wrap:pretty}.c-meta:where(.astro-7zbwgomp){margin:0;padding-top:12px;border-top:1px solid var(--a2-border);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.c-meta:where(.astro-7zbwgomp) dt:where(.astro-7zbwgomp){font-family:var(--a2-font-mono);font-size:10px;font-weight:600;letter-spacing:var(--a2-tracking-mono-wide);color:var(--a2-text-muted);margin:0 0 3px}.c-meta:where(.astro-7zbwgomp) dd:where(.astro-7zbwgomp){margin:0;font-size:13px;font-weight:500;line-height:1.4;color:var(--a2-text)}.c-card__footer:where(.astro-7zbwgomp){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 18px;background:var(--a2-surface-subtle);border-top:1px solid var(--a2-border)}.c-links:where(.astro-7zbwgomp){gap:14px;flex-wrap:wrap}.c-text-link:where(.astro-7zbwgomp),.c-notes:where(.astro-7zbwgomp) a:where(.astro-7zbwgomp){font-size:13px;font-weight:600;color:var(--a2-accent);text-decoration:none}.c-text-link:where(.astro-7zbwgomp):hover,.c-notes:where(.astro-7zbwgomp) a:where(.astro-7zbwgomp):hover{text-decoration:underline;text-underline-offset:3px}.c-card__cta:where(.astro-7zbwgomp){height:34px;padding:0 13px;font-size:12.5px;gap:7px;background:var(--a2-surface)}.c-notes:where(.astro-7zbwgomp){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:52px;padding-top:36px;border-top:1px solid var(--a2-border)}.c-notes__heading:where(.astro-7zbwgomp){margin:0 0 8px;font-family:var(--a2-font-display);font-size:17px;font-weight:700;letter-spacing:var(--a2-tracking-h3);color:var(--a2-text)}.c-notes:where(.astro-7zbwgomp) a:where(.astro-7zbwgomp){font-size:14px}.c-lightbox:where(.astro-7zbwgomp){width:min(1040px,calc(100vw - 32px));max-height:calc(100vh - 32px);margin:auto;padding:0;border:1px solid var(--a2-border-strong);border-radius:var(--a2-radius-sm);background:var(--a2-surface);color:var(--a2-text);box-shadow:var(--a2-shadow-lg);overflow:hidden}.c-lightbox:where(.astro-7zbwgomp)::backdrop{background:#0b0e14c2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.c-lightbox__head:where(.astro-7zbwgomp),.c-lightbox__caption:where(.astro-7zbwgomp){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 16px}.c-lightbox__head:where(.astro-7zbwgomp){background:var(--a2-code-header);border-bottom:1px solid var(--a2-border)}.c-lightbox__title:where(.astro-7zbwgomp){font-family:var(--a2-font-display);font-size:15px;font-weight:700;color:var(--a2-text)}.c-lightbox__close:where(.astro-7zbwgomp){height:32px;padding:0 12px;font-size:12.5px;background:var(--a2-surface)}.c-lightbox__stage:where(.astro-7zbwgomp){background:var(--a2-code-bg);display:flex;align-items:center;justify-content:center;max-height:calc(100vh - 156px);overflow:hidden}.c-lightbox__stage:where(.astro-7zbwgomp) video:where(.astro-7zbwgomp),.c-lightbox__stage:where(.astro-7zbwgomp) img:where(.astro-7zbwgomp){display:block;max-width:100%;max-height:calc(100vh - 156px);width:auto;height:auto;object-fit:contain}.c-lightbox__caption:where(.astro-7zbwgomp){background:var(--a2-surface-subtle);border-top:1px solid var(--a2-border);font-size:13px;line-height:1.5;color:var(--a2-text-secondary)}:where(.astro-7zbwgomp):is(.a2-btn,.a2-cmd-bar,.c-tab,.c-icon-btn,.c-inline-link,.c-text-link,.c-notes a,.c-agency-brand,.a2-footer__links a):focus-visible{outline:2px solid var(--a2-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.a2-btn:where(.astro-7zbwgomp),.a2-cmd-bar:where(.astro-7zbwgomp),.c-tab:where(.astro-7zbwgomp),.c-icon-btn:where(.astro-7zbwgomp),.c-inline-link:where(.astro-7zbwgomp){transition:none}}@media(max-width:900px){.c-grid:where(.astro-7zbwgomp){grid-template-columns:1fr;gap:20px}}@media(max-width:760px){.c-directory:where(.astro-7zbwgomp){padding:28px 0 64px}.c-notes:where(.astro-7zbwgomp){grid-template-columns:1fr;gap:24px;margin-top:40px;padding-top:28px}}@media(max-width:560px){.c-meta:where(.astro-7zbwgomp){grid-template-columns:1fr}}@media(max-width:480px){.c-cmd-bar:where(.astro-7zbwgomp){width:100%;justify-content:space-between;padding:0 10px;gap:6px;font-size:11px}.c-cmd-bar__txt:where(.astro-7zbwgomp){overflow:hidden;text-overflow:ellipsis}.c-stage__bar:where(.astro-7zbwgomp){padding:6px 10px}.c-tab:where(.astro-7zbwgomp){padding:4px 8px;font-size:12px}}
