/* ==========================================================================
   Polder — brand tokens (v1, provisional)

   This is the ONLY file that defines brand values. Every color, typeface,
   size, and rhythm used anywhere in the theme resolves back to a variable
   declared here. To retune the brand, edit this file and nothing else.
   ========================================================================== */

:root {

	/* --- Color -------------------------------------------------------- */

	--ink:        #0A0A0A;   /* primary text, dark sections, structure       */
	--porcelain:  #F7F6F4;   /* primary background / paper                   */
	--stone:      #EDE9E2;   /* secondary panels, quiet section shifts       */
	--bronze:     #C8A97A;   /* the only accent — rules, eyebrows, detail    */

	/* Future regional accents. Reserved, deliberately unused in v1. */
	/* --mountain: #3C4A3E; */
	/* --coastal:  #466482; */

	/* Derived values. Kept here so contrast stays tunable in one place. */
	--ink-70:      rgb(10 10 10 / 0.70);      /* body copy on porcelain      */
	--ink-55:      rgb(10 10 10 / 0.55);      /* captions, meta              */
	--paper-72:    rgb(247 246 244 / 0.72);   /* body copy on ink            */
	--paper-45:    rgb(247 246 244 / 0.45);   /* meta on ink                 */
	--rule:        rgb(10 10 10 / 0.12);      /* hairlines on light          */
	--rule-light:  rgb(247 246 244 / 0.18);   /* hairlines on ink            */
	--rule-bronze: rgb(200 169 122 / 0.55);   /* eyebrow flanking rules      */
	--scrim:       rgb(10 10 10 / 0.34);      /* image overlay for legibility*/
	--scrim-hero:  rgb(0 0 0 / 0.45);         /* base wash under hero copy   */
	--scrim-deep:  rgb(0 0 0 / 0.30);         /* added at the hero's edges   */

	/* --- Type --------------------------------------------------------- */

	--font-display: "Fraunces", Georgia, "Times New Roman", serif;
	--font-body:    "Montserrat", system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;

	--step--1: clamp(0.75rem,   0.72rem + 0.15vw, 0.8125rem);  /* eyebrow, caption   */
	--step-0:  clamp(0.9375rem, 0.90rem + 0.20vw, 1.0625rem);  /* body               */
	--step-1:  clamp(1.125rem,  1.05rem + 0.40vw, 1.375rem);   /* lead paragraph     */
	--step-2:  clamp(1.5rem,    1.30rem + 1.00vw, 2.125rem);   /* section heading    */
	--step-3:  clamp(2rem,      1.60rem + 2.00vw, 3.25rem);    /* project name       */
	--step-4:  clamp(2.5rem,    1.80rem + 4.20vw, 5.5rem);     /* hero               */

	--tracking-eyebrow: 0.28em;
	--tracking-nav:     0.14em;
	--tracking-display: -0.015em;
	--leading-display:  1.06;
	--leading-body:     1.65;

	/* --- Space -------------------------------------------------------- */

	--s-1: 0.5rem;
	--s-2: 1rem;
	--s-3: 1.5rem;
	--s-4: 2.5rem;
	--s-5: 4rem;
	--s-6: 6rem;
	--s-7: 9rem;

	/* Vertical rhythm between full-width bands. */
	--section-y: clamp(4rem, 3rem + 7vw, 9rem);

	/* --- Layout ------------------------------------------------------- */

	--container:        1240px;   /* standard content width  */
	--container-wide:   1600px;   /* generous image grids    */
	--container-narrow: 62ch;     /* prose measure           */
	--gutter:    clamp(1.25rem, 5vw, 3.5rem);
	--grid-gap:  clamp(1.25rem, 2.5vw, 2.5rem);

	/* --- Motion (subtle only) ----------------------------------------- */

	--ease: cubic-bezier(0.22, 0.61, 0.36, 1);
	--dur:  600ms;
	--dur-fast: 260ms;
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--dur: 1ms;
		--dur-fast: 1ms;
	}
}
