@font-face{font-family:geistSans;src:url(../media/GeistVF-s.p.4c3c0b96.woff)format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:85.83%;descent-override:20.52%;line-gap-override:9.33%;size-adjust:107.19%}.geistsans_47a3c9f1-module__MCSGAW__className{font-family:geistSans,geistSans Fallback}.geistsans_47a3c9f1-module__MCSGAW__variable{--font-geist-sans:"geistSans","geistSans Fallback"}
@font-face{font-family:geistMono;src:url(../media/GeistMonoVF-s.p.2cee7d16.woff)format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:geistMono Fallback;src:local(Arial);ascent-override:69.97%;descent-override:16.73%;line-gap-override:7.61%;size-adjust:131.49%}.geistmono_cfbefb1d-module__fDTvyq__className{font-family:geistMono,geistMono Fallback}.geistmono_cfbefb1d-module__fDTvyq__variable{--font-geist-mono:"geistMono","geistMono Fallback"}
@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8f0b7836ec83ae9b-s.f7772dd1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f921ce7c08d02120-s.a149f11b.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d5ae8e3f3f5534fc-s.82f2fe08.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/510eac4d52210324-s.c019af4c.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4af87c81e7b8fc1e-s.5ce46734.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/244e24673c124a8c-s.57320123.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b156100eddfb6bc4-s.p.a7cbc2fe.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond Fallback;src:local(Times New Roman);ascent-override:106.26%;descent-override:31.44%;line-gap-override:0.0%;size-adjust:94.77%}.eb_garamond_18c283fc-module__uPPwXa__className{font-family:EB Garamond,EB Garamond Fallback;font-style:normal;font-weight:400}.eb_garamond_18c283fc-module__uPPwXa__variable{--base-font-family:"EB Garamond","EB Garamond Fallback"}
@font-face{font-family:Aboreto;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7fe155b5b3c663d5-s.d8385276.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Aboreto;font-style:normal;font-weight:400;font-display:swap;src:url(../media/14971d9343d08668-s.p.5b23ccda.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Aboreto Fallback;src:local(Arial);ascent-override:70.87%;descent-override:17.53%;line-gap-override:0.0%;size-adjust:131.22%}.aboreto_ba6779cd-module__usWBAW__className{font-family:Aboreto,Aboreto Fallback;font-style:normal;font-weight:400}.aboreto_ba6779cd-module__usWBAW__variable{--aboreto-font-family:"Aboreto","Aboreto Fallback"}
:root{--phi:1.61803;--phi-2:calc(var(--phi)*var(--phi));--phi-3:calc(var(--phi-2)*var(--phi));--primary:#000;--primary-glow:#00000014;--secondary:#1a1a1a;--secondary-glow:#0000000d;--background:#e8e8e8;--foreground:#000;--hover-bg:#d4d4d4;--border-color:#0000001a;--accent:#333;--space-xs:calc(1rem/var(--phi-2));--space-sm:calc(1rem/var(--phi));--space-md:1rem;--space-lg:calc(1rem*var(--phi));--space-xl:calc(1rem*var(--phi-2));--space-2xl:calc(1rem*var(--phi-3));--text-xs:calc(1rem/var(--phi));--text-sm:1rem;--text-md:calc(1rem*var(--phi));--text-lg:calc(1rem*var(--phi-2));--text-xl:calc(1rem*var(--phi-3));--text-2xl:calc(1rem*var(--phi-3)*var(--phi));--transition:all .6s cubic-bezier(.4,0,.2,1);--transition-slow:all .8s cubic-bezier(.16,1,.3,1);--transition-bounce:all .8s cubic-bezier(.68,-.6,.32,1.6)}@media (prefers-color-scheme:dark){:root{--background:#1a1a1a;--foreground:#fff;--primary:#fff;--secondary:#e8e8e8;--accent:#ccc;--hover-bg:#ffffff14;--border-color:#ffffff1a}}body{font-family:var(--base-font-family),"Lora","Times New Roman",serif;background-color:var(--background);color:var(--foreground);letter-spacing:-.015em;font-feature-settings:"ss01","ss02","cv01","cv02","kern";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0;padding:0;line-height:1.75}a{color:var(--primary);transition:var(--transition);padding:0 var(--space-xs);text-decoration:none;position:relative}a:before{content:"";transform-origin:100%;width:100%;height:1px;transition:var(--transition);background:currentColor;position:absolute;bottom:0;left:0;transform:scaleX(0)}a:hover{color:var(--accent)}a:hover:before{transform-origin:0;transform:scaleX(1)}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}h1,h2,h3,h4,h5,h6{background:linear-gradient(135deg,var(--primary),var(--accent)55%,var(--secondary)65%);-webkit-text-fill-color:transparent;text-shadow:var(--text-shadow);margin:var(--space-xl)0 var(--space-lg);letter-spacing:-.02rem;-webkit-background-clip:text;font-family:Lora,Times New Roman,serif;font-weight:700;line-height:1.2}html{scroll-behavior:smooth}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background-color:var(--primary);color:#fff}.text-left{text-align:left}.text-center{text-align:center}article,.article-content{text-align:left;max-width:70ch;margin:0 auto;padding:1rem;font-size:1.2rem;line-height:1.4}.article-content code{font-size:1rem}.card{background:var(--background);padding:var(--space-xl);box-shadow:var(--card-shadow);border:1px solid var(--border-color);transition:var(--transition-bounce);border-radius:2px;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg,transparent,var(--primary),transparent);height:1px;transition:var(--transition);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.card:hover{transform:translateY(-3px);box-shadow:0 12px 24px -8px #3b82f626,0 4px 8px -4px #3b82f61a}.card:hover:before{transform:scaleX(1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(var(--space-sm))}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeIn}.grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));display:grid}@keyframes revealFromBottom{0%{clip-path:inset(100% 0 0);transform:translateY(calc(var(--space-lg)*.5))}to{clip-path:inset(0);transform:translateY(0)}}.reveal{animation:1s cubic-bezier(.16,1,.3,1) forwards revealFromBottom}.site-title{font-size:var(--text-2xl);letter-spacing:-.04em;margin:var(--space-2xl)0;gap:.5em;font-weight:800;display:inline-flex;position:relative}.site-title:before{content:"";background:linear-gradient(45deg,var(--primary-glow),var(--secondary-glow));filter:blur(30px);opacity:0;transition:var(--transition);z-index:-1;position:absolute;inset:-20px -40px}.site-title:hover:before{opacity:1}.post-item{gap:var(--space-lg);padding:calc(var(--space-md)*var(--phi))0;border-bottom:1px solid var(--border-color);opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp;animation-delay:calc(var(--index)*.1s);grid-template-columns:auto 1fr;display:grid;position:relative}.post-item:before{content:"";background:linear-gradient(90deg,var(--primary-glow),var(--secondary-glow));opacity:0;transition:var(--transition);z-index:-1;position:absolute;inset:0}.post-item:hover{transform:translateX(calc(var(--space-xs)*var(--phi)))}.post-item:hover:before{opacity:1}.filter-button{border:1px solid var(--border-color);padding:var(--space-sm)var(--space-lg);font-family:var(--font-geist-mono);font-size:var(--text-xs);color:var(--foreground);cursor:pointer;transition:var(--transition);background:0 0;border-radius:2px;position:relative;overflow:hidden}.filter-button:before{content:"";background:linear-gradient(135deg,var(--primary-glow),var(--secondary-glow));opacity:0;transition:var(--transition);position:absolute;inset:0}.filter-button:hover:before{opacity:1}@keyframes fadeInUp{0%{opacity:0;transform:translateY(calc(var(--space-md)*var(--phi)))}to{opacity:1;transform:translateY(0)}}@keyframes subtleGlow{0%,to{filter:brightness()}50%{filter:brightness(1.1)}}.section-title{font-size:var(--text-xl);text-align:center;margin:calc(var(--space-xl)*var(--phi))0;background:linear-gradient(135deg,var(--primary),var(--accent),var(--secondary));-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;animation:8s infinite gradientFlow}@keyframes gradientFlow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes subtleFloat{0%,to{transform:translate(0)}50%{transform:translate(-10px,-10px)}}
