/**
 * Pool Ready Home - Design Tokens
 *
 * Central source of truth for colors, type, spacing and other primitives.
 * Every other stylesheet in this theme reads from these custom properties
 * instead of hard-coding values, so a brand refresh only touches this file
 * (or the color pickers under Theme Settings → Brand & Contact).
 */

:root {
	/* ------------------------------------------------------------------
	 * Brand colors
	 * ---------------------------------------------------------------- */
	--prh-teal: #0E8698;           /* Primary teal - buttons, links, icons */
	--prh-teal-dark: #0f6f77;      /* hover / pressed state */
	--prh-teal-darker: #0c5a61;
	--prh-teal-10: rgba(20, 145, 155, 0.1);
	--prh-teal-20: rgba(20, 145, 155, 0.2);
	--prh-teal-60: rgba(20, 145, 155, 0.6);

	--prh-navy: #02274A;           /* Secondary navy - dark sections, CTA buttons */
	--prh-navy-dark: #071d29;      /* hover state */
	--prh-navy-darker: #010F34;
	--prh-navy-20: rgba(10, 42, 59, 0.2);

	--prh-gold: #ffb020;           /* Star ratings */

	/* ------------------------------------------------------------------
	 * Neutrals
	 * ---------------------------------------------------------------- */
	--prh-black: #000000;
	--prh-ink: #0b2230;             /* heading ink */
	--prh-slate: #1e2b33;           /* input text  */
	--prh-grey-500: #5c7080;        /* body copy */
	--prh-grey-300: #a9b8c2;
	--prh-grey-100: #e4edef;
	--prh-grey-50: #f1f7f8;
	--prh-white: #ffffff;

	/* Alpha helpers used on dark (navy) surfaces */
	--prh-on-dark: rgba(255, 255, 255, 1);
	--prh-on-dark-70: rgba(255, 255, 255, 0.7);
	--prh-on-dark-40: rgba(255, 255, 255, 0.4);
	--prh-hairline: rgba(255, 255, 255, 0.14);

	/* ------------------------------------------------------------------
	 * Semantic aliases
	 * ---------------------------------------------------------------- */
	--prh-body-bg: var(--prh-white);
	--prh-body-color: var(--prh-grey-500);
	--prh-heading-color: var(--prh-ink);
	--prh-accent: var(--prh-teal);
	--prh-accent-contrast: var(--prh-white);
	--prh-link: var(--prh-teal);
	--prh-link-hover: var(--prh-navy);
	--prh-focus-ring: var(--prh-teal);

	/* ------------------------------------------------------------------
	 * Typography  (Poppins)
	 * ---------------------------------------------------------------- */
	--prh-font-sans: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI",
		Roboto, "Helvetica Neue", Arial, sans-serif;
	--prh-font-heading: var(--prh-font-sans);
	--prh-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

	--prh-fw-regular: 400;
	--prh-fw-medium: 500;
	--prh-fw-semibold: 600;
	--prh-fw-bold: 700;

	/* Fluid type scale - min value at 360px, max at 1440px */
	--prh-fs-display: clamp(2.25rem, 1.3rem + 4.7vw, 3.75rem);  /* 36 -> 60 */
	--prh-fs-h1: clamp(2rem, 1.2rem + 4vw, 3.5rem);              /* 32 -> 56 */
	--prh-fs-h2: clamp(1.75rem, 1.2rem + 2.7vw, 2.75rem);        /* 28 -> 44 */
	--prh-fs-h3: clamp(1.375rem, 1.1rem + 1.4vw, 1.75rem);       /* 22 -> 28 */
	--prh-fs-h4: clamp(1.125rem, 1rem + 0.6vw, 1.375rem);        /* 18 -> 22 */
	--prh-fs-h5: 1.25rem;                                         /* 20 - footer col titles */
	--prh-fs-h6: 1.0625rem;
	--prh-fs-lead: 1.125rem;
	--prh-fs-body: 1rem;                                          /* 16 */
	--prh-fs-sm: 0.875rem;                                        /* 14 - nav links */
	--prh-fs-xs: 0.75rem;                                         /* 12 - meta text */
	--prh-fs-eyebrow: 0.9375rem;                                  /* 15 - section eyebrow */

	--prh-lh-tight: 1;
	--prh-lh-heading: 1.2;
	--prh-lh-snug: 1.45;
	--prh-lh-body: 1.65;
	--prh-lh-loose: 1.8;

	--prh-ls-display: -0.01em;
	--prh-ls-heading: -0.01em;
	--prh-ls-tight: 0;
	--prh-ls-eyebrow: 0.06em;    /* wide-tracked uppercase eyebrow */

	/* ------------------------------------------------------------------
	 * Layout
	 * ---------------------------------------------------------------- */
	--prh-container: 1280px;
	--prh-container-narrow: 800px;
	--prh-gutter: clamp(1.25rem, 0.4rem + 3.6vw, 5rem); /* 20 -> 80 */
	--prh-topbar-height: 40px;
	--prh-header-height: 88px;

	/* ------------------------------------------------------------------
	 * Spacing scale (4px base)
	 * ---------------------------------------------------------------- */
	--prh-space-1: 0.25rem;
	--prh-space-2: 0.5rem;
	--prh-space-3: 0.75rem;
	--prh-space-4: 1rem;
	--prh-space-5: 1.25rem;
	--prh-space-6: 1.5rem;
	--prh-space-8: 2rem;
	--prh-space-10: 2.5rem;
	--prh-space-12: 3rem;
	--prh-space-16: 4rem;
	--prh-space-20: 5rem;
	--prh-space-24: 6rem;

	/* ------------------------------------------------------------------
	 * Radii, borders, shadows, motion
	 * ---------------------------------------------------------------- */
	--prh-radius-sm: 8px;
	--prh-radius-md: 14px;
	--prh-radius-lg: 20px;
	--prh-radius-xl: 28px;
	--prh-radius-pill: 50px;
	--prh-radius-circle: 999px;

	--prh-border: 1px solid var(--prh-grey-100);
	--prh-border-accent: 2px solid var(--prh-teal);

	--prh-shadow-sm: 0 1px 2px rgba(11, 34, 48, 0.06);
	--prh-shadow-md: 0 10px 30px rgba(11, 34, 48, 0.08);
	--prh-shadow-lg: 0 24px 56px rgba(11, 34, 48, 0.14);

	--prh-transition: 200ms cubic-bezier(0.4, 0, 0.2, 1);
	--prh-transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);

	--prh-z-header: 100;
	--prh-z-drawer: 200;
	--prh-z-overlay: 150;

	/* ------------------------------------------------------------------
	 * Gradients
	 * ---------------------------------------------------------------- */
	--prh-gradient-hero: linear-gradient(135deg, #1fb1c9 0%, #1584ac 45%, #0d5e8c 100%);
	--prh-gradient-navy: linear-gradient(180deg, #0d3448 0%, #0a2a3b 100%);
}
