/* Minimal reset */
*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body { margin: 0; }

img { max-width: 100%; height: auto; display: block; }

button, input, textarea { font: inherit; }

a { color: inherit; text-decoration: none; }

:focus-visible { outline: 2px solid #7df2de; outline-offset: 3px; }

@media (prefers-reduced-motion: reduce){
  html { scroll-behavior: auto; }
  * { transition: none !important; }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: absolute;
  left: 12px;
  top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #ffffff;
  color: #0e262b;
  transform: translateY(-150%);
  transition: transform 0.2s ease;
  z-index: 9999;
}
.skip-link:focus { transform: translateY(0); }
