.preloader-bar,.project .thumbnail,body.is-loading{overflow:hidden}.nav-links a,.preloader-bar{position:relative}.nav-links a::after,.preloader-bar::after{content:'';position:absolute;left:0;background:var(--coin,#f5c451)}#site-preloader{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);background:rgba(0,0,0,.137);transition:opacity .6s,visibility .6s}#site-preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.preloader-mark{display:flex;flex-direction:column;align-items:center;gap:18px}.preloader-logo{font-family:'Space Grotesk',sans-serif;font-size:28px;font-weight:700;letter-spacing:.02em;color:#f4f4f5;opacity:0;animation:.5s .15s forwards preloader-fade-in}.preloader-logo .mark,.project:hover h3{color:var(--coin,#f5c451)}.preloader-bar{width:160px;height:2px;background:rgba(255,255,255,.12);border-radius:2px}.preloader-bar::after{top:0;height:100%;width:40%;border-radius:2px;animation:1.1s ease-in-out infinite preloader-slide}@keyframes preloader-slide{0%{left:-40%}100%,60%{left:100%}}@keyframes preloader-fade-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22, 1, .36, 1),transform .7s cubic-bezier(.22, 1, .36, 1);will-change:opacity,transform}[data-reveal-group].is-visible>*,[data-reveal].is-visible{opacity:1;transform:translateY(0)}[data-reveal=left]{transform:translateX(-32px)}[data-reveal=right]{transform:translateX(32px)}[data-reveal=left].is-visible,[data-reveal=right].is-visible{transform:translateX(0)}[data-reveal-group]>*{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.22, 1, .36, 1),transform .6s cubic-bezier(.22, 1, .36, 1)}[data-reveal-group].is-visible>:first-child{transition-delay:20ms}[data-reveal-group].is-visible>:nth-child(2){transition-delay:0.10s}[data-reveal-group].is-visible>:nth-child(3){transition-delay:0.18s}[data-reveal-group].is-visible>:nth-child(4){transition-delay:0.26s}[data-reveal-group].is-visible>:nth-child(5){transition-delay:0.34s}[data-reveal-group].is-visible>:nth-child(6){transition-delay:0.42s}@media (prefers-reduced-motion:reduce){#site-preloader,[data-reveal-group]>*,[data-reveal]{transition:none!important;animation:none!important}[data-reveal-group]>*,[data-reveal]{opacity:1!important;transform:none!important}}.project{transition:transform .35s cubic-bezier(.22, 1, .36, 1),box-shadow .35s cubic-bezier(.22, 1, .36, 1)}.project .thumbnail img{filter:grayscale(90%);transition:.5s cubic-bezier(.22, 1, .36, 1)}.project:hover .thumbnail img{filter:grayscale(0%);transform:scale(1.8)}.project h3{transition:color .25s}.btn-primary,.modal-submit,.nav-cta{transition:transform .25s cubic-bezier(.22, 1, .36, 1),box-shadow .25s,background .25s}.btn-primary:hover,.modal-submit:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(245,196,81,.25)}.btn-primary:active,.modal-submit:active,.nav-cta:active{transform:translateY(0)}.btn-ghost{transition:border-color .25s,color .25s,transform .25s}.btn-ghost:hover{transform:translateY(-2px)}.nav-links a::after{bottom:-4px;width:0;height:1px;transition:width .3s}.nav-links a:hover::after{width:100%}.stack-badges .badge{transition:transform .25s,background .25s}.stack-badges .badge:hover{transform:translateY(-3px)}