/* ==========================================================================
   tucasita.pe — design tokens
   The ONLY place where brand colors, fonts, radii, shadows and spacing are
   defined. Every other stylesheet uses these variables.
   ========================================================================== */

@font-face { font-family: "Inter"; font-weight: 400; font-style: normal; font-display: swap; src: url("../fonts/inter-latin-400.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 500; font-style: normal; font-display: swap; src: url("../fonts/inter-latin-500.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 600; font-style: normal; font-display: swap; src: url("../fonts/inter-latin-600.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 700; font-style: normal; font-display: swap; src: url("../fonts/inter-latin-700.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-weight: 600; font-style: normal; font-display: swap; src: url("../fonts/jakarta-latin-600.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-weight: 700; font-style: normal; font-display: swap; src: url("../fonts/jakarta-latin-700.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-weight: 800; font-style: normal; font-display: swap; src: url("../fonts/jakarta-latin-800.woff2") format("woff2"); }

:root {
  /* Brand */
  --tc-primary: #C8432B;          /* terracotta: CTAs, prices, links */
  --tc-primary-hover: #A8361F;
  --tc-primary-soft: #FBEAE6;
  --tc-primary-rgb: 200, 67, 43;
  --tc-secondary: #0F3D3E;        /* petrol: header of panels, footer, headings */
  --tc-secondary-hover: #0A2C2D;
  --tc-secondary-soft: #E3EDED;
  --tc-secondary-rgb: 15, 61, 62;
  --tc-accent: #F2B544;           /* ochre: "Destacado" */
  --tc-accent-soft: #FDF3DC;
  --tc-success: #1E8E5A;          /* "Bajó de precio", confirmations */
  --tc-success-soft: #E3F4EC;
  --tc-warning: #B7791F;
  --tc-warning-soft: #FDF1DD;
  --tc-danger: #C0352B;
  --tc-danger-soft: #FBE7E5;
  --tc-info: #2B6CB0;
  --tc-info-soft: #E6F0FA;

  /* Neutrals */
  --tc-text: #1F2933;
  --tc-text-muted: #5B6770;
  --tc-text-soft: #8A949C;
  --tc-bg: #F7F5F2;               /* warm page background */
  --tc-surface: #FFFFFF;          /* cards */
  --tc-surface-alt: #FBFAF8;
  --tc-border: #E4E0DA;
  --tc-border-strong: #CFC9C1;
  --tc-overlay: rgba(15, 30, 31, .55);

  /* Typography */
  --tc-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --tc-font-heading: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;
  --tc-fs-xs: .75rem;
  --tc-fs-sm: .875rem;
  --tc-fs-base: 1rem;
  --tc-fs-lg: 1.125rem;
  --tc-fs-xl: 1.375rem;
  --tc-fs-2xl: 1.75rem;
  --tc-fs-3xl: clamp(1.9rem, 1.3rem + 2.4vw, 3rem);

  /* Shape & depth */
  --tc-radius-sm: 8px;
  --tc-radius: 12px;
  --tc-radius-lg: 18px;
  --tc-radius-pill: 999px;
  --tc-shadow-sm: 0 1px 2px rgba(31, 41, 51, .06), 0 1px 3px rgba(31, 41, 51, .06);
  --tc-shadow: 0 4px 14px rgba(31, 41, 51, .08);
  --tc-shadow-lg: 0 14px 40px rgba(31, 41, 51, .14);

  /* Spacing & layout */
  --tc-space-1: .25rem;
  --tc-space-2: .5rem;
  --tc-space-3: .75rem;
  --tc-space-4: 1rem;
  --tc-space-5: 1.5rem;
  --tc-space-6: 2rem;
  --tc-space-7: 3rem;
  --tc-header-h: 64px;
  --tc-container: 1280px;
  --tc-transition: .18s ease;

  /* Bootstrap bridge */
  --bs-body-font-family: var(--tc-font-body);
  --bs-body-color: var(--tc-text);
  --bs-body-bg: var(--tc-bg);
  --bs-primary: var(--tc-primary);
  --bs-primary-rgb: var(--tc-primary-rgb);
  --bs-secondary-rgb: var(--tc-secondary-rgb);
  --bs-link-color: var(--tc-primary);
  --bs-link-color-rgb: var(--tc-primary-rgb);
  --bs-link-hover-color: var(--tc-primary-hover);
  --bs-border-color: var(--tc-border);
  --bs-border-radius: var(--tc-radius-sm);
  --bs-border-radius-lg: var(--tc-radius);
  --bs-focus-ring-color: rgba(var(--tc-primary-rgb), .25);
}
