/* ==========================================================================
   Rajdeep Roy — Signal : Design tokens
   --------------------------------------------------------------------------
   Single source of truth for colour, type and spacing.
   These mirror Kadence > Customizer > Global Colors. Change a value in the
   Customizer and it flows here through the --global-palette variables below;
   change it here and it flows to every component. Do not hard-code hex values
   in page content or in Additional CSS — reference these variables instead.
   ========================================================================== */

:root {
	/* --- Brand palette -------------------------------------------------- */
	--rr-charcoal:        #16181B; /* dark section backgrounds            */
	--rr-panel:           #212427; /* cards sitting on dark backgrounds    */
	--rr-line-dark:       #35393E; /* hairlines on dark                    */
	--rr-off-white:       #F4F6F9; /* light section backgrounds            */
	--rr-paper:           #FFFFFF; /* cards on light                       */
	--rr-line:            #E3E8EF; /* hairlines on light                   */
	--rr-line-strong:     #DCE2EA; /* dividers, input borders              */

	--rr-ink:             #16181B; /* body text on light                   */
	--rr-ink-soft:        #565B61; /* secondary text on light              */
	--rr-ink-prose:       #3A3F45; /* long-form body copy                  */
	--rr-on-dark:         #ECEEEF; /* body text on dark                    */
	--rr-on-dark-soft:    #9BA1A6; /* secondary text on dark               */

	--rr-signal:          #3ECF7E; /* primary CTA + accents                */
	/* Darkened from #249A5C on 19 Sep 2026. The old value measured 3.59:1 on
	   white — below the WCAG AA 4.5:1 threshold for body text — and it was the
	   site-wide link colour and the text colour in eighteen component rules.
	   This value measures 5.36:1. The bright --rr-signal is untouched, so dark
	   surfaces and buttons look exactly as before. To revert, put #249A5C back. */
	--rr-signal-dim:      #1B7A46; /* icons, secondary accents, links      */
	--rr-signal-ink:      #1B7A46; /* alias kept: green for TEXT on light   */
	--rr-alert:           #FF6B4A; /* risk & warning callouts ONLY         */

	/* Tints derived from the accents — keep these in sync if you change
	   --rr-signal or --rr-alert. */
	--rr-signal-tint:     rgba(62, 207, 126, 0.13);
	--rr-signal-tint-soft:rgba(62, 207, 126, 0.08);
	--rr-alert-tint:      rgba(255, 107, 74, 0.13);

	/* --- Typography ------------------------------------------------------ */
	--rr-font-display: 'Space Grotesk', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
	--rr-font-body:    'IBM Plex Sans', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
	--rr-font-mono:    'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

	--rr-text-xs:     11px;
	--rr-text-sm:     13.5px;
	--rr-text-base:   15px;
	--rr-text-md:     16.5px;
	--rr-text-lg:     17px;
	--rr-h3:          clamp(16px, 1.4vw, 18px);
	--rr-h2:          clamp(26px, 3vw, 34px);
	--rr-h1:          clamp(30px, 4.2vw, 46px);
	--rr-h1-home:     clamp(34px, 5vw, 54px);

	--rr-tracking-mono: 0.08em;

	/* --- Space & shape --------------------------------------------------- */
	--rr-section-y:   80px;
	--rr-section-y-sm:56px;
	--rr-gap:         24px;
	--rr-gap-sm:      16px;
	--rr-radius:      6px;
	--rr-radius-lg:   10px;
	--rr-radius-pill: 20px;
	--rr-gutter:      32px;   /* side gutter, narrowed on small screens */
	--rr-maxw:        1180px;
	--rr-maxw-narrow: 1100px;
	--rr-prose:       680px;

	--rr-shadow-card: 0 8px 24px rgba(22, 24, 27, 0.07);

	/* --- Motion ---------------------------------------------------------- */
	--rr-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
	--rr-dur:  0.15s;
}

/* --------------------------------------------------------------------------
   Bridge to Kadence Global Colors.
   Kadence writes its palette to --global-palette1..9. We re-point our own
   tokens at those variables so editing the palette in the Customizer updates
   the whole site. If you would rather drive everything from this file, delete
   this block.
   -------------------------------------------------------------------------- */
:root {
	--global-palette1: var(--rr-signal);
	--global-palette2: var(--rr-signal-dim);
	--global-palette3: var(--rr-ink);
	--global-palette4: var(--rr-ink-prose);
	--global-palette5: var(--rr-ink-soft);
	--global-palette6: var(--rr-line-strong);
	/* Kadence treats 7-9 as BACKGROUNDS, lightest last — palette9 is what it
	   paints .site with. Mapping charcoal there turned the whole page dark
	   behind the sections. Backgrounds stay light; the dark surfaces are our
	   own --rr-* tokens, applied by the component styles. */
	--global-palette7: var(--rr-off-white);
	--global-palette8: var(--rr-paper);
	--global-palette9: var(--rr-paper);

	--global-palette-highlight:    var(--rr-signal-dim);
	--global-palette-highlight-alt:var(--rr-signal);
	--global-palette-btn-bg:       var(--rr-signal);
	--global-palette-btn:          var(--rr-charcoal);
	--global-palette-btn-bg-hover: var(--rr-signal-dim);
	--global-palette-btn-hover:    var(--rr-paper);

	--global-content-width:      var(--rr-maxw);
	--global-content-narrow-width: var(--rr-maxw-narrow);
}

/* Respect the visitor's motion preference everywhere. */
@media (prefers-reduced-motion: reduce) {
	:root { --rr-dur: 0.01ms; }
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
