.site-loader { display:none; }
html.site-is-loading .site-loader { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; background:#f4faf9; animation:site-loader-expire 0s 8s forwards; }
.site-loader-content { display:flex; flex-direction:column; align-items:center; gap:22px; padding:24px; }
.site-loader-logo { width:76px; height:76px; display:block; object-fit:contain; }
.site-loader-name { display:flex; align-items:center; gap:1px; margin:0; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:22px; font-weight:700; line-height:1.2; letter-spacing:2px; color:#173e35; }
.site-loader-letter { display:inline-block; animation:site-loader-letter 1.4s ease-in-out var(--letter-delay) infinite; }
.site-loader-track { width:74px; height:3px; overflow:hidden; border-radius:3px; background:#d8e8e1; }
.site-loader-track::after { content:""; display:block; width:50%; height:100%; border-radius:3px; background:#087f68; animation:site-loader-track 1.3s ease-in-out infinite; }
.site-loader-status { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@keyframes site-loader-letter { 0%,65%,100% { opacity:.45; transform:translateY(0); } 30% { opacity:1; transform:translateY(-2px); } }
@keyframes site-loader-track { 0% { transform:translateX(-110%); } 100% { transform:translateX(210%); } }
@keyframes site-loader-expire { to { visibility:hidden; pointer-events:none; } }
@media(max-width:767px) { .site-loader-logo { width:64px; height:64px; } .site-loader-name { font-size:20px; letter-spacing:1.8px; } .site-loader-content { gap:20px; } }
@media(prefers-reduced-motion:reduce) { .site-loader-letter,.site-loader-track::after { animation:none; opacity:1; transform:none; } .site-loader-track::after { width:100%; } }
