/*
 * RJ Gifts design tokens.
 * Palette pulled from the logo: brand red #ED1C24 and charcoal #3A3A3C.
 * Primitive tokens (--rj-red-*, --rj-gray-*) feed semantic tokens (--rj-color-*); components use semantic tokens only.
 */

@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/poppins-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/poppins-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/poppins-800.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/nunito-sans-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
	/* ---- primitives: brand red (logo #ED1C24) ---- */
	--rj-red-50:#FEF1F1;
	--rj-red-100:#FDE0E1;
	--rj-red-200:#FBC4C6;
	--rj-red-300:#F68A8F;
	--rj-red-500:#ED1C24;  /* logo red */
	--rj-red-600:#C8141B;  /* white text passes AA (5.6:1) */
	--rj-red-700:#A51017;
	--rj-red-800:#7E0C12;

	/* ---- primitives: charcoal & grays (logo #3A3A3C) ---- */
	--rj-gray-0:#FFFFFF;
	--rj-gray-50:#FAFAFA;
	--rj-gray-100:#F4F4F5;
	--rj-gray-150:#EEEEEF;
	--rj-gray-200:#E4E4E7;
	--rj-gray-300:#CFCFD3;
	--rj-gray-400:#A1A1A6;
	--rj-gray-500:#6B6B70;  /* 5.3:1 on white */
	--rj-gray-600:#4F4F53;
	--rj-gray-700:#3A3A3C;  /* logo charcoal */
	--rj-gray-800:#2A2A2C;
	--rj-gray-900:#1C1C1E;

	/* ---- primitives: status (condition grades only) ---- */
	--rj-green-50:#E8F5EE;--rj-green-600:#1E7A4C;--rj-green-700:#17603C;
	--rj-amber-50:#FFF3DC;--rj-amber-500:#E39B16;--rj-amber-800:#7A4A00;

	/* ---- semantic colors ---- */
	--rj-color-brand:var(--rj-red-500);
	--rj-color-brand-strong:var(--rj-red-600);
	--rj-color-brand-hover:var(--rj-red-700);
	--rj-color-brand-soft:var(--rj-red-50);
	--rj-color-brand-tint:var(--rj-red-100);
	--rj-color-text:var(--rj-gray-700);
	--rj-color-text-strong:var(--rj-gray-900);
	--rj-color-text-muted:var(--rj-gray-500);
	--rj-color-text-inverse:var(--rj-gray-0);
	--rj-color-link:var(--rj-red-600);
	--rj-color-link-hover:var(--rj-red-800);
	--rj-color-page:var(--rj-gray-100);
	--rj-color-surface:var(--rj-gray-0);
	--rj-color-surface-muted:var(--rj-gray-50);
	--rj-color-surface-inverse:var(--rj-gray-800);
	--rj-color-surface-inverse-deep:var(--rj-gray-900);
	--rj-color-border:var(--rj-gray-200);
	--rj-color-border-strong:var(--rj-gray-700);
	--rj-color-decor:var(--rj-gray-150);
	--rj-color-decor-strong:var(--rj-gray-300);
	--rj-color-focus:var(--rj-red-500);
	--rj-color-good-bg:var(--rj-green-50);--rj-color-good-fg:var(--rj-green-700);--rj-color-good-dot:var(--rj-green-600);
	--rj-color-ok-bg:var(--rj-amber-50);--rj-color-ok-fg:var(--rj-amber-800);--rj-color-ok-dot:var(--rj-amber-500);
	--rj-color-warn-bg:var(--rj-red-50);--rj-color-warn-fg:var(--rj-red-700);--rj-color-warn-dot:var(--rj-red-500);
	/* card media tints */
	--rj-tint-1:var(--rj-red-50);
	--rj-tint-2:var(--rj-gray-100);
	--rj-tint-3:var(--rj-gray-150);
	--rj-tint-4:var(--rj-red-100);

	/* ---- typography ---- */
	--rj-font-display:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
	--rj-font-body:'Nunito Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
	--rj-weight-regular:400;--rj-weight-semibold:600;--rj-weight-bold:700;--rj-weight-black:800;
	--rj-text-xs:12px;--rj-text-sm:14px;--rj-text-base:16px;--rj-text-md:17px;--rj-text-lg:19px;
	--rj-text-xl:22px;--rj-text-2xl:clamp(26px,2.6vw,30px);--rj-text-3xl:clamp(28px,3.2vw,38px);
	--rj-text-hero:clamp(40px,5.6vw,70px);
	--rj-leading-tight:1.08;--rj-leading-snug:1.3;--rj-leading-body:1.6;
	--rj-tracking-tight:-.02em;--rj-tracking-caps:.12em;

	/* ---- spacing (4px base) ---- */
	--rj-space-1:4px;--rj-space-2:8px;--rj-space-3:12px;--rj-space-4:16px;--rj-space-5:20px;
	--rj-space-6:24px;--rj-space-7:28px;--rj-space-8:32px;--rj-space-10:40px;--rj-space-12:48px;--rj-space-16:64px;
	--rj-gutter:clamp(16px,3vw,32px);
	--rj-section-pad:clamp(24px,4vw,48px);
	--rj-container:1240px;

	/* ---- radii, borders, shadows, motion ---- */
	--rj-radius-sm:8px;--rj-radius-md:12px;--rj-radius-lg:16px;--rj-radius-xl:22px;--rj-radius-2xl:28px;--rj-radius-pill:999px;
	--rj-border-thin:1px;--rj-border:2px;--rj-border-bold:2.5px;
	--rj-shadow-pop:4px 4px 0 var(--rj-gray-700);
	--rj-shadow-pop-lg:5px 5px 0 var(--rj-gray-700);
	--rj-shadow-pop-hover:2px 2px 0 var(--rj-gray-700);
	--rj-shadow-float:0 18px 40px rgba(28,28,30,.16);
	--rj-ease:.15s ease;
	--rj-z-header:50;--rj-z-drawer:1000;
}
