/* base.css — resets, variables, typography */

:root{
  --bg: #ffffff;
  --bg-soft: #F4F6F8;
  --ink: #1F2933;
  --muted: #5B6672;

  --primary: #7A93A6;   /* azul petróleo */
  --accent: #2F80ED;    /* CTA */
  --accent-2: #2D9C8B;  /* opcional */

  --card: #ffffff;
  --border: rgba(15,42,68,0.12);

  --radius: 20px;
  --shadow: 0 12px 30px rgba(15, 42, 68, 0.10);

  --container: 1120px;

  --font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --font-serif: ui-serif, Georgia, "Times New Roman", Times, serif;

  --focus: 0 0 0 4px rgba(47,128,237,0.25);

  --header-h: 76px;   /* coincide con .header__inner height */
  --anchor-gap: 16px; /* extra para que el título respire */
}

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin: 0;
  font-family: var(--font-sans);
  color: var(--ink);
  background: var(--bg);
  line-height: 1.55;
}

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

a{ color: inherit; text-decoration: none; }
a.link{ color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }

:focus-visible{ outline: none; box-shadow: var(--focus); border-radius: 10px; }

.skip-link{
  position: absolute;
  left: -999px;
  top: 12px;
  background: var(--accent);
  color: #fff;
  padding: 10px 12px;
  border-radius: 10px;
  z-index: 9999;
}
.skip-link:focus{ left: 12px; }

html{
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + var(--anchor-gap));
}

section[id]{
  scroll-margin-top: calc(var(--header-h) + var(--anchor-gap));
}
