@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #f5f2eb;--fg: #000;--fg-muted: rgba(0, 0, 0, .4);--accent: rgba(0, 0, 0, .08);--transition-speed: .6s;--ease: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}html.dark-mode{--bg: #111;--fg: #fff;--fg-muted: rgba(255, 255, 255, .4);--accent: rgba(255, 255, 255, .08)}html,body{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--fg);transition:background var(--transition-speed) var(--ease),color var(--transition-speed) var(--ease)}#particles{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.dark-toggle{position:fixed;top:24px;right:24px;width:20px;height:20px;border-radius:50%;background:var(--fg);border:none;cursor:pointer;z-index:1000;transition:background var(--transition-speed) var(--ease),transform .3s var(--ease-bounce),opacity .3s ease}.dark-toggle:hover{transform:scale(1.3)}.dark-toggle:active{transform:scale(.9)}@media(min-width:768px){.dark-toggle{top:40px;right:40px;width:24px;height:24px}}@media(min-width:1200px){.dark-toggle{top:60px;right:60px}}.site-wrapper{position:relative;z-index:1;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:24px;overflow:hidden}@media(min-width:768px){.site-wrapper{padding:40px}}@media(min-width:1200px){.site-wrapper{padding:60px}}.site-header{display:flex;flex-direction:column;gap:12px}.site-title{font-size:clamp(42px,10vw,84px);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--fg);transition:color var(--transition-speed) var(--ease)}.site-title-link{text-decoration:none;color:inherit}.header-bar{width:33.33%;height:clamp(8px,1.5vw,14px);background:var(--fg);transition:background var(--transition-speed) var(--ease),width .5s var(--ease)}.site-header:hover .header-bar{width:50%}.site-nav{margin-top:auto;padding-bottom:clamp(42px,10vw,84px);display:flex;flex-direction:column;gap:4px}.nav-item{font-size:clamp(42px,10vw,84px);font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--fg);text-decoration:none;display:block;position:relative;cursor:pointer;transition:color var(--transition-speed) var(--ease),transform .4s var(--ease),opacity .3s ease;-webkit-tap-highlight-color:transparent}.nav-item:after{content:"";position:absolute;bottom:0;left:0;width:0;height:4px;background:var(--fg);transition:width .5s var(--ease),background var(--transition-speed) var(--ease)}@media(hover:hover){.nav-item:hover{transform:translate(16px)}.nav-item:hover:after{width:100%}.site-nav:has(.nav-item:hover) .nav-item:not(:hover){opacity:.25}}.nav-item:active{transform:scale(.98)}.nav-item{opacity:0;transform:translateY(40px);animation:fadeUp .8s var(--ease) forwards}.nav-item:nth-child(1){animation-delay:.1s}.nav-item:nth-child(2){animation-delay:.2s}.nav-item:nth-child(3){animation-delay:.3s}.nav-item:nth-child(4){animation-delay:.4s}.nav-item--nightfall{position:relative;width:fit-content}.nightfall-logo{position:absolute;left:100%;top:50%;transform:translateY(-50%) translate(4px);margin-left:.35em;height:.72em;width:auto;opacity:0;transition:opacity .3s var(--ease),transform .3s var(--ease);pointer-events:none}html:not(.dark-mode) .nightfall-logo--dark{display:none}html.dark-mode .nightfall-logo--light{display:none}@media(hover:hover){.nav-item--nightfall:hover .nightfall-logo{opacity:1;transform:translateY(-50%) translate(20px)}}.site-title{opacity:0;transform:translateY(20px);animation:fadeUp .8s var(--ease) forwards;animation-delay:0s}.header-bar{opacity:0;animation:fadeIn .6s ease forwards;animation-delay:.3s}.dark-toggle{opacity:0;animation:fadeIn .6s ease forwards;animation-delay:.5s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{to{opacity:1}}.page-wrapper{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:24px}@media(min-width:768px){.page-wrapper{padding:40px}}@media(min-width:1200px){.page-wrapper{padding:60px}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px}.page-title{font-size:clamp(36px,8vw,72px);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--fg);transition:color var(--transition-speed) var(--ease);opacity:0;transform:translateY(30px);animation:fadeUp .6s var(--ease) forwards;animation-delay:.1s}.page-wrapper~.dark-toggle,body:has(.page-wrapper) .dark-toggle{display:none}.page-close{position:fixed;top:24px;right:24px;width:24px;height:24px;background:none;border:none;cursor:pointer;z-index:1001;transition:transform .3s var(--ease-bounce);text-decoration:none;display:block}.page-close:before,.page-close:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:3px;background:var(--fg);border-radius:2px;transition:background var(--transition-speed) var(--ease)}.page-close:before{transform:translate(-50%,-50%) rotate(45deg)}.page-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.page-close:hover{transform:scale(1.3)}@media(min-width:768px){.page-close{top:40px;right:40px}}@media(min-width:1200px){.page-close{top:60px;right:60px}}.page-bar{width:33.33%;height:clamp(6px,1vw,10px);background:var(--fg);margin-bottom:48px;transition:background var(--transition-speed) var(--ease);opacity:0;animation:fadeIn .5s ease forwards;animation-delay:.25s}.page-body{max-width:720px;opacity:0;transform:translateY(30px);animation:fadeUp .7s var(--ease) forwards;animation-delay:.35s}.page-body p{font-size:clamp(16px,2.5vw,20px);line-height:1.7;font-weight:400;color:var(--fg);margin-bottom:24px;transition:color var(--transition-speed) var(--ease)}.page-body h2{font-size:clamp(24px,4vw,36px);font-weight:800;margin-bottom:20px;margin-top:48px;color:var(--fg);letter-spacing:-.02em;transition:color var(--transition-speed) var(--ease)}.page-body h2:first-child{margin-top:0}.page-body h3{font-size:clamp(18px,3vw,24px);font-weight:700;margin-bottom:12px;margin-top:36px;color:var(--fg);transition:color var(--transition-speed) var(--ease)}.page-body ul,.page-body ol{list-style:none;margin-bottom:24px}.page-body ul li,.page-body ol li{font-size:clamp(16px,2.5vw,20px);line-height:1.7;color:var(--fg);padding-left:20px;position:relative;transition:color var(--transition-speed) var(--ease)}.page-body ul li:before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;border-radius:50%;background:var(--fg);transition:background var(--transition-speed) var(--ease)}.page-body a{color:var(--fg);text-decoration:underline;text-underline-offset:4px;transition:opacity .3s ease,color var(--transition-speed) var(--ease)}.page-body a:hover{opacity:.5}.page-body img{max-width:100%;height:auto;border-radius:8px;margin:32px 0}.page-body blockquote{border-left:4px solid var(--fg);padding-left:20px;margin:32px 0;font-style:italic;opacity:.8}.page-body code{font-size:.9em;background:var(--accent);padding:2px 6px;border-radius:4px}.page-body pre{background:var(--accent);padding:20px;border-radius:8px;margin:24px 0;overflow-x:auto}.page-body pre code{background:none;padding:0}.contact-grid{display:grid;grid-template-columns:1fr;gap:32px;margin-top:32px}@media(min-width:600px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-block h3{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--fg-muted);margin-bottom:8px;margin-top:0;transition:color var(--transition-speed) var(--ease)}.contact-block p{font-size:clamp(18px,3vw,24px)!important;font-weight:600!important;margin-bottom:0!important}.page-back{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--fg-muted);text-decoration:none;margin-bottom:24px;transition:color .3s ease}.page-back:hover{color:var(--fg)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--fg-muted);border-radius:2px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
