/* ---- Fuente Nunito (Google Fonts) ---- */
@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600;700;800&display=swap");

/* ---- Reset/opinión ligera ---- */
*,
*::before,
*::after { box-sizing: border-box; }

html { line-height: 1.5; -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  font-family: "Nunito", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
  font-size: 16px;
  color: #0f172a;           /* slate-900 */
  background: #0b1220;      /* dark bg para contraste suave */
}

h1, h2, h3, h4 { margin: 0 0 .5rem; font-weight: 800; }

p { margin: 0 0 1rem; }

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

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

button, input, select, textarea {
  font: inherit;             /* asegura Nunito en controles */
  color: inherit;
}

select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background-color: #ffffff;
  border: 1px solid #e2e8f0; /* slate-200 */
  border-radius: 10px;
  padding: .5rem 2.25rem .5rem .75rem; /* espacio para “flecha” */
  line-height: 1.2;
  background-image:
    linear-gradient(45deg, transparent 50%, #334155 50%),
    linear-gradient(135deg, #334155 50%, transparent 50%),
    linear-gradient(to right, #e2e8f0, #e2e8f0);
  background-position:
    calc(100% - 18px) calc(50% - 3px),
    calc(100% - 13px) calc(50% - 3px),
    calc(100% - 2.5rem) 50%;
  background-size: 6px 6px, 6px 6px, 1px 1.8rem;
  background-repeat: no-repeat;
}

input[type="search"] {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: .55rem .75rem;
  background: #ffffff;
  color: #0f172a;
}

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

.skip-link {
  position: absolute; left: -9999px; top: auto;
}
.skip-link:focus {
  left: 1rem; top: 1rem; z-index: 1000;
  background: #ffffff; color: #0f172a; padding: .5rem .75rem; border-radius: 8px;
}
