/* Colours. Covers run dark, interiors run light: one palette inverted.
   The accent is a line, a mark, and a single word — it never floods an area
   larger than a headline word. Only the accent HUE changes per title.
   Panel tints sit at an 8 to 10 per cent ink profile: anything lighter drops to
   bare white or bands on a KDP Standard Color press. */
:root{
  /* — grounds — */
  --ais-cover-ground:#161826;
  --ais-paper:#ffffff;

  /* — ink (interior) — */
  --ais-ink:#292b31;
  --ais-ink-muted:#595d6c;
  --ais-line:#cfd3e5;
  --ais-hairline:#e4e7f5;

  /* — cover text — */
  --ais-cover-text:#f3f5fe;
  --ais-cover-text-body:#cfd3e5;
  --ais-cover-text-muted:#b2b6ca;
  --ais-cover-text-faint:#75798c;

  /* — neutral ramp — */
  --ais-neutral-100:#f3f5fe;
  --ais-neutral-200:#e4e7f5;
  --ais-neutral-300:#cfd3e5;
  --ais-neutral-400:#b2b6ca;
  --ais-neutral-500:#9397ab;
  --ais-neutral-600:#75798c;
  --ais-neutral-700:#595d6c;
  --ais-neutral-800:#3f424d;
  --ais-neutral-900:#292b31;

  /* — accent ramp (Blurple, the series default) — */
  --ais-accent-100:#f5f4ff;
  --ais-accent-200:#e7e5fe;
  --ais-accent-300:#d2cefd;
  --ais-accent-400:#b5abfc;
  --ais-accent-500:#968ae0;
  --ais-accent-600:#796cbf;
  --ais-accent-700:#5d5294;
  --ais-accent-800:#423a6a;
  --ais-accent-900:#2b2741;

  /* — semantic accent roles (these are what components read) — */
  --ais-accent-cover:#9184d9;   /* series line, mark and bullets on dark */
  --ais-accent-title:#b5abfc;   /* the one accented word in a cover title */
  --ais-accent-print:#5d5294;   /* interior accent: marks, labels, table heads */
  --ais-accent-deep:#423a6a;    /* sub-headings */
  --ais-accent-dot:#c3bcf6;     /* summary-card dot grid */
  --ais-accent-edge:#d2cefd;    /* summary-card border */
  --ais-tint:#e8e7fa;           /* accent-tinted panel, 8-10% ink */
  --ais-tint-2:#ebedf7;         /* neutral-tinted panel, 8-10% ink */
  --ais-glow-color:#353b80;     /* cover glow core */
}

/* Per-title accents, grouped by reading path. Fifty-eight titles across nine
   lanes (guidelines/series-roster.md). Each lane owns a hue family 40 degrees
   from its neighbours, and books inside a lane vary by a small hue drift and a
   chroma step, so two books from one path read as kin and two books from
   different paths never read alike.

   Lightness is IDENTICAL in every set, at the Blurple default: type contrast,
   glow strength and tint ink weight are guaranteed properties of the system and
   are never traded for colour variety. Only hue and chroma move.

   Prompt Engineering holds Blurple (295), the series default, for life.

   Family anchors: on-ramp 300, everyday 20, personal 140, profession 100, creator 60, founder 180, product 340, builder 260, enterprise 220.

   Set data-title-hue on any container. A title keeps its accent for life once
   assigned: hues are bound to titles, never to positions. */
[data-title-hue="onramp-01"]{
  --ais-accent-cover:oklch(0.66 0.118 300);
  --ais-accent-title:oklch(0.757 0.12 300);
  --ais-accent-print:oklch(0.452 0.092 300);
  --ais-accent-deep:oklch(0.354 0.08 300);
  --ais-accent-dot:oklch(0.812 0.095 300);
  --ais-accent-edge:oklch(0.855 0.075 300);
  --ais-tint:oklch(0.935 0.026 300);
  --ais-tint-2:oklch(0.938 0.014 300);
  --ais-glow-color:oklch(0.375 0.115 300);
}
[data-title-hue="onramp-02"]{
  --ais-accent-cover:oklch(0.66 0.118 284);
  --ais-accent-title:oklch(0.757 0.12 284);
  --ais-accent-print:oklch(0.452 0.092 284);
  --ais-accent-deep:oklch(0.354 0.08 284);
  --ais-accent-dot:oklch(0.812 0.095 284);
  --ais-accent-edge:oklch(0.855 0.075 284);
  --ais-tint:oklch(0.935 0.026 284);
  --ais-tint-2:oklch(0.938 0.014 284);
  --ais-glow-color:oklch(0.375 0.115 284);
}
[data-title-hue="onramp-03"]{
  --ais-accent-cover:oklch(0.66 0.118 295);
  --ais-accent-title:oklch(0.757 0.12 295);
  --ais-accent-print:oklch(0.452 0.092 295);
  --ais-accent-deep:oklch(0.354 0.08 295);
  --ais-accent-dot:oklch(0.812 0.095 295);
  --ais-accent-edge:oklch(0.855 0.075 295);
  --ais-tint:oklch(0.935 0.026 295);
  --ais-tint-2:oklch(0.938 0.014 295);
  --ais-glow-color:oklch(0.375 0.115 295);
}
[data-title-hue="onramp-04"]{
  --ais-accent-cover:oklch(0.66 0.118 308);
  --ais-accent-title:oklch(0.757 0.12 308);
  --ais-accent-print:oklch(0.452 0.092 308);
  --ais-accent-deep:oklch(0.354 0.08 308);
  --ais-accent-dot:oklch(0.812 0.095 308);
  --ais-accent-edge:oklch(0.855 0.075 308);
  --ais-tint:oklch(0.935 0.026 308);
  --ais-tint-2:oklch(0.938 0.014 308);
  --ais-glow-color:oklch(0.375 0.115 308);
}
[data-title-hue="onramp-05"]{
  --ais-accent-cover:oklch(0.66 0.118 316);
  --ais-accent-title:oklch(0.757 0.12 316);
  --ais-accent-print:oklch(0.452 0.092 316);
  --ais-accent-deep:oklch(0.354 0.08 316);
  --ais-accent-dot:oklch(0.812 0.095 316);
  --ais-accent-edge:oklch(0.855 0.075 316);
  --ais-tint:oklch(0.935 0.026 316);
  --ais-tint-2:oklch(0.938 0.014 316);
  --ais-glow-color:oklch(0.375 0.115 316);
}
[data-title-hue="everyday-01"]{
  --ais-accent-cover:oklch(0.66 0.118 20);
  --ais-accent-title:oklch(0.757 0.12 20);
  --ais-accent-print:oklch(0.452 0.092 20);
  --ais-accent-deep:oklch(0.354 0.08 20);
  --ais-accent-dot:oklch(0.812 0.095 20);
  --ais-accent-edge:oklch(0.855 0.075 20);
  --ais-tint:oklch(0.935 0.026 20);
  --ais-tint-2:oklch(0.938 0.014 20);
  --ais-glow-color:oklch(0.375 0.115 20);
}
[data-title-hue="everyday-02"]{
  --ais-accent-cover:oklch(0.66 0.118 13);
  --ais-accent-title:oklch(0.757 0.12 13);
  --ais-accent-print:oklch(0.452 0.092 13);
  --ais-accent-deep:oklch(0.354 0.08 13);
  --ais-accent-dot:oklch(0.812 0.095 13);
  --ais-accent-edge:oklch(0.855 0.075 13);
  --ais-tint:oklch(0.935 0.026 13);
  --ais-tint-2:oklch(0.938 0.014 13);
  --ais-glow-color:oklch(0.375 0.115 13);
}
[data-title-hue="everyday-03"]{
  --ais-accent-cover:oklch(0.66 0.118 27);
  --ais-accent-title:oklch(0.757 0.12 27);
  --ais-accent-print:oklch(0.452 0.092 27);
  --ais-accent-deep:oklch(0.354 0.08 27);
  --ais-accent-dot:oklch(0.812 0.095 27);
  --ais-accent-edge:oklch(0.855 0.075 27);
  --ais-tint:oklch(0.935 0.026 27);
  --ais-tint-2:oklch(0.938 0.014 27);
  --ais-glow-color:oklch(0.375 0.115 27);
}
[data-title-hue="everyday-04"]{
  --ais-accent-cover:oklch(0.66 0.118 7);
  --ais-accent-title:oklch(0.757 0.12 7);
  --ais-accent-print:oklch(0.452 0.092 7);
  --ais-accent-deep:oklch(0.354 0.08 7);
  --ais-accent-dot:oklch(0.812 0.095 7);
  --ais-accent-edge:oklch(0.855 0.075 7);
  --ais-tint:oklch(0.935 0.026 7);
  --ais-tint-2:oklch(0.938 0.014 7);
  --ais-glow-color:oklch(0.375 0.115 7);
}
[data-title-hue="everyday-05"]{
  --ais-accent-cover:oklch(0.66 0.118 33);
  --ais-accent-title:oklch(0.757 0.12 33);
  --ais-accent-print:oklch(0.452 0.092 33);
  --ais-accent-deep:oklch(0.354 0.08 33);
  --ais-accent-dot:oklch(0.812 0.095 33);
  --ais-accent-edge:oklch(0.855 0.075 33);
  --ais-tint:oklch(0.935 0.026 33);
  --ais-tint-2:oklch(0.938 0.014 33);
  --ais-glow-color:oklch(0.375 0.115 33);
}
[data-title-hue="everyday-06"]{
  --ais-accent-cover:oklch(0.66 0.1 20);
  --ais-accent-title:oklch(0.757 0.1017 20);
  --ais-accent-print:oklch(0.452 0.078 20);
  --ais-accent-deep:oklch(0.354 0.0678 20);
  --ais-accent-dot:oklch(0.812 0.0805 20);
  --ais-accent-edge:oklch(0.855 0.0636 20);
  --ais-tint:oklch(0.935 0.022 20);
  --ais-tint-2:oklch(0.938 0.0119 20);
  --ais-glow-color:oklch(0.375 0.0975 20);
}
[data-title-hue="everyday-07"]{
  --ais-accent-cover:oklch(0.66 0.1 13);
  --ais-accent-title:oklch(0.757 0.1017 13);
  --ais-accent-print:oklch(0.452 0.078 13);
  --ais-accent-deep:oklch(0.354 0.0678 13);
  --ais-accent-dot:oklch(0.812 0.0805 13);
  --ais-accent-edge:oklch(0.855 0.0636 13);
  --ais-tint:oklch(0.935 0.022 13);
  --ais-tint-2:oklch(0.938 0.0119 13);
  --ais-glow-color:oklch(0.375 0.0975 13);
}
[data-title-hue="everyday-08"]{
  --ais-accent-cover:oklch(0.66 0.1 27);
  --ais-accent-title:oklch(0.757 0.1017 27);
  --ais-accent-print:oklch(0.452 0.078 27);
  --ais-accent-deep:oklch(0.354 0.0678 27);
  --ais-accent-dot:oklch(0.812 0.0805 27);
  --ais-accent-edge:oklch(0.855 0.0636 27);
  --ais-tint:oklch(0.935 0.022 27);
  --ais-tint-2:oklch(0.938 0.0119 27);
  --ais-glow-color:oklch(0.375 0.0975 27);
}
[data-title-hue="everyday-09"]{
  --ais-accent-cover:oklch(0.66 0.1 7);
  --ais-accent-title:oklch(0.757 0.1017 7);
  --ais-accent-print:oklch(0.452 0.078 7);
  --ais-accent-deep:oklch(0.354 0.0678 7);
  --ais-accent-dot:oklch(0.812 0.0805 7);
  --ais-accent-edge:oklch(0.855 0.0636 7);
  --ais-tint:oklch(0.935 0.022 7);
  --ais-tint-2:oklch(0.938 0.0119 7);
  --ais-glow-color:oklch(0.375 0.0975 7);
}
[data-title-hue="everyday-10"]{
  --ais-accent-cover:oklch(0.66 0.1 33);
  --ais-accent-title:oklch(0.757 0.1017 33);
  --ais-accent-print:oklch(0.452 0.078 33);
  --ais-accent-deep:oklch(0.354 0.0678 33);
  --ais-accent-dot:oklch(0.812 0.0805 33);
  --ais-accent-edge:oklch(0.855 0.0636 33);
  --ais-tint:oklch(0.935 0.022 33);
  --ais-tint-2:oklch(0.938 0.0119 33);
  --ais-glow-color:oklch(0.375 0.0975 33);
}
[data-title-hue="everyday-11"]{
  --ais-accent-cover:oklch(0.66 0.082 20);
  --ais-accent-title:oklch(0.757 0.0834 20);
  --ais-accent-print:oklch(0.452 0.064 20);
  --ais-accent-deep:oklch(0.354 0.0556 20);
  --ais-accent-dot:oklch(0.812 0.066 20);
  --ais-accent-edge:oklch(0.855 0.0522 20);
  --ais-tint:oklch(0.935 0.018 20);
  --ais-tint-2:oklch(0.938 0.0098 20);
  --ais-glow-color:oklch(0.375 0.08 20);
}
[data-title-hue="everyday-12"]{
  --ais-accent-cover:oklch(0.66 0.082 13);
  --ais-accent-title:oklch(0.757 0.0834 13);
  --ais-accent-print:oklch(0.452 0.064 13);
  --ais-accent-deep:oklch(0.354 0.0556 13);
  --ais-accent-dot:oklch(0.812 0.066 13);
  --ais-accent-edge:oklch(0.855 0.0522 13);
  --ais-tint:oklch(0.935 0.018 13);
  --ais-tint-2:oklch(0.938 0.0098 13);
  --ais-glow-color:oklch(0.375 0.08 13);
}
[data-title-hue="everyday-13"]{
  --ais-accent-cover:oklch(0.66 0.082 27);
  --ais-accent-title:oklch(0.757 0.0834 27);
  --ais-accent-print:oklch(0.452 0.064 27);
  --ais-accent-deep:oklch(0.354 0.0556 27);
  --ais-accent-dot:oklch(0.812 0.066 27);
  --ais-accent-edge:oklch(0.855 0.0522 27);
  --ais-tint:oklch(0.935 0.018 27);
  --ais-tint-2:oklch(0.938 0.0098 27);
  --ais-glow-color:oklch(0.375 0.08 27);
}
[data-title-hue="personal-01"]{
  --ais-accent-cover:oklch(0.66 0.118 140);
  --ais-accent-title:oklch(0.757 0.12 140);
  --ais-accent-print:oklch(0.452 0.092 140);
  --ais-accent-deep:oklch(0.354 0.08 140);
  --ais-accent-dot:oklch(0.812 0.095 140);
  --ais-accent-edge:oklch(0.855 0.075 140);
  --ais-tint:oklch(0.935 0.026 140);
  --ais-tint-2:oklch(0.938 0.014 140);
  --ais-glow-color:oklch(0.375 0.115 140);
}
[data-title-hue="personal-02"]{
  --ais-accent-cover:oklch(0.66 0.118 127);
  --ais-accent-title:oklch(0.757 0.12 127);
  --ais-accent-print:oklch(0.452 0.092 127);
  --ais-accent-deep:oklch(0.354 0.08 127);
  --ais-accent-dot:oklch(0.812 0.095 127);
  --ais-accent-edge:oklch(0.855 0.075 127);
  --ais-tint:oklch(0.935 0.026 127);
  --ais-tint-2:oklch(0.938 0.014 127);
  --ais-glow-color:oklch(0.375 0.115 127);
}
[data-title-hue="personal-03"]{
  --ais-accent-cover:oklch(0.66 0.118 153);
  --ais-accent-title:oklch(0.757 0.12 153);
  --ais-accent-print:oklch(0.452 0.092 153);
  --ais-accent-deep:oklch(0.354 0.08 153);
  --ais-accent-dot:oklch(0.812 0.095 153);
  --ais-accent-edge:oklch(0.855 0.075 153);
  --ais-tint:oklch(0.935 0.026 153);
  --ais-tint-2:oklch(0.938 0.014 153);
  --ais-glow-color:oklch(0.375 0.115 153);
}
[data-title-hue="personal-04"]{
  --ais-accent-cover:oklch(0.66 0.118 133);
  --ais-accent-title:oklch(0.757 0.12 133);
  --ais-accent-print:oklch(0.452 0.092 133);
  --ais-accent-deep:oklch(0.354 0.08 133);
  --ais-accent-dot:oklch(0.812 0.095 133);
  --ais-accent-edge:oklch(0.855 0.075 133);
  --ais-tint:oklch(0.935 0.026 133);
  --ais-tint-2:oklch(0.938 0.014 133);
  --ais-glow-color:oklch(0.375 0.115 133);
}
[data-title-hue="profession-01"]{
  --ais-accent-cover:oklch(0.66 0.118 100);
  --ais-accent-title:oklch(0.757 0.12 100);
  --ais-accent-print:oklch(0.452 0.092 100);
  --ais-accent-deep:oklch(0.354 0.08 100);
  --ais-accent-dot:oklch(0.812 0.095 100);
  --ais-accent-edge:oklch(0.855 0.075 100);
  --ais-tint:oklch(0.935 0.026 100);
  --ais-tint-2:oklch(0.938 0.014 100);
  --ais-glow-color:oklch(0.375 0.115 100);
}
[data-title-hue="profession-02"]{
  --ais-accent-cover:oklch(0.66 0.118 87);
  --ais-accent-title:oklch(0.757 0.12 87);
  --ais-accent-print:oklch(0.452 0.092 87);
  --ais-accent-deep:oklch(0.354 0.08 87);
  --ais-accent-dot:oklch(0.812 0.095 87);
  --ais-accent-edge:oklch(0.855 0.075 87);
  --ais-tint:oklch(0.935 0.026 87);
  --ais-tint-2:oklch(0.938 0.014 87);
  --ais-glow-color:oklch(0.375 0.115 87);
}
[data-title-hue="profession-03"]{
  --ais-accent-cover:oklch(0.66 0.118 113);
  --ais-accent-title:oklch(0.757 0.12 113);
  --ais-accent-print:oklch(0.452 0.092 113);
  --ais-accent-deep:oklch(0.354 0.08 113);
  --ais-accent-dot:oklch(0.812 0.095 113);
  --ais-accent-edge:oklch(0.855 0.075 113);
  --ais-tint:oklch(0.935 0.026 113);
  --ais-tint-2:oklch(0.938 0.014 113);
  --ais-glow-color:oklch(0.375 0.115 113);
}
[data-title-hue="profession-04"]{
  --ais-accent-cover:oklch(0.66 0.118 93);
  --ais-accent-title:oklch(0.757 0.12 93);
  --ais-accent-print:oklch(0.452 0.092 93);
  --ais-accent-deep:oklch(0.354 0.08 93);
  --ais-accent-dot:oklch(0.812 0.095 93);
  --ais-accent-edge:oklch(0.855 0.075 93);
  --ais-tint:oklch(0.935 0.026 93);
  --ais-tint-2:oklch(0.938 0.014 93);
  --ais-glow-color:oklch(0.375 0.115 93);
}
[data-title-hue="creator-01"]{
  --ais-accent-cover:oklch(0.66 0.118 60);
  --ais-accent-title:oklch(0.757 0.12 60);
  --ais-accent-print:oklch(0.452 0.092 60);
  --ais-accent-deep:oklch(0.354 0.08 60);
  --ais-accent-dot:oklch(0.812 0.095 60);
  --ais-accent-edge:oklch(0.855 0.075 60);
  --ais-tint:oklch(0.935 0.026 60);
  --ais-tint-2:oklch(0.938 0.014 60);
  --ais-glow-color:oklch(0.375 0.115 60);
}
[data-title-hue="creator-02"]{
  --ais-accent-cover:oklch(0.66 0.118 47);
  --ais-accent-title:oklch(0.757 0.12 47);
  --ais-accent-print:oklch(0.452 0.092 47);
  --ais-accent-deep:oklch(0.354 0.08 47);
  --ais-accent-dot:oklch(0.812 0.095 47);
  --ais-accent-edge:oklch(0.855 0.075 47);
  --ais-tint:oklch(0.935 0.026 47);
  --ais-tint-2:oklch(0.938 0.014 47);
  --ais-glow-color:oklch(0.375 0.115 47);
}
[data-title-hue="creator-03"]{
  --ais-accent-cover:oklch(0.66 0.118 73);
  --ais-accent-title:oklch(0.757 0.12 73);
  --ais-accent-print:oklch(0.452 0.092 73);
  --ais-accent-deep:oklch(0.354 0.08 73);
  --ais-accent-dot:oklch(0.812 0.095 73);
  --ais-accent-edge:oklch(0.855 0.075 73);
  --ais-tint:oklch(0.935 0.026 73);
  --ais-tint-2:oklch(0.938 0.014 73);
  --ais-glow-color:oklch(0.375 0.115 73);
}
[data-title-hue="creator-04"]{
  --ais-accent-cover:oklch(0.66 0.118 53);
  --ais-accent-title:oklch(0.757 0.12 53);
  --ais-accent-print:oklch(0.452 0.092 53);
  --ais-accent-deep:oklch(0.354 0.08 53);
  --ais-accent-dot:oklch(0.812 0.095 53);
  --ais-accent-edge:oklch(0.855 0.075 53);
  --ais-tint:oklch(0.935 0.026 53);
  --ais-tint-2:oklch(0.938 0.014 53);
  --ais-glow-color:oklch(0.375 0.115 53);
}
[data-title-hue="founder-01"]{
  --ais-accent-cover:oklch(0.66 0.118 180);
  --ais-accent-title:oklch(0.757 0.12 180);
  --ais-accent-print:oklch(0.452 0.092 180);
  --ais-accent-deep:oklch(0.354 0.08 180);
  --ais-accent-dot:oklch(0.812 0.095 180);
  --ais-accent-edge:oklch(0.855 0.075 180);
  --ais-tint:oklch(0.935 0.026 180);
  --ais-tint-2:oklch(0.938 0.014 180);
  --ais-glow-color:oklch(0.375 0.115 180);
}
[data-title-hue="founder-02"]{
  --ais-accent-cover:oklch(0.66 0.118 173);
  --ais-accent-title:oklch(0.757 0.12 173);
  --ais-accent-print:oklch(0.452 0.092 173);
  --ais-accent-deep:oklch(0.354 0.08 173);
  --ais-accent-dot:oklch(0.812 0.095 173);
  --ais-accent-edge:oklch(0.855 0.075 173);
  --ais-tint:oklch(0.935 0.026 173);
  --ais-tint-2:oklch(0.938 0.014 173);
  --ais-glow-color:oklch(0.375 0.115 173);
}
[data-title-hue="founder-03"]{
  --ais-accent-cover:oklch(0.66 0.118 187);
  --ais-accent-title:oklch(0.757 0.12 187);
  --ais-accent-print:oklch(0.452 0.092 187);
  --ais-accent-deep:oklch(0.354 0.08 187);
  --ais-accent-dot:oklch(0.812 0.095 187);
  --ais-accent-edge:oklch(0.855 0.075 187);
  --ais-tint:oklch(0.935 0.026 187);
  --ais-tint-2:oklch(0.938 0.014 187);
  --ais-glow-color:oklch(0.375 0.115 187);
}
[data-title-hue="founder-04"]{
  --ais-accent-cover:oklch(0.66 0.118 167);
  --ais-accent-title:oklch(0.757 0.12 167);
  --ais-accent-print:oklch(0.452 0.092 167);
  --ais-accent-deep:oklch(0.354 0.08 167);
  --ais-accent-dot:oklch(0.812 0.095 167);
  --ais-accent-edge:oklch(0.855 0.075 167);
  --ais-tint:oklch(0.935 0.026 167);
  --ais-tint-2:oklch(0.938 0.014 167);
  --ais-glow-color:oklch(0.375 0.115 167);
}
[data-title-hue="founder-05"]{
  --ais-accent-cover:oklch(0.66 0.118 193);
  --ais-accent-title:oklch(0.757 0.12 193);
  --ais-accent-print:oklch(0.452 0.092 193);
  --ais-accent-deep:oklch(0.354 0.08 193);
  --ais-accent-dot:oklch(0.812 0.095 193);
  --ais-accent-edge:oklch(0.855 0.075 193);
  --ais-tint:oklch(0.935 0.026 193);
  --ais-tint-2:oklch(0.938 0.014 193);
  --ais-glow-color:oklch(0.375 0.115 193);
}
[data-title-hue="founder-06"]{
  --ais-accent-cover:oklch(0.66 0.1 180);
  --ais-accent-title:oklch(0.757 0.1017 180);
  --ais-accent-print:oklch(0.452 0.078 180);
  --ais-accent-deep:oklch(0.354 0.0678 180);
  --ais-accent-dot:oklch(0.812 0.0805 180);
  --ais-accent-edge:oklch(0.855 0.0636 180);
  --ais-tint:oklch(0.935 0.022 180);
  --ais-tint-2:oklch(0.938 0.0119 180);
  --ais-glow-color:oklch(0.375 0.0975 180);
}
[data-title-hue="product-01"]{
  --ais-accent-cover:oklch(0.66 0.118 340);
  --ais-accent-title:oklch(0.757 0.12 340);
  --ais-accent-print:oklch(0.452 0.092 340);
  --ais-accent-deep:oklch(0.354 0.08 340);
  --ais-accent-dot:oklch(0.812 0.095 340);
  --ais-accent-edge:oklch(0.855 0.075 340);
  --ais-tint:oklch(0.935 0.026 340);
  --ais-tint-2:oklch(0.938 0.014 340);
  --ais-glow-color:oklch(0.375 0.115 340);
}
[data-title-hue="product-02"]{
  --ais-accent-cover:oklch(0.66 0.118 327);
  --ais-accent-title:oklch(0.757 0.12 327);
  --ais-accent-print:oklch(0.452 0.092 327);
  --ais-accent-deep:oklch(0.354 0.08 327);
  --ais-accent-dot:oklch(0.812 0.095 327);
  --ais-accent-edge:oklch(0.855 0.075 327);
  --ais-tint:oklch(0.935 0.026 327);
  --ais-tint-2:oklch(0.938 0.014 327);
  --ais-glow-color:oklch(0.375 0.115 327);
}
[data-title-hue="product-03"]{
  --ais-accent-cover:oklch(0.66 0.118 353);
  --ais-accent-title:oklch(0.757 0.12 353);
  --ais-accent-print:oklch(0.452 0.092 353);
  --ais-accent-deep:oklch(0.354 0.08 353);
  --ais-accent-dot:oklch(0.812 0.095 353);
  --ais-accent-edge:oklch(0.855 0.075 353);
  --ais-tint:oklch(0.935 0.026 353);
  --ais-tint-2:oklch(0.938 0.014 353);
  --ais-glow-color:oklch(0.375 0.115 353);
}
[data-title-hue="builder-01"]{
  --ais-accent-cover:oklch(0.66 0.118 260);
  --ais-accent-title:oklch(0.757 0.12 260);
  --ais-accent-print:oklch(0.452 0.092 260);
  --ais-accent-deep:oklch(0.354 0.08 260);
  --ais-accent-dot:oklch(0.812 0.095 260);
  --ais-accent-edge:oklch(0.855 0.075 260);
  --ais-tint:oklch(0.935 0.026 260);
  --ais-tint-2:oklch(0.938 0.014 260);
  --ais-glow-color:oklch(0.375 0.115 260);
}
[data-title-hue="builder-02"]{
  --ais-accent-cover:oklch(0.66 0.118 253);
  --ais-accent-title:oklch(0.757 0.12 253);
  --ais-accent-print:oklch(0.452 0.092 253);
  --ais-accent-deep:oklch(0.354 0.08 253);
  --ais-accent-dot:oklch(0.812 0.095 253);
  --ais-accent-edge:oklch(0.855 0.075 253);
  --ais-tint:oklch(0.935 0.026 253);
  --ais-tint-2:oklch(0.938 0.014 253);
  --ais-glow-color:oklch(0.375 0.115 253);
}
[data-title-hue="builder-03"]{
  --ais-accent-cover:oklch(0.66 0.118 267);
  --ais-accent-title:oklch(0.757 0.12 267);
  --ais-accent-print:oklch(0.452 0.092 267);
  --ais-accent-deep:oklch(0.354 0.08 267);
  --ais-accent-dot:oklch(0.812 0.095 267);
  --ais-accent-edge:oklch(0.855 0.075 267);
  --ais-tint:oklch(0.935 0.026 267);
  --ais-tint-2:oklch(0.938 0.014 267);
  --ais-glow-color:oklch(0.375 0.115 267);
}
[data-title-hue="builder-04"]{
  --ais-accent-cover:oklch(0.66 0.118 247);
  --ais-accent-title:oklch(0.757 0.12 247);
  --ais-accent-print:oklch(0.452 0.092 247);
  --ais-accent-deep:oklch(0.354 0.08 247);
  --ais-accent-dot:oklch(0.812 0.095 247);
  --ais-accent-edge:oklch(0.855 0.075 247);
  --ais-tint:oklch(0.935 0.026 247);
  --ais-tint-2:oklch(0.938 0.014 247);
  --ais-glow-color:oklch(0.375 0.115 247);
}
[data-title-hue="builder-05"]{
  --ais-accent-cover:oklch(0.66 0.118 273);
  --ais-accent-title:oklch(0.757 0.12 273);
  --ais-accent-print:oklch(0.452 0.092 273);
  --ais-accent-deep:oklch(0.354 0.08 273);
  --ais-accent-dot:oklch(0.812 0.095 273);
  --ais-accent-edge:oklch(0.855 0.075 273);
  --ais-tint:oklch(0.935 0.026 273);
  --ais-tint-2:oklch(0.938 0.014 273);
  --ais-glow-color:oklch(0.375 0.115 273);
}
[data-title-hue="builder-06"]{
  --ais-accent-cover:oklch(0.66 0.1 260);
  --ais-accent-title:oklch(0.757 0.1017 260);
  --ais-accent-print:oklch(0.452 0.078 260);
  --ais-accent-deep:oklch(0.354 0.0678 260);
  --ais-accent-dot:oklch(0.812 0.0805 260);
  --ais-accent-edge:oklch(0.855 0.0636 260);
  --ais-tint:oklch(0.935 0.022 260);
  --ais-tint-2:oklch(0.938 0.0119 260);
  --ais-glow-color:oklch(0.375 0.0975 260);
}
[data-title-hue="builder-07"]{
  --ais-accent-cover:oklch(0.66 0.1 253);
  --ais-accent-title:oklch(0.757 0.1017 253);
  --ais-accent-print:oklch(0.452 0.078 253);
  --ais-accent-deep:oklch(0.354 0.0678 253);
  --ais-accent-dot:oklch(0.812 0.0805 253);
  --ais-accent-edge:oklch(0.855 0.0636 253);
  --ais-tint:oklch(0.935 0.022 253);
  --ais-tint-2:oklch(0.938 0.0119 253);
  --ais-glow-color:oklch(0.375 0.0975 253);
}
[data-title-hue="builder-08"]{
  --ais-accent-cover:oklch(0.66 0.1 267);
  --ais-accent-title:oklch(0.757 0.1017 267);
  --ais-accent-print:oklch(0.452 0.078 267);
  --ais-accent-deep:oklch(0.354 0.0678 267);
  --ais-accent-dot:oklch(0.812 0.0805 267);
  --ais-accent-edge:oklch(0.855 0.0636 267);
  --ais-tint:oklch(0.935 0.022 267);
  --ais-tint-2:oklch(0.938 0.0119 267);
  --ais-glow-color:oklch(0.375 0.0975 267);
}
[data-title-hue="builder-09"]{
  --ais-accent-cover:oklch(0.66 0.1 247);
  --ais-accent-title:oklch(0.757 0.1017 247);
  --ais-accent-print:oklch(0.452 0.078 247);
  --ais-accent-deep:oklch(0.354 0.0678 247);
  --ais-accent-dot:oklch(0.812 0.0805 247);
  --ais-accent-edge:oklch(0.855 0.0636 247);
  --ais-tint:oklch(0.935 0.022 247);
  --ais-tint-2:oklch(0.938 0.0119 247);
  --ais-glow-color:oklch(0.375 0.0975 247);
}
[data-title-hue="builder-10"]{
  --ais-accent-cover:oklch(0.66 0.1 273);
  --ais-accent-title:oklch(0.757 0.1017 273);
  --ais-accent-print:oklch(0.452 0.078 273);
  --ais-accent-deep:oklch(0.354 0.0678 273);
  --ais-accent-dot:oklch(0.812 0.0805 273);
  --ais-accent-edge:oklch(0.855 0.0636 273);
  --ais-tint:oklch(0.935 0.022 273);
  --ais-tint-2:oklch(0.938 0.0119 273);
  --ais-glow-color:oklch(0.375 0.0975 273);
}
[data-title-hue="enterprise-01"]{
  --ais-accent-cover:oklch(0.66 0.118 220);
  --ais-accent-title:oklch(0.757 0.12 220);
  --ais-accent-print:oklch(0.452 0.092 220);
  --ais-accent-deep:oklch(0.354 0.08 220);
  --ais-accent-dot:oklch(0.812 0.095 220);
  --ais-accent-edge:oklch(0.855 0.075 220);
  --ais-tint:oklch(0.935 0.026 220);
  --ais-tint-2:oklch(0.938 0.014 220);
  --ais-glow-color:oklch(0.375 0.115 220);
}
[data-title-hue="enterprise-02"]{
  --ais-accent-cover:oklch(0.66 0.118 213);
  --ais-accent-title:oklch(0.757 0.12 213);
  --ais-accent-print:oklch(0.452 0.092 213);
  --ais-accent-deep:oklch(0.354 0.08 213);
  --ais-accent-dot:oklch(0.812 0.095 213);
  --ais-accent-edge:oklch(0.855 0.075 213);
  --ais-tint:oklch(0.935 0.026 213);
  --ais-tint-2:oklch(0.938 0.014 213);
  --ais-glow-color:oklch(0.375 0.115 213);
}
[data-title-hue="enterprise-03"]{
  --ais-accent-cover:oklch(0.66 0.118 227);
  --ais-accent-title:oklch(0.757 0.12 227);
  --ais-accent-print:oklch(0.452 0.092 227);
  --ais-accent-deep:oklch(0.354 0.08 227);
  --ais-accent-dot:oklch(0.812 0.095 227);
  --ais-accent-edge:oklch(0.855 0.075 227);
  --ais-tint:oklch(0.935 0.026 227);
  --ais-tint-2:oklch(0.938 0.014 227);
  --ais-glow-color:oklch(0.375 0.115 227);
}
[data-title-hue="enterprise-04"]{
  --ais-accent-cover:oklch(0.66 0.118 207);
  --ais-accent-title:oklch(0.757 0.12 207);
  --ais-accent-print:oklch(0.452 0.092 207);
  --ais-accent-deep:oklch(0.354 0.08 207);
  --ais-accent-dot:oklch(0.812 0.095 207);
  --ais-accent-edge:oklch(0.855 0.075 207);
  --ais-tint:oklch(0.935 0.026 207);
  --ais-tint-2:oklch(0.938 0.014 207);
  --ais-glow-color:oklch(0.375 0.115 207);
}
[data-title-hue="enterprise-05"]{
  --ais-accent-cover:oklch(0.66 0.118 233);
  --ais-accent-title:oklch(0.757 0.12 233);
  --ais-accent-print:oklch(0.452 0.092 233);
  --ais-accent-deep:oklch(0.354 0.08 233);
  --ais-accent-dot:oklch(0.812 0.095 233);
  --ais-accent-edge:oklch(0.855 0.075 233);
  --ais-tint:oklch(0.935 0.026 233);
  --ais-tint-2:oklch(0.938 0.014 233);
  --ais-glow-color:oklch(0.375 0.115 233);
}
[data-title-hue="enterprise-06"]{
  --ais-accent-cover:oklch(0.66 0.1 220);
  --ais-accent-title:oklch(0.757 0.1017 220);
  --ais-accent-print:oklch(0.452 0.078 220);
  --ais-accent-deep:oklch(0.354 0.0678 220);
  --ais-accent-dot:oklch(0.812 0.0805 220);
  --ais-accent-edge:oklch(0.855 0.0636 220);
  --ais-tint:oklch(0.935 0.022 220);
  --ais-tint-2:oklch(0.938 0.0119 220);
  --ais-glow-color:oklch(0.375 0.0975 220);
}
[data-title-hue="enterprise-07"]{
  --ais-accent-cover:oklch(0.66 0.1 213);
  --ais-accent-title:oklch(0.757 0.1017 213);
  --ais-accent-print:oklch(0.452 0.078 213);
  --ais-accent-deep:oklch(0.354 0.0678 213);
  --ais-accent-dot:oklch(0.812 0.0805 213);
  --ais-accent-edge:oklch(0.855 0.0636 213);
  --ais-tint:oklch(0.935 0.022 213);
  --ais-tint-2:oklch(0.938 0.0119 213);
  --ais-glow-color:oklch(0.375 0.0975 213);
}
[data-title-hue="enterprise-08"]{
  --ais-accent-cover:oklch(0.66 0.1 227);
  --ais-accent-title:oklch(0.757 0.1017 227);
  --ais-accent-print:oklch(0.452 0.078 227);
  --ais-accent-deep:oklch(0.354 0.0678 227);
  --ais-accent-dot:oklch(0.812 0.0805 227);
  --ais-accent-edge:oklch(0.855 0.0636 227);
  --ais-tint:oklch(0.935 0.022 227);
  --ais-tint-2:oklch(0.938 0.0119 227);
  --ais-glow-color:oklch(0.375 0.0975 227);
}
[data-title-hue="enterprise-09"]{
  --ais-accent-cover:oklch(0.66 0.1 207);
  --ais-accent-title:oklch(0.757 0.1017 207);
  --ais-accent-print:oklch(0.452 0.078 207);
  --ais-accent-deep:oklch(0.354 0.0678 207);
  --ais-accent-dot:oklch(0.812 0.0805 207);
  --ais-accent-edge:oklch(0.855 0.0636 207);
  --ais-tint:oklch(0.935 0.022 207);
  --ais-tint-2:oklch(0.938 0.0119 207);
  --ais-glow-color:oklch(0.375 0.0975 207);
}

[data-cover-mode="collection"]{
  --ais-cover-ground:#f2f3f9;
  --ais-cover-text:#12141c;
  --ais-cover-text-body:#4a5066;
  --ais-cover-text-muted:#5a607a;
  --ais-cover-text-faint:#8a90a8;
  --ais-accent-title:var(--ais-accent-print);
  --ais-accent-cover:var(--ais-accent-print);
}


/* ---- site ---- */
html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:#161826;color:#fff;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:oklch(0.757 0.12 300)}
h1,h2{font-weight:500;margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hp{position:absolute;left:-9999px}
.top{position:sticky;top:0;z-index:5;background:#161826;border-bottom:1px solid #2c2f44;display:flex;justify-content:space-between;align-items:center;padding:16px 6vw;gap:20px;flex-wrap:wrap}
.brand{font-size:12px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:oklch(0.66 0.118 300)}
.top nav{display:flex;gap:28px;align-items:center;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;flex-wrap:wrap}
.top nav a{text-decoration:none;color:#c9cbd8}
.top nav a.btn{color:#161826}
.btn{display:inline-block;text-decoration:none;background:oklch(0.66 0.118 300);color:#161826;font:inherit;font-weight:600;font-size:13px;letter-spacing:.09em;text-transform:uppercase;padding:16px 26px;border-radius:6px;border:0;cursor:pointer}
.btn:hover{background:#fff;color:#161826}
.btn.small{padding:11px 18px;font-size:12px}
.btn.ghost{background:none;border:1px solid #4a4e68;color:#fff;padding:15px 26px}
.btn.ghost:hover{border-color:#fff;background:none;color:#fff}
.btn.dark{background:#161826;color:#fff}
.btn.dark:hover{background:#292b31;color:#fff}
.hero{position:relative;overflow:hidden;padding:10vh 6vw 12vh}
.hero-glow{position:absolute;top:-35%;right:-20%;width:80vw;height:80vw;background:radial-gradient(circle,oklch(0.375 0.115 316) 0%,transparent 72%);opacity:.85}
.hero-in{position:relative;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:64px;align-items:center}
.bar{width:1.05in;height:2px;background:oklch(0.66 0.118 300);margin-bottom:32px}
h1{font-size:clamp(44px,7vw,92px);line-height:.97;letter-spacing:-.028em}
.hl{color:oklch(0.757 0.12 300)}
.lead{font-size:21px;line-height:1.5;color:#c9cbd8;max-width:540px;margin:30px 0 40px}
.row{display:flex;gap:14px;flex-wrap:wrap}
.hero-covers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:600px;width:100%;justify-self:center}
.cover{display:block;text-decoration:none;aspect-ratio:1/1;background:#161826;border:1px solid #3a3d56;border-radius:6px;position:relative;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.5);color:#fff}
.cover:hover{border-color:var(--ais-accent-cover)}
.glow{position:absolute;top:-30%;right:-30%;width:100%;height:100%;background:radial-gradient(circle,var(--ais-glow-color),transparent 72%);opacity:.85}
.ct,.bt{position:absolute;left:9%;right:9%;bottom:9%;display:block}
.ck{display:block;font-size:9px;letter-spacing:.2em;text-transform:uppercase;font-weight:500}
.cn{display:block;font-size:clamp(13px,1.6vw,20px);line-height:1.02;overflow-wrap:anywhere;letter-spacing:-.02em;font-weight:500;margin-top:6px;color:var(--ais-accent-title)}
section.light{background:#fff;color:#292b31;padding:11vh 6vw}
section.mist{background:#ebedf7;color:#292b31;padding:11vh 6vw;scroll-margin-top:60px}
section.dark{padding:11vh 6vw;scroll-margin-top:60px}
#subscribe{scroll-margin-top:60px}
.wrap{max-width:1100px;margin:0 auto}.wrap.wide{max-width:1200px}.wrap.narrow{max-width:720px}
section h2{font-size:clamp(30px,4vw,44px);letter-spacing:-.015em;line-height:1.1;margin:12px 0 16px;max-width:680px}
.light .wrap>h2:first-child{margin-top:0}
.sub{font-size:18px;line-height:1.55;color:#595d6c;max-width:640px;margin:0 0 32px}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#595d6c}
.rule{width:46px;height:2px;background:oklch(0.55 0.118 300);margin-bottom:18px}
.promises{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px;margin-top:48px}
.ph{font-size:24px;letter-spacing:-.015em;font-weight:500;margin-bottom:10px}
.pb{font-size:16px;line-height:1.55;color:#595d6c}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.tab{font:inherit;font-size:14px;font-weight:600;cursor:pointer;padding:11px 18px;border-radius:6px;border:1px solid #d4d6e4;background:#fff;color:#292b31}
.tab[aria-pressed="true"]{background:var(--ais-accent-cover);border-color:var(--ais-accent-cover);color:#161826}
.js .panel[hidden]{display:none}
.panel{margin-bottom:28px}
.lane-card{background:#fff;border:1px solid #d4d6e4;border-radius:6px;padding:28px 32px;margin-bottom:28px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
.lane-card>div:first-child{max-width:640px}
.lane-t{font-size:26px;letter-spacing:-.015em;font-weight:500;margin-bottom:6px}
.lane-b{font-size:16px;line-height:1.5;color:#595d6c}
.books{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}
.book{display:block;text-decoration:none;color:#fff}
.bc{display:block;aspect-ratio:1/1;background:#161826;border-radius:6px;position:relative;overflow:hidden;box-shadow:0 18px 50px rgba(22,24,38,.22)}
.bn{display:block;font-size:22px;line-height:1;letter-spacing:-.02em;font-weight:500;margin-top:8px;color:var(--ais-accent-title)}
.bs{display:block;font-size:14px;line-height:1.4;color:#595d6c;margin-top:12px}
.bl{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:#292b31;margin-top:10px}
.soon{background:#e8e7fa;border:1px solid #d4d6e4;border-radius:6px;padding:40px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.soon>div{max-width:560px}
.soon-h{font-size:28px;letter-spacing:-.015em;font-weight:500;margin:10px 0 8px}
.soon-p{font-size:16px;line-height:1.5;color:#595d6c}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;align-items:stretch}
.step{border:1px solid #d4d6e4;border-radius:6px;padding:28px}
.step.on{border-color:var(--ais-accent-edge);background:#e8e7fa}
.step-t{font-size:28px;letter-spacing:-.015em;font-weight:500;margin:10px 0}
.step-b{font-size:15px;line-height:1.5;color:#595d6c}
.sub-form{display:flex;gap:12px;flex-wrap:wrap}
.sub-form input[type=email]{flex:1 1 260px;font:inherit;font-size:16px;padding:15px 16px;border:1px solid #d4d6e4;border-radius:6px;color:#292b31;background:#fff}
.sub-form input:focus{outline:2px solid oklch(0.55 0.118 300);outline-offset:2px}
.author-h{font-size:44px;margin:16px 0 20px}
.author-p{font-size:19px;line-height:1.55;color:#c9cbd8;margin:0 0 36px}
footer{border-top:1px solid #2c2f44;padding:28px 6vw;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:#9aa0b8}

/* ---- blog ---- */
.brand{text-decoration:none}
.article{padding-top:8vh}
.article h1{font-size:clamp(32px,5vw,52px);line-height:1.08;letter-spacing:-.02em;margin:14px 0 28px;color:#161826}
.article .eyebrow a{color:inherit}
.article a{color:#5d5294}
.article .btn{color:#fff}
.prose{font-size:18px;line-height:1.7;color:#292b31}
.prose p{margin:0 0 18px}
.prose h2{font-size:26px;line-height:1.2;margin:40px 0 12px;max-width:none}
.prose ul,.prose ol{padding-left:24px;margin:0 0 18px}
.prose li{margin-bottom:8px}
.bookcard{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center;background:#ebedf7;border:1px solid #d4d6e4;border-radius:6px;padding:28px;margin:48px 0}
.bookcard .bc{width:200px;text-decoration:none;color:#fff}
.bookcard p{font-size:16px;line-height:1.55;margin:10px 0}
.bookcard .bsub{color:#595d6c;font-size:15px}
.linklist{list-style:none;padding:0;margin:0 0 40px;display:grid;gap:14px}
.linklist li{border:1px solid #d4d6e4;border-radius:6px;padding:16px 20px}
.linklist a{text-decoration:none}
.linklist strong{display:block;font-weight:600;margin-bottom:4px}
.linklist span{display:block;font-size:15px;line-height:1.5;color:#595d6c}
.fine{font-size:13px;line-height:1.5;color:#595d6c;margin-top:40px}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:32px}
.post{display:flex;flex-direction:column;text-decoration:none;color:#292b31;border:1px solid #d4d6e4;border-top:3px solid var(--ais-accent-cover);border-radius:6px;padding:24px;background:#fff}
.article .post{color:#292b31}
.post:hover{border-color:var(--ais-accent-cover)}
.pt{display:block;font-size:21px;line-height:1.25;font-weight:500;letter-spacing:-.01em;margin:10px 0}
.ps{display:block;font-size:15px;line-height:1.5;color:#595d6c}
@media (max-width:560px){.bookcard{grid-template-columns:1fr}.bookcard .bc{width:160px}}
.article .sub{max-width:none}
.post .bl{margin-top:auto;padding-top:18px}
