.btn[data-astro-cid-j6ocf6pu]{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.02em;transition:transform var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);display:inline-flex}.btn[data-astro-cid-j6ocf6pu]:hover{transform:translateY(-2px)}.btn--primary[data-astro-cid-j6ocf6pu]{background:var(--color-accent);color:var(--color-accent-ink);border:1px solid var(--color-accent)}.btn--primary[data-astro-cid-j6ocf6pu]:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn--ghost[data-astro-cid-j6ocf6pu]{color:var(--color-text);border:1px solid var(--color-border-strong);background:0 0}.btn--ghost[data-astro-cid-j6ocf6pu]:hover{border-color:var(--color-accent-dim);color:var(--color-accent-strong)}.waveform[data-astro-cid-vksjczie]{opacity:.08;width:100%;position:absolute}.waveform--hero[data-astro-cid-vksjczie]{bottom:0;left:0;right:0}.waveform--footer[data-astro-cid-vksjczie]{opacity:.05;top:0}.waveform[data-astro-cid-vksjczie] rect[data-astro-cid-vksjczie]{fill:var(--color-accent)}.hero[data-astro-cid-yodha2z4]{min-height:calc(100svh - var(--header-height));padding-block:var(--space-8);align-items:center;display:flex;position:relative;overflow:hidden}.hero__grid[data-astro-cid-yodha2z4]{background-image:linear-gradient(var(--color-border) 1px, transparent 1px), linear-gradient(90deg, var(--color-border) 1px, transparent 1px);opacity:.35;background-size:72px 72px;position:absolute;inset:0;mask-image:radial-gradient(90% 70% at 50% 40%,#000 30%,#0000 75%)}.hero__glow[data-astro-cid-yodha2z4]{background:var(--color-accent-glow);filter:blur(120px);border-radius:50%;width:min(720px,90vw);height:420px;position:absolute;top:-30%;left:50%;transform:translate(-50%)}.hero__inner[data-astro-cid-yodha2z4]{padding-top:var(--space-6);position:relative}.hero__eyebrow[data-astro-cid-yodha2z4]{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.16em;color:var(--color-accent)}.hero__name[data-astro-cid-yodha2z4]{margin-top:var(--space-5);font-size:var(--text-5xl);letter-spacing:-.03em;font-weight:650}.hero__role[data-astro-cid-yodha2z4]{margin-top:var(--space-5);font-size:var(--text-xl);color:var(--color-text-secondary);max-width:42ch}.hero__lede[data-astro-cid-yodha2z4]{margin-top:var(--space-4);max-width:58ch;color:var(--color-text-secondary)}.hero__actions[data-astro-cid-yodha2z4]{margin-top:var(--space-7);gap:var(--space-4);flex-wrap:wrap;display:flex}.hero__meta[data-astro-cid-yodha2z4]{margin-top:var(--space-8);align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-tertiary);display:flex}.hero__meta[data-astro-cid-yodha2z4] a[data-astro-cid-yodha2z4]:hover{color:var(--color-accent)}.hero__meta-dot[data-astro-cid-yodha2z4]{background:var(--color-accent-dim);border-radius:50%;width:4px;height:4px}.hero__scroll[data-astro-cid-yodha2z4]{bottom:var(--space-6);align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-tertiary);flex-direction:column;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.hero__scroll[data-astro-cid-yodha2z4]:hover{color:var(--color-accent)}.hero__scroll-line[data-astro-cid-yodha2z4]{background:linear-gradient(var(--color-text-tertiary), transparent);width:1px;height:36px}@media (width<=640px){.hero[data-astro-cid-yodha2z4]{min-height:auto;padding-block:var(--space-9) var(--space-8)}.hero__scroll[data-astro-cid-yodha2z4]{display:none}}.section-head[data-astro-cid-ysklgcyt]{margin-bottom:var(--space-7)}.eyebrow[data-astro-cid-ysklgcyt]{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.18em;text-transform:lowercase;color:var(--color-accent)}.section-title[data-astro-cid-ysklgcyt]{font-size:var(--text-3xl);margin-top:var(--space-3)}.section-desc[data-astro-cid-ysklgcyt]{max-width:56ch;margin-top:var(--space-4);color:var(--color-text-secondary)}.about[data-astro-cid-5gtlsymu]{padding-block:var(--section-pad);scroll-margin-top:var(--header-height)}.about__grid[data-astro-cid-5gtlsymu]{gap:var(--space-8);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;display:grid}.about__paragraph[data-astro-cid-5gtlsymu]{color:var(--color-text-secondary);font-size:var(--text-lg);line-height:1.7}.about__paragraph[data-astro-cid-5gtlsymu]+.about__paragraph[data-astro-cid-5gtlsymu]{margin-top:var(--space-5)}.about__facts[data-astro-cid-5gtlsymu]{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin:0}.about__fact[data-astro-cid-5gtlsymu]{gap:var(--space-4);padding-block:var(--space-3);grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);display:grid}.about__fact[data-astro-cid-5gtlsymu]+.about__fact[data-astro-cid-5gtlsymu]{border-top:1px solid var(--color-border)}.about__fact[data-astro-cid-5gtlsymu] dt[data-astro-cid-5gtlsymu]{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);padding-top:2px}.about__fact[data-astro-cid-5gtlsymu] dd[data-astro-cid-5gtlsymu]{color:var(--color-text);font-size:var(--text-sm);margin:0}.about__principles[data-astro-cid-5gtlsymu]{margin:var(--space-8) 0 0;gap:var(--space-5);grid-template-columns:repeat(3,1fr);padding:0;list-style:none;display:grid}.about__principle[data-astro-cid-5gtlsymu]{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);transition:border-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out)}.about__principle[data-astro-cid-5gtlsymu]:hover{border-color:var(--color-border-strong);transform:translateY(-3px)}.about__principle-index[data-astro-cid-5gtlsymu]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-accent)}.about__principle[data-astro-cid-5gtlsymu] h3[data-astro-cid-5gtlsymu]{margin-top:var(--space-3);font-size:var(--text-lg)}.about__principle[data-astro-cid-5gtlsymu] p[data-astro-cid-5gtlsymu]{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6}@media (width<=860px){.about__grid[data-astro-cid-5gtlsymu],.about__principles[data-astro-cid-5gtlsymu]{grid-template-columns:1fr}}.skills[data-astro-cid-hsdsz7qj]{padding-block:var(--section-pad);scroll-margin-top:var(--header-height);background:var(--color-bg-elevated);border-block:1px solid var(--color-border)}.skills__grid[data-astro-cid-hsdsz7qj]{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.skills__group[data-astro-cid-hsdsz7qj]{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.skills__group-title[data-astro-cid-hsdsz7qj]{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent)}.skills__group-blurb[data-astro-cid-hsdsz7qj]{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);min-height:2.7em}.skills__list[data-astro-cid-hsdsz7qj]{margin:var(--space-5) 0 0;gap:var(--space-2) var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.skills__item[data-astro-cid-hsdsz7qj]{align-items:baseline;gap:var(--space-1);border:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-elevated);border-radius:999px;padding:.3rem .75rem;display:inline-flex}.skills__note[data-astro-cid-hsdsz7qj]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-tertiary)}@media (width<=1024px){.skills__grid[data-astro-cid-hsdsz7qj]{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.skills__grid[data-astro-cid-hsdsz7qj]{grid-template-columns:1fr}}.project-card[data-astro-cid-4yu5y2jt]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:border-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.project-card[data-astro-cid-4yu5y2jt]:hover{border-color:var(--color-border-strong);transform:translateY(-4px)}.project-card__media[data-astro-cid-4yu5y2jt]{aspect-ratio:16/9;overflow:hidden}.project-card__image[data-astro-cid-4yu5y2jt]{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-out)}.project-card[data-astro-cid-4yu5y2jt]:hover .project-card__image[data-astro-cid-4yu5y2jt]{transform:scale(1.03)}.project-card__body[data-astro-cid-4yu5y2jt]{padding:var(--space-5);flex-direction:column;flex:1;display:flex}.project-card__meta[data-astro-cid-4yu5y2jt]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.project-card__category[data-astro-cid-4yu5y2jt]{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}.project-card__status[data-astro-cid-4yu5y2jt]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-tertiary)}.project-card__title[data-astro-cid-4yu5y2jt]{margin-top:var(--space-4);font-size:var(--text-xl)}.project-card__tagline[data-astro-cid-4yu5y2jt]{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6}.project-card__tech[data-astro-cid-4yu5y2jt]{margin:var(--space-4) 0 0;gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.project-card__tech[data-astro-cid-4yu5y2jt] li[data-astro-cid-4yu5y2jt]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-tertiary)}.project-card__tech[data-astro-cid-4yu5y2jt] li[data-astro-cid-4yu5y2jt]+li[data-astro-cid-4yu5y2jt]:before{content:"·";margin-right:var(--space-2);color:var(--color-border-strong)}.project-card__link[data-astro-cid-4yu5y2jt]{padding-top:var(--space-5);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary);align-items:center;gap:var(--space-2);transition:color var(--duration-fast) var(--ease-out);margin-top:auto;display:inline-flex}.project-card__arrow[data-astro-cid-4yu5y2jt]{color:var(--color-accent);transition:transform var(--duration-fast) var(--ease-out)}.project-card[data-astro-cid-4yu5y2jt]:hover .project-card__link[data-astro-cid-4yu5y2jt]{color:var(--color-text)}.project-card[data-astro-cid-4yu5y2jt]:hover .project-card__arrow[data-astro-cid-4yu5y2jt]{transform:translate(4px)}.work[data-astro-cid-resrq4zz]{padding-block:var(--section-pad);scroll-margin-top:var(--header-height)}.featured[data-astro-cid-resrq4zz]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:var(--space-6);transition:border-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);grid-template-columns:1.1fr 1fr;gap:0;display:grid;overflow:hidden}.featured[data-astro-cid-resrq4zz]:hover{border-color:var(--color-border-strong);transform:translateY(-4px)}.featured__media[data-astro-cid-resrq4zz]{position:relative;overflow:hidden}.featured__image[data-astro-cid-resrq4zz]{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-out)}.featured[data-astro-cid-resrq4zz]:hover .featured__image[data-astro-cid-resrq4zz]{transform:scale(1.03)}.featured__badge[data-astro-cid-resrq4zz]{top:var(--space-4);left:var(--space-4);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.3rem .8rem;position:absolute}.featured__body[data-astro-cid-resrq4zz]{padding:var(--space-6);flex-direction:column;display:flex}.featured__title[data-astro-cid-resrq4zz]{margin-top:var(--space-4);font-size:var(--text-3xl)}.featured__tagline[data-astro-cid-resrq4zz]{margin-top:var(--space-2);font-size:var(--text-lg);color:var(--color-text)}.featured__description[data-astro-cid-resrq4zz]{margin-top:var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.7}.featured__body[data-astro-cid-resrq4zz] .project-card__tech[data-astro-cid-resrq4zz]{margin-top:var(--space-5)}.featured__body[data-astro-cid-resrq4zz] .project-card__link[data-astro-cid-resrq4zz]{margin-top:var(--space-6)}.work__grid[data-astro-cid-resrq4zz]{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=960px){.featured[data-astro-cid-resrq4zz]{grid-template-columns:1fr}.featured__media[data-astro-cid-resrq4zz]{aspect-ratio:16/9}.work__grid[data-astro-cid-resrq4zz]{grid-template-columns:1fr}}.music[data-astro-cid-2cvw6iob]{padding-block:var(--section-pad);scroll-margin-top:var(--header-height);background:var(--color-bg-elevated);border-block:1px solid var(--color-border)}.music__panel[data-astro-cid-2cvw6iob]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-8) clamp(var(--space-6), 6vw, var(--space-9));text-align:center;position:relative;overflow:hidden}.music__lead[data-astro-cid-2cvw6iob]{margin:0;position:relative}.music__lead[data-astro-cid-2cvw6iob] p[data-astro-cid-2cvw6iob]{font-family:var(--font-display);font-size:clamp(var(--text-xl), 3.4vw, var(--text-3xl));letter-spacing:-.01em;max-width:42ch;color:var(--color-text);margin-inline:auto;line-height:1.35}.music__body[data-astro-cid-2cvw6iob]{margin:var(--space-5) auto 0;max-width:56ch;color:var(--color-text-secondary);font-size:var(--text-md);line-height:1.7}.music__tags[data-astro-cid-2cvw6iob]{margin:var(--space-6) 0 0;justify-content:center;gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.music__tags[data-astro-cid-2cvw6iob] li[data-astro-cid-2cvw6iob]{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);border:1px solid var(--color-border-strong);border-radius:999px;padding:.35rem .9rem}.contact[data-astro-cid-d56ov33j]{padding-block:var(--section-pad);scroll-margin-top:var(--header-height)}.contact__grid[data-astro-cid-d56ov33j]{gap:var(--space-8);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;display:grid}.contact__list[data-astro-cid-d56ov33j]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin:0;padding:0;list-style:none;overflow:hidden}.contact__method[data-astro-cid-d56ov33j]{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);transition:background-color var(--duration-fast) var(--ease-out);grid-template-columns:auto auto 1fr auto;display:grid}.contact__method[data-astro-cid-d56ov33j]:hover{background:var(--color-accent-glow)}.contact__method[data-astro-cid-d56ov33j]+.contact__method[data-astro-cid-d56ov33j]{border-top:1px solid var(--color-border)}.contact__method-index[data-astro-cid-d56ov33j]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-tertiary)}.contact__method-label[data-astro-cid-d56ov33j]{font-family:var(--font-display);font-weight:600}.contact__method-handle[data-astro-cid-d56ov33j]{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;text-align:right;overflow:hidden}.contact__method-arrow[data-astro-cid-d56ov33j]{color:var(--color-accent);transition:transform var(--duration-fast) var(--ease-out)}.contact__method[data-astro-cid-d56ov33j]:hover .contact__method-arrow[data-astro-cid-d56ov33j]{transform:translate(4px)}.contact__note[data-astro-cid-d56ov33j]{margin-top:var(--space-5);font-size:var(--text-sm);color:var(--color-text-tertiary);line-height:1.7}.contact__note[data-astro-cid-d56ov33j] a[data-astro-cid-d56ov33j]{color:var(--color-accent)}.contact__form[data-astro-cid-d56ov33j]{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-surface)}.contact-form__row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.contact-form__field{gap:var(--space-2);flex-direction:column;display:flex}.contact-form__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-tertiary)}.contact-form__input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text);font:inherit;font-size:var(--text-sm);transition:border-color var(--duration-fast) var(--ease-out)}.contact-form__input::placeholder{color:var(--color-text-tertiary)}.contact-form__input:hover{border-color:var(--color-text-tertiary)}.contact-form__input:focus-visible{border-color:var(--color-accent)}.contact-form__textarea{resize:vertical;min-height:8rem}.contact-form__field+.contact-form__field,.contact-form__row+.contact-form__field{margin-top:var(--space-4)}.contact-form__honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form__errors{margin-top:var(--space-4)}.contact-form__errors ul{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.contact-form__errors li{font-size:var(--text-sm);color:#f0a5a5}.contact-form__actions{margin-top:var(--space-6);align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.contact-form__submit{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-mono);font-size:var(--text-sm);border:1px solid var(--color-accent);transition:background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);display:inline-flex}.contact-form__submit:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong);transform:translateY(-2px)}.contact-form__status{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}@media (width<=860px){.contact__grid[data-astro-cid-d56ov33j]{grid-template-columns:1fr}}@media (width<=560px){.contact-form__row{grid-template-columns:1fr}}
