/* ============================================================
   BIOWELLNESS · BASE
   Reset + defaults de documento. No hay decisiones de marca
   acá salvo tipografía y color base del body.
   ============================================================ */

@layer reset{
  *{box-sizing:border-box;margin:0;padding:0}
  img,svg,video{max-width:100%;display:block}
  input,button,select,textarea{font:inherit;color:inherit}
  button{background:none;border:0;cursor:pointer}
  /* El atributo hidden manda SIEMPRE. Sin esto, cualquier clase con
     display propio (.btn es inline-flex) le gana al display:none del
     navegador y el elemento "oculto" se ve igual. */
  [hidden]{display:none!important}
}

@layer base{
  html{scroll-behavior:smooth}

  body{
    font-family:var(--ff-body);
    background:var(--ink);
    color:var(--tx-l);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }

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

  ::selection{background:var(--red);color:#fff}

  /* Foco visible para navegación por teclado (a11y) */
  :focus-visible{
    outline:2px solid var(--oxy);
    outline-offset:3px;
    border-radius:2px;
  }

  /* Los títulos heredan el peso del contexto; la voz editorial
     se aplica con la clase .display (ver utilities.css). */
  h1,h2,h3,h4,h5,h6{line-height:1.15;font-weight:700}

  strong,b{font-weight:700}
}
