@media(min-width:761px) {
  .navbar { gap:20px; padding-block:20px; }
  .nav-links { gap:20px; }
  .nav-actions { gap:16px; }
}
.page-transition[hidden] { display:none !important; }
html { scrollbar-gutter:stable; }
html.transition-loading, html.transition-loading body { overflow:hidden; overscroll-behavior:none; }
.page-transition { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; background:rgba(243,241,236,.92); pointer-events:auto; touch-action:none; animation:transition-in .16s ease-out both; }
.page-transition svg { width:72px; height:auto; }
.transition-status { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.transition-yellow { animation:transition-rise 1.6s cubic-bezier(.65,0,.35,1) infinite; }
.transition-orange { animation:transition-fall 1.6s cubic-bezier(.65,0,.35,1) infinite; }
@keyframes transition-in { from { opacity:0; } to { opacity:1; } }
@keyframes transition-rise { 0%,10%,90%,100% { transform:translateY(0); } 45%,55% { transform:translateY(-495.9px); } }
@keyframes transition-fall { 0%,10%,90%,100% { transform:translateY(0); } 45%,55% { transform:translateY(495.9px); } }
@media(prefers-reduced-motion:reduce) { .page-transition, .transition-yellow, .transition-orange { animation:none; } }
.scroll-reveal { transition:opacity .4s ease-out, transform .4s ease-out; }
.scroll-reveal-pending { opacity:0; transform:translateY(12px); }
@media(prefers-reduced-motion:reduce) { .scroll-reveal { transition:none; } .scroll-reveal-pending { opacity:1; transform:none; } }
@media print { .scroll-reveal-pending { opacity:1; transform:none; } }
.skip-link { position:fixed; top:8px; left:8px; z-index:1100; padding:12px 16px; background:var(--color-dark); color:var(--color-background); transform:translateY(-150%); }
.skip-link:focus { transform:translateY(0); }
a:focus-visible, button:focus-visible, input:focus-visible { outline:2px solid var(--color-dark); outline-offset:4px; }
@media(max-width:760px) { .nav-links a, .footer-menu a, .login-link { display:inline-flex; align-items:center; min-height:44px; } }
