/*
 * Design tokens. This is the ONE file to touch to change the visual
 * direction (colors, fonts, spacing, radii) — nothing below should
 * reference a raw hex/px value outside this file.
 *
 * Values are the approved v1.0 handoff tokens (quiche-brand-book-v1.0.md /
 * quiche-page-design-spec-v1.0.md). Variable names keep our own convention
 * (--color-*, --text-*) rather than the spec's illustrative --q-* names.
 */

@font-face {
	font-family: "Quiche Heading";
	src: url("../fonts/playfair-600-cyrillic.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
	font-family: "Quiche Heading";
	src: url("../fonts/playfair-600-latin.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122;
}

@font-face {
	font-family: "Quiche Body";
	src: url("../fonts/inter-cyrillic.woff2") format("woff2");
	font-weight: 400 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
	font-family: "Quiche Body";
	src: url("../fonts/inter-latin.woff2") format("woff2");
	font-weight: 400 600;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122;
}

:root {
	/* Color — approved v1.0 tokens. White is the primary background;
	   cream is only for occasional section backgrounds (brand book §5). */
	--color-bg: #FFFFFF;
	--color-cream: #FAF7F2;
	--color-beige: #EADFCC;
	--color-sand: #D8B895;
	--color-surface: #FFFFFF;
	--color-text: #2E2E2E;
	--color-text-muted: #6E655D;
	--color-accent: #C26A56;
	--color-accent-dark: #A95543;
	--color-accent-contrast: #FFFFFF;
	--color-success: #6D7B46;
	--color-sale: #A95543;
	--color-border: #E9E3DB;

	/* Typography */
	--font-heading: "Quiche Heading", Georgia, "Times New Roman", serif;
	--font-body: "Quiche Body", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

	/* UI/body scale (Inter) */
	--text-xs: 0.75rem;    /* 12px — metadata */
	--text-sm: 0.875rem;   /* 14px — small body, nav */
	--text-base: 1rem;     /* 16px — body */
	--text-lg: 1.125rem;   /* 18px — large body, price low end */
	--text-xl: 1.375rem;   /* 22px — price high end */

	/* Display scale (Playfair), mobile sizes — desktop overrides live per component */
	--display-card: 1.625rem;  /* 26px — card editorial title */
	--display-h2: 1.75rem;     /* 28px — section H2, mobile */
	--display-h1: 2.125rem;    /* 34px — page H1, mobile */
	--display-hero: 2.5rem;    /* 40px — hero H1, mobile */
	--display-page: 2.875rem;  /* 46px — content-page H1 (e.g. Checkout), desktop */

	/* Spacing scale */
	--space-1: 0.25rem;
	--space-2: 0.5rem;
	--space-3: 0.75rem;
	--space-4: 1rem;
	--space-5: 1.5rem;
	--space-6: 2rem;
	--space-7: 3rem;
	--space-8: 4.5rem;

	--radius-sm: 8px;    /* buttons, inputs */
	--radius-md: 12px;   /* cards */
	--radius-lg: 14px;   /* large hero/category imagery */
	--radius-xl: 18px;   /* large content cards, e.g. checkout order summary */
	--radius-pill: 999px; /* chips, badges */

	--container-max: 1280px;
}
