/* Rumbo · landing. Most of the design comes in inline styles from the original export;
   here go the font, global rules and the responsive/accessibility tweaks. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/assets/inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
html { scroll-behavior: smooth; background: #001026; }
body { margin: 0; background: #FFFFFF; }
a { color: #002A91; }
a:hover { color: #000058; }
img { max-width: 100%; }
section[id] { scroll-margin-top: 16px; }
:focus-visible { outline: 3px solid #75B1E7; outline-offset: 3px; border-radius: 6px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Nav: the "Entrar" button always visible */
header nav a.entrar:hover, header nav a.nl:hover { color: #FFFFFF !important; }
header nav a.nav-lista:hover { background: rgba(167,188,234,0.12); }

/* Waitlist form */
form[data-waitlist] input::placeholder { color: #8FA3C8; }
form[data-waitlist] input[aria-invalid="true"] { border-color: #E53935 !important; }
form[data-waitlist] button[disabled] { opacity: .65; cursor: progress !important; }
form[data-waitlist] button:hover { background: #D32F2F !important; }

/* Mobile */
@media (max-width: 760px) {
  header { padding: 16px 16px !important; }
  header nav { gap: 14px !important; }
  header nav a.nl { display: none; }
  header nav a.nav-lista { padding: 8px 14px !important; font-size: 14px; }
  header img { height: 28px !important; }
  section > div { padding-left: 16px !important; padding-right: 16px !important; }
  section > div[style*="padding: 112px"], section > div[style*="padding: 120px"], section > div[style*="padding: 104px"] { padding-top: 72px !important; padding-bottom: 72px !important; }
  #top > div[style*="padding: 56px"] { padding-top: 24px !important; gap: 24px !important; }
  #top > div > div[style*="padding-bottom: 96px"] { padding-bottom: 8px !important; }
  #top > svg { width: 560px !important; height: 560px !important; right: -260px !important; }
  section div[style*="padding: 56px 48px 0"] { padding: 36px 22px 0 !important; }
  section div[style*="height: 400px"] { height: 320px !important; }
  section div[style*="height: 400px"] img { width: 170px !important; }
  #encaje div[style*="repeat(4"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  p[style*="font-size: 56px"] { font-size: 44px !important; }
}
