/* Generado por aye-core desde el child theme: css/base.css (copia literal del prototipo). No editar. */
@layer ds {
  *, *::before, *::after { box-sizing: border-box; }
  html { font-size: 100%; -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--header-offset) + var(--space-6)); }
  @media (prefers-reduced-motion: no-preference) {
    html { scroll-behavior: smooth; }
  }
  body { margin: 0; padding-top: var(--header-offset); background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); font-size: var(--text-body-l); font-weight: var(--weight-light); line-height: var(--leading-body-l); text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
  body.is-locked { overflow: hidden; }
  h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd, fieldset { margin: 0; }
  h1, h2, h3, h4 { font-family: var(--font-display); font-weight: var(--weight-light); }
  h1 { font-size: var(--text-h1); line-height: var(--leading-h1); }
  h2 { font-size: var(--text-h2); line-height: var(--leading-h2); }
  h3 { font-size: var(--text-h3); line-height: var(--leading-h3); }
  ul, ol { padding: 0; list-style: none; }
  img, svg, video { display: block; max-width: 100%; }
  img { height: auto; }
  a { color: inherit; text-decoration: underline; text-decoration-thickness: var(--border-width); text-underline-offset: var(--underline-offset); text-decoration-color: currentColor; transition: text-decoration-color var(--dur-fast) var(--ease-linear); }
  a:active { opacity: var(--opacity-pressed); }
  button, input, select, textarea { font: inherit; color: inherit; }
  button { cursor: pointer; }
  :disabled, [aria-disabled="true"] { opacity: var(--opacity-disabled); cursor: default; }
  fieldset { padding: 0; border: 0; min-width: 0; }
  legend { padding: 0; }
  strong { font-weight: var(--weight-medium); }
  :focus { outline: none; }
  :focus-visible { position: relative; z-index: var(--z-focus); border-radius: var(--radius-sm); box-shadow: var(--shadow-focus); }
  [hidden] { display: none !important; }
  .ds-visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
  .ds-skip-link { position: fixed; top: var(--space-2); left: var(--space-2); z-index: var(--z-toast); padding: var(--space-3) var(--space-6); background: var(--color-bg-inverse); color: var(--color-text-inverse); font-family: var(--font-ui); font-size: var(--text-body); transform: translateY(-200%); }
  .ds-skip-link:focus-visible { position: fixed; transform: none; }
}
