.header[data-astro-cid-3ef6ksr2]{position:fixed;top:0;left:0;right:0;z-index:100;pointer-events:none;padding:var(--space-lg);display:flex;justify-content:space-between;align-items:flex-start}.header__logo[data-astro-cid-3ef6ksr2]{pointer-events:auto;display:grid;grid-template-columns:repeat(2,6px);gap:3px;padding:var(--space-sm);transition:opacity var(--transition-fast)}.header__logo[data-astro-cid-3ef6ksr2]:hover{opacity:.5}.header__logo[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2]{width:6px;height:6px;background-color:var(--color-text);border-radius:50%}.header__toggle[data-astro-cid-3ef6ksr2]{pointer-events:auto;display:flex;flex-direction:column;justify-content:center;gap:6px;width:32px;height:32px;padding:4px;z-index:102}.header__toggle-line[data-astro-cid-3ef6ksr2]{display:block;width:100%;height:1.5px;background-color:var(--color-text);transition:transform var(--transition-base),opacity var(--transition-base);transform-origin:center}.header__toggle[data-astro-cid-3ef6ksr2].is-open .header__toggle-line[data-astro-cid-3ef6ksr2]:nth-child(1){transform:translateY(3.75px) rotate(45deg)}.header__toggle[data-astro-cid-3ef6ksr2].is-open .header__toggle-line[data-astro-cid-3ef6ksr2]:nth-child(2){transform:translateY(-3.75px) rotate(-45deg)}.nav-overlay[data-astro-cid-3ef6ksr2]{position:fixed;inset:0;z-index:101;display:flex;justify-content:center;align-items:stretch;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.nav-overlay[data-astro-cid-3ef6ksr2].is-open{pointer-events:auto;opacity:1;visibility:visible}.nav-overlay[data-astro-cid-3ef6ksr2]:before{content:"";position:absolute;inset:0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#0000001a}.nav-panel[data-astro-cid-3ef6ksr2]{position:relative;width:min(520px,85vw);background-color:var(--color-bg);display:flex;flex-direction:column;align-items:center;box-shadow:0 0 60px #00000014;transform:translateY(-10px);transition:transform var(--transition-base)}.nav-overlay[data-astro-cid-3ef6ksr2].is-open .nav-panel[data-astro-cid-3ef6ksr2]{transform:translateY(0)}.nav-panel__header[data-astro-cid-3ef6ksr2]{width:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);position:relative;border-bottom:1px solid var(--color-border-light)}.nav-panel__close[data-astro-cid-3ef6ksr2]{position:absolute;left:var(--space-lg);color:var(--color-text);padding:var(--space-xs);transition:opacity var(--transition-fast)}.nav-panel__close[data-astro-cid-3ef6ksr2]:hover{opacity:.5}.nav-panel__title[data-astro-cid-3ef6ksr2]{font-family:var(--font-display);font-size:1rem;letter-spacing:.05em}.nav-panel__links[data-astro-cid-3ef6ksr2]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);padding:var(--space-3xl) var(--space-lg)}.nav-panel__link[data-astro-cid-3ef6ksr2]{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2rem);letter-spacing:.04em;text-transform:uppercase;transition:opacity var(--transition-fast)}.nav-panel__link[data-astro-cid-3ef6ksr2]:hover{opacity:.5}.nav-panel__footer[data-astro-cid-3ef6ksr2]{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-xl);padding:var(--space-lg);border-top:1px solid var(--color-border-light)}.nav-panel__secondary[data-astro-cid-3ef6ksr2]{font-family:var(--font-body);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--transition-fast)}.nav-panel__secondary[data-astro-cid-3ef6ksr2]:hover{color:var(--color-text)}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border-light);padding-block:var(--space-xl)}.footer__inner[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center}.footer__left[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--space-lg)}.footer__email[data-astro-cid-sz7xmlte]{font-family:var(--font-body);font-size:.875rem;letter-spacing:.04em;border-bottom:1px solid var(--color-border);padding-bottom:2px;transition:border-color var(--transition-base)}.footer__email[data-astro-cid-sz7xmlte]:hover{border-color:var(--color-text)}.footer__social[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;color:var(--color-text-muted);transition:color var(--transition-fast)}.footer__social[data-astro-cid-sz7xmlte]:hover{color:var(--color-text)}.footer__vcard[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:var(--space-xs);font-family:var(--font-body);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border:1px solid var(--color-border);color:var(--color-text-muted);transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.footer__vcard[data-astro-cid-sz7xmlte]:hover{border-color:var(--color-text);background-color:var(--color-text);color:var(--color-bg)}.footer__vcard-icon[data-astro-cid-sz7xmlte]{width:12px;height:12px}.footer__copy[data-astro-cid-sz7xmlte]{font-size:.75rem;color:var(--color-text-muted)}@media(min-width:768px){.footer__inner[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between}}:root{--color-bg: #f5f5f5;--color-text: #000000;--color-text-muted: #555555;--color-border: #cccccc;--color-border-light: #e0e0e0;--color-accent: #000000;--color-card-bg: #ffffff;--color-dot: rgba(0, 0, 0, .15);--font-display: "DotGothic16", monospace;--font-body: "JetBrains Mono", monospace;--max-width: 1200px;--header-height: 72px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 8rem;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .6s ease;--transition-slower: .9s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;cursor:pointer;background:none;border:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:1.1;letter-spacing:.02em}h1{font-size:clamp(3rem,10vw,8rem)}h2{font-size:clamp(1.75rem,4vw,3rem)}h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}p{max-width:65ch;font-size:clamp(.875rem,1.5vw,1rem)}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-lg)}.section{padding-block:var(--space-3xl)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.dot-pattern{background-image:radial-gradient(var(--color-dot) 1.5px,transparent 1.5px);background-size:24px 24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink{50%{border-color:transparent}}@keyframes dotPulse{0%,to{opacity:.3}50%{opacity:1}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity var(--transition-slow),transform var(--transition-slow)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-slide-left{opacity:0;transform:translate(-30px);transition:opacity var(--transition-slow),transform var(--transition-slow)}.animate-slide-left.is-visible{opacity:1;transform:translate(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-on-scroll,.animate-slide-left{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}@media(min-width:768px){:root{--header-height: 80px}.section{padding-block:var(--space-3xl)}}@media(min-width:1024px){.section{padding-block:10rem}}::selection{background-color:var(--color-text);color:var(--color-bg)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}
