/* NEO Business · tokens de marca compartidos (cobre y obsidiana, de la web v4.1). Todas las páginas los usan. */
@import url("https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,300..800&family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500;600&display=swap");
/* respaldos con las medidas de las fuentes finales: el texto no salta cuando cargan (sin desplazamiento de diseño) */
@font-face { font-family: "Instrument Serif Fallback"; src: local("Times New Roman"); size-adjust: 83.3%; ascent-override: 118.8%; descent-override: 37.2%; line-gap-override: 0%; }
@font-face { font-family: "Instrument Serif Fallback"; font-style: italic; src: local("Times New Roman Italic"), local("TimesNewRomanPS-ItalicMT"); size-adjust: 88.3%; ascent-override: 112.1%; descent-override: 35.1%; line-gap-override: 0%; }
@font-face { font-family: "Inter Fallback"; src: local("Arial"); size-adjust: 97.4%; ascent-override: 99.6%; descent-override: 24.6%; line-gap-override: 0%; }
@font-face { font-family: "JetBrains Mono Fallback"; src: local("Consolas"), local("Courier New"); size-adjust: 109%; ascent-override: 93%; descent-override: 25%; line-gap-override: 0%; }
:root {
  --paper: #FCFAF7; --paper-2: #F5EFE7; --card: #FFF;
  --obs: #15120F; --obs-2: #1E1914; --obs-3: #2A231C;
  --ink: #17120E; --ink-2: #55493F; --ink-3: #7A6C5F;
  --snow: #F8F4EF; --snow-2: rgba(248,244,239,.78); --snow-3: rgba(248,244,239,.55);
  --cu: #A8461A; --cu-b: #E0732A; --cu-w: rgba(224,115,42,.12); --ambar: #FFB070;
  --ok: #3FA06B; --warn: #D9A23A; --no: #C9544A;
  --line: rgba(23,18,14,.1); --line-l: rgba(248,244,239,.12);
  --serif: "Instrument Serif", "Instrument Serif Fallback", Georgia, serif; --sans: Inter, "Inter Fallback", system-ui, sans-serif; --mono: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, monospace;
  --r: 18px; --ease: cubic-bezier(.2,.7,.2,1);
}
.provisional-tag { display: inline-block; font: 600 .68rem var(--mono); letter-spacing: .06em; text-transform: uppercase; padding: 2px 8px; border-radius: 999px; background: rgba(217,162,58,.16); color: var(--warn); border: 1px solid rgba(217,162,58,.4); }
.demo-tag { display: inline-block; font: 600 .68rem var(--mono); letter-spacing: .06em; text-transform: uppercase; padding: 2px 8px; border-radius: 999px; background: rgba(120,160,200,.14); color: #8FB3D9; border: 1px solid rgba(120,160,200,.35); }

/* ===== R10.1 · dirección de arte «Sala de proyección» (ver evidence/R10_1/design/tienda/DIRECCION.md) =====
   Capa compartida: las dos hojas (sitio.css y cobro.css) la usan para que todas las páginas suban juntas. */
:root {
  --cu-h: #F08A45;                     /* cobre encendido (hover) */
  --cu-p: #C9601F;                     /* cobre presionado */
  --line-2: rgba(23,18,14,.16);
  --sh-1: 0 1px 2px rgba(23,18,14,.06), 0 4px 14px rgba(23,18,14,.06);
  --sh-2: 0 2px 6px rgba(23,18,14,.07), 0 18px 40px rgba(23,18,14,.10);
  --sh-3: 0 30px 80px rgba(21,18,15,.30);
  --glow: 0 10px 30px rgba(224,115,42,.34);
  --ring: 0 0 0 3px var(--paper), 0 0 0 5px var(--cu-b);
  --ring-d: 0 0 0 3px var(--obs), 0 0 0 5px var(--cu-b);
  --dur: .28s;
  /* la claqueta: franja diagonal cobre y obsidiana, la firma visual de NEO Business */
  --claqueta: repeating-linear-gradient(-55deg, var(--cu-b) 0 14px, var(--obs) 14px 28px);
  --perfo: radial-gradient(circle at 50% 50%, rgba(248,244,239,.16) 0 2.5px, transparent 3px) 0 0/14px 8px repeat-x;
  --grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
::selection { background: var(--cu-b); color: var(--obs); }
html { text-rendering: optimizeLegibility; }
/* el logo, igual en todas las páginas: NEO en sans, el vertical en serif itálica cobre */
.logo { font: 700 1.15rem/1 var(--sans); letter-spacing: .01em; color: var(--snow); text-decoration: none; white-space: nowrap; display: inline-flex; align-items: baseline; }
.logo span { font: italic 400 1.28rem/1 var(--serif); letter-spacing: 0; text-transform: none; color: var(--cu-b); margin-left: 5px; }
/* botones: píldora cobre con brillo interior; secundarios delineados. Solo para acciones reales. */
.btn { position: relative; isolation: isolate; overflow: hidden; min-height: 48px;
  background: linear-gradient(180deg, var(--cu-h), var(--cu-b) 55%, #D2661F);
  border-color: rgba(255,214,180,.35); color: var(--obs); letter-spacing: -.005em;
  box-shadow: inset 0 1px 0 rgba(255,236,214,.55), inset 0 -1px 0 rgba(120,40,0,.25), 0 6px 18px rgba(224,115,42,.22); }
.btn::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(105deg, transparent 30%, rgba(255,248,240,.45) 50%, transparent 70%); transform: translateX(-120%); transition: transform .7s var(--ease); }
.btn:hover { transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,236,214,.6), var(--glow); }
.btn:hover::after { transform: translateX(120%); }
.btn:active { transform: translateY(0) scale(.985); background: var(--cu-p); box-shadow: inset 0 2px 6px rgba(80,25,0,.35); }
.btn--sm { min-height: 38px; }
.btn--ghost, .btn--gl { background: transparent; box-shadow: none; }
.btn--ghost { color: var(--cu); border-color: currentColor; }
.btn--ghost:hover { background: var(--cu-w); }
.btn--gl { color: var(--snow); border-color: rgba(248,244,239,.38); }
.btn--gl:hover { background: rgba(248,244,239,.08); border-color: var(--snow); }
.btn--ghost::after, .btn--gl::after { display: none; }
.btn--light { background: var(--snow); color: var(--ink); }
.btn[disabled], .btn[aria-disabled=true] { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; filter: grayscale(.4); }
.btn[aria-busy=true] { cursor: progress; }
.btn[aria-busy=true]::before { content: ""; width: 14px; height: 14px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; animation: neo-gira .8s linear infinite; }
@keyframes neo-gira { to { transform: rotate(360deg); } }
/* foco visible en todo lo que se pica */
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--cu-b); outline-offset: 3px; border-radius: 6px; }
.btn:focus-visible { outline: 2px solid var(--cu-b); outline-offset: 4px; border-radius: 999px; }
/* menos movimiento: todo a la vista, sin animaciones */
@media (prefers-reduced-motion: reduce) {
  .btn, .btn::after { transition: none; }
  .btn:hover, .btn:active { transform: none; }
  .btn::after { display: none; }
  .btn[aria-busy=true]::before { animation: none; }
}

/* selector de idioma ES/EN y familia NEO (verticales) */
.lang-sw{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:30px;padding:0 10px;border:1px solid currentColor;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none;opacity:.85}
.lang-sw:hover,.lang-sw:focus-visible{opacity:1}
.familia{display:block;margin-top:8px}
.familia a{color:inherit;text-decoration:underline;text-underline-offset:3px}
