:root{
  /* shadows: soft, warm-neutral, never colored except the red glow on primary CTAs */
  --shadow-xs:0 1px 2px rgba(23,17,18,.05);
  --shadow-sm:0 1px 3px rgba(23,17,18,.07),0 1px 2px rgba(23,17,18,.04);
  --shadow-md:0 1px 2px rgba(23,17,18,.05),0 8px 24px -12px rgba(23,17,18,.18);
  --shadow-lg:0 18px 44px rgba(23,17,18,.14);
  --shadow-red:0 8px 20px rgba(248,20,22,.28);
  --shadow-inset-top:inset 0 1px 0 rgba(255,255,255,.14);

  --ring-focus:0 0 0 3px rgba(248,20,22,.28);

  --ease-out:cubic-bezier(.2,.8,.25,1); /* @kind other */
  --ease-in-out:cubic-bezier(.4,0,.2,1); /* @kind other */
  --dur-fast:120ms; /* @kind other */ --dur-med:200ms; /* @kind other */ --dur-slow:320ms; /* @kind other */

  --press-scale:.97; /* @kind other */

  /* brand pattern — white tb tile at low opacity over brand red, never behind reading text.
     The Brasa-tinted tile is the alternative when a panel must stay strictly inside the red. */
  --pattern-tb:url("../assets/pattern-tb.png"); /* @kind other */
  --pattern-tb-brasa:url("../assets/pattern-tb-brasa.png"); /* @kind other */
  --pattern-opacity:.14; /* @kind other */

  /* fotografía: velo rojo al 15% cuando la foto lleva titular en blanco */
  --veil-red:rgba(248,20,22,.15);
  --overlay-protect:linear-gradient(180deg,rgba(23,17,18,0) 0%,rgba(23,17,18,.72) 100%); /* @kind other */
}
