.progress[data-astro-cid-5gvmcovd]{z-index:60;background:var(--text-primary);height:2px;transform:scaleX(var(--scroll,0));transform-origin:0;pointer-events:none;position:fixed;inset:0 0 auto}.hero[data-astro-cid-5gvmcovd]{padding-block:clamp(3rem,9vh,5.5rem) clamp(2.5rem,6vh,4rem)}.hero-id[data-astro-cid-5gvmcovd]{align-items:center;gap:clamp(1rem,2.5vw,1.5rem);display:flex}.avatar[data-astro-cid-5gvmcovd]{aspect-ratio:1;width:clamp(3.75rem,7vw,5rem);box-shadow:0 0 0 1px var(--border);background:#d9d9d6;border-radius:50%;flex:none;overflow:hidden}.avatar[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.55)translateY(14%)}.hero-name[data-astro-cid-5gvmcovd]{letter-spacing:-.05em;color:var(--text-primary);font-size:clamp(2.4rem,6.5vw,4.75rem);font-weight:600;line-height:1}.hero-line[data-astro-cid-5gvmcovd]{letter-spacing:-.02em;max-width:34ch;color:var(--text-secondary);text-wrap:balance;margin-top:clamp(1.25rem,3vh,1.75rem);font-size:clamp(1.2rem,2.2vw,1.65rem);font-weight:450;line-height:1.3}.hero-contacts[data-astro-cid-5gvmcovd]{flex-wrap:wrap;gap:0 1.5rem;margin-top:1rem;display:flex}.hero-contacts[data-astro-cid-5gvmcovd] a[data-astro-cid-5gvmcovd]{min-height:2.75rem;color:var(--text-secondary);text-decoration:underline;text-decoration-color:var(--border-hover);text-underline-offset:.3em;transition:color var(--dur-fast) ease, text-decoration-color var(--dur-fast) ease;align-items:center;font-size:.95rem;display:inline-flex}.hero-contacts[data-astro-cid-5gvmcovd] a[data-astro-cid-5gvmcovd]:hover{color:var(--text-primary);text-decoration-color:currentColor}@media (prefers-reduced-motion:no-preference){.fade[data-astro-cid-5gvmcovd]{animation:fade .9s var(--ease-out) both;animation-delay:calc(var(--i,0) * .11s)}}@keyframes fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.section[data-astro-cid-5gvmcovd]{border-top:1px solid var(--border);padding-block:clamp(3.5rem,9vh,6rem);scroll-margin-top:3rem}.section-head[data-astro-cid-5gvmcovd]{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:clamp(2rem,5vh,3rem);display:flex}.section-title[data-astro-cid-5gvmcovd]{letter-spacing:-.05em;color:var(--text-primary);font-size:clamp(1.75rem,3.4vw,2.75rem);font-weight:600;line-height:1}.section-intro[data-astro-cid-5gvmcovd]{max-width:36rem;color:var(--text-secondary);margin-top:.85rem;font-size:1rem;line-height:1.6}.head-link[data-astro-cid-5gvmcovd]{min-height:2.75rem;color:var(--text-primary);align-items:center;gap:.45rem;font-size:.95rem;font-weight:500;display:inline-flex}.head-link[data-astro-cid-5gvmcovd] svg[data-astro-cid-5gvmcovd]{width:1rem;height:1rem;transition:transform var(--dur-fast) var(--ease-out)}.head-link[data-astro-cid-5gvmcovd]:hover svg[data-astro-cid-5gvmcovd]{transform:translate(3px)}.post-grid[data-astro-cid-5gvmcovd]{gap:2.5rem 1.5rem;display:grid}@media (width>=768px){.post-grid[data-astro-cid-5gvmcovd]{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}}.post-card[data-astro-cid-5gvmcovd]{flex-direction:column;gap:.5rem;display:flex}.post-media[data-astro-cid-5gvmcovd]{aspect-ratio:16/9;border:1px solid var(--border);background:var(--bg-secondary);border-radius:12px;margin-bottom:.5rem;display:block;overflow:hidden}.post-media[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out);display:block}@media (hover:hover) and (prefers-reduced-motion:no-preference){.post-card[data-astro-cid-5gvmcovd]:hover .post-media[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{transform:scale(1.03)}}.post-date[data-astro-cid-5gvmcovd]{color:var(--text-muted);font-size:.82rem}.post-title[data-astro-cid-5gvmcovd]{letter-spacing:-.025em;color:var(--text-primary);text-wrap:balance;font-size:1.25rem;font-weight:600;line-height:1.25}.post-card[data-astro-cid-5gvmcovd]:hover .post-title[data-astro-cid-5gvmcovd]{text-decoration:underline;text-decoration-color:var(--border-hover);text-underline-offset:.2em}.post-summary[data-astro-cid-5gvmcovd]{color:var(--text-secondary);font-size:.95rem;line-height:1.55}.tools-grid[data-astro-cid-5gvmcovd]{gap:2.5rem;display:grid}@media (width>=1024px){.tools-grid[data-astro-cid-5gvmcovd]{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:4rem}.try[data-astro-cid-5gvmcovd]{position:sticky;top:6rem}}.try[data-astro-cid-5gvmcovd]{border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(100% 70% at 0% 0%, color-mix(in srgb, var(--positive) 10%, transparent), transparent 60%), var(--bg-secondary);gap:1rem;padding:clamp(1.25rem,3vw,1.75rem);display:grid}.try-title[data-astro-cid-5gvmcovd]{color:var(--text-muted);font-size:.88rem}.try-out[data-astro-cid-5gvmcovd]{gap:.2rem;display:grid}.try-label[data-astro-cid-5gvmcovd]{color:var(--text-secondary);font-size:.9rem}.try-big[data-astro-cid-5gvmcovd]{letter-spacing:-.045em;font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:clamp(2.25rem,5vw,3.25rem);font-weight:600;line-height:1}.try-real[data-astro-cid-5gvmcovd]{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.9rem}.try-real[data-astro-cid-5gvmcovd] span[data-astro-cid-5gvmcovd]{color:var(--text-secondary)}.try-chart[data-astro-cid-5gvmcovd]{width:100%;height:7rem;overflow:visible}.try-area[data-astro-cid-5gvmcovd]{fill:color-mix(in srgb, var(--positive) 18%, transparent)}.try-line[data-astro-cid-5gvmcovd]{fill:none;stroke:var(--text-primary);stroke-width:2px;vector-effect:non-scaling-stroke}.try-principal[data-astro-cid-5gvmcovd]{fill:none;stroke:var(--text-muted);stroke-width:1.25px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.try-split[data-astro-cid-5gvmcovd]{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--border);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.try-split[data-astro-cid-5gvmcovd] div[data-astro-cid-5gvmcovd]{background:var(--bg-secondary);padding:.65rem .85rem}.try-split[data-astro-cid-5gvmcovd] dt[data-astro-cid-5gvmcovd]{color:var(--text-muted);font-size:.78rem}.try-split[data-astro-cid-5gvmcovd] dd[data-astro-cid-5gvmcovd]{font-variant-numeric:tabular-nums;color:var(--text-primary);margin-top:.15rem;font-size:.98rem;font-weight:600}.try-split[data-astro-cid-5gvmcovd] div[data-astro-cid-5gvmcovd]+div[data-astro-cid-5gvmcovd] dd[data-astro-cid-5gvmcovd]{color:var(--positive)}.try-field[data-astro-cid-5gvmcovd]{gap:.25rem;display:grid}.try-field[data-astro-cid-5gvmcovd] span[data-astro-cid-5gvmcovd]{color:var(--text-secondary);justify-content:space-between;font-size:.88rem;display:flex}.try-field[data-astro-cid-5gvmcovd] b[data-astro-cid-5gvmcovd]{font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:600}.try-field[data-astro-cid-5gvmcovd] input[data-astro-cid-5gvmcovd][type=range]{width:100%;height:2.75rem;accent-color:var(--text-primary);cursor:pointer}.try-note[data-astro-cid-5gvmcovd]{color:var(--text-muted);font-size:.78rem;line-height:1.55}.tool-cards[data-astro-cid-5gvmcovd]{gap:2rem 1.25rem;display:grid}@media (width>=640px){.tool-cards[data-astro-cid-5gvmcovd]{grid-template-columns:repeat(2,minmax(0,1fr))}}.tool-card[data-astro-cid-5gvmcovd]{flex-direction:column;gap:.9rem;display:flex}.tool-cover[data-astro-cid-5gvmcovd]{aspect-ratio:16/9;border:1px solid var(--border);background:var(--bg-secondary);transition:border-color var(--dur-base) ease;border-radius:14px;display:block;position:relative;overflow:hidden}.tool-cover[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out), filter .6s ease;filter:saturate(.9)brightness(.92);display:block}.tool-card[data-astro-cid-5gvmcovd]:hover .tool-cover[data-astro-cid-5gvmcovd]{border-color:var(--border-hover)}.tool-card[data-astro-cid-5gvmcovd]:hover .tool-cover[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{filter:none}@media (hover:hover) and (prefers-reduced-motion:no-preference){.tool-card[data-astro-cid-5gvmcovd]:hover .tool-cover[data-astro-cid-5gvmcovd] img[data-astro-cid-5gvmcovd]{transform:scale(1.04)}}.tool-icon[data-astro-cid-5gvmcovd]{color:#f5f5f5;-webkit-backdrop-filter:blur(10px);background:#0a0a0a8c;border:1px solid #ffffff24;border-radius:12px;place-items:center;width:2.9rem;height:2.9rem;display:grid;position:absolute;bottom:.75rem;left:.75rem}.tool-text[data-astro-cid-5gvmcovd]{gap:.3rem;display:grid}.tool-name[data-astro-cid-5gvmcovd]{letter-spacing:-.025em;color:var(--text-primary);font-size:1.15rem;font-weight:600}.tool-card[data-astro-cid-5gvmcovd]:hover .tool-name[data-astro-cid-5gvmcovd]{text-decoration:underline;text-decoration-color:var(--border-hover);text-underline-offset:.2em}.tool-desc[data-astro-cid-5gvmcovd]{color:var(--text-secondary);font-size:.93rem;line-height:1.55}.tools-note[data-astro-cid-5gvmcovd]{color:var(--text-muted);margin-top:1.5rem;font-size:.82rem}.about[data-astro-cid-5gvmcovd]{gap:1.5rem;display:grid}@media (width>=1024px){.about[data-astro-cid-5gvmcovd]{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:4rem}}.about-body[data-astro-cid-5gvmcovd]{letter-spacing:-.015em;max-width:40rem;color:var(--text-secondary);font-size:clamp(1.15rem,1.6vw,1.4rem);line-height:1.5}.about-body[data-astro-cid-5gvmcovd] .w[data-astro-cid-5gvmcovd]{transition:color .3s}.scrub-ready .about-body[data-astro-cid-5gvmcovd] .w[data-astro-cid-5gvmcovd]{color:var(--text-muted)}.scrub-ready .about-body[data-astro-cid-5gvmcovd] .w[data-astro-cid-5gvmcovd].on{color:var(--text-primary)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.section[data-astro-cid-5gvmcovd] .section-title[data-astro-cid-5gvmcovd]{animation:linear both title-in view();animation-range:entry 10% cover 30%}.tool-item[data-astro-cid-5gvmcovd],.post-item[data-astro-cid-5gvmcovd]{animation:linear both row-in view();animation-range:entry entry 80%}}}@keyframes title-in{0%{clip-path:inset(0 0 100%);transform:translateY(40%)}to{clip-path:inset(0 0 -10%);transform:none}}@keyframes row-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
