/* Karigar — type. Sizes are the file's literal values; nothing is rounded. */
:root{
  /* families */
  /* Satoshi and Plus Jakarta Sans are the real faces, served remotely (see tokens/fonts.css).
   * The system stacks below resolve to Apple's SF faces natively on Apple hardware and to the
   * platform UI face elsewhere — no third-party family is substituted for them.
   *
   * --font-grotesk is the stack for the three e-commerce primitives (Field, Checkbox, Button),
   * which Karigar.fig sets in Neue Haas Grotesk Text Pro. That face is licensed and no binary
   * was supplied, so the token does NOT name it — it resolves to Satoshi, the face every screen
   * Karigar actually ships already uses. Send the .woff2 and this one line points back at it. */
  --font-ui:'Satoshi',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --font-concierge:'Plus Jakarta Sans','Satoshi',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --font-system:-apple-system,BlinkMacSystemFont,system-ui,'Segoe UI',sans-serif;
  --font-ios-chrome:-apple-system,BlinkMacSystemFont,system-ui,'Segoe UI',sans-serif;
  --font-grotesk:'Satoshi',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --font-wordmark:'Satoshi',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;

  /* weights as used in the file */
  --fw-light:300; /* @kind font */
  --fw-regular:400; /* @kind font */
  --fw-medium:500; /* @kind font */
  --fw-semibold:600; /* @kind font */
  --fw-bold:700; /* @kind font */

  /* size scale — every value that appears in Karigar.fig */
  --fs-display-36:36px;
  --fs-display-32:32px;
  --fs-display-26:26px;
  --fs-24:24px;
  --fs-22:22px;
  --fs-20:20px;
  --fs-19:19px;
  --fs-18:18px;
  --fs-16:16px;
  --fs-15:15px;
  --fs-14:14px;
  --fs-13:13px;
  --fs-12:12px;
  --fs-11:11px;
  --fs-10:10px;
  --fs-9:9px;
  --fs-8-5:8.5px;
  --fs-8-2:8.2px;

  /* tracking — the concierge layer is aggressively letter-spaced */
  --ls-wordmark:3px;
  --ls-cta:2.53px;
  --ls-tagline:2.34px;
  --ls-label:2.1px;
  --ls-eyebrow:2px;
  --ls-section:1.98px;
  --ls-divider:1.8px;
  --ls-ribbon:1.5px;
  --ls-micro:1.474px;
  --ls-chart:1px;
  --ls-country:0.78px;
  --ls-tab:0.36px;
  --ls-tight:-0.15px;

  /* line heights */
  --lh-flush:100%; /* @kind font */
  --lh-body:16.926px;
  --lh-legal:16.15px;
  --lh-field:25px;
  --lh-20:20px;
}

.k-display{font-family:var(--font-concierge);font-weight:var(--fw-bold);font-size:var(--fs-display-36);line-height:var(--lh-flush);color:var(--text-ink)}
.k-greeting{font-family:var(--font-concierge);font-weight:var(--fw-regular);font-style:italic;font-size:var(--fs-display-32);line-height:var(--lh-flush);color:var(--text-ink)}
.k-greeting-lead{font-family:var(--font-concierge);font-weight:var(--fw-regular);font-size:var(--fs-22);line-height:var(--lh-flush);color:var(--text-warm)}
.k-price-lg{font-family:var(--font-concierge);font-weight:var(--fw-bold);font-size:var(--fs-display-26);line-height:var(--lh-flush);color:var(--text-ink)}
.k-title{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-24);line-height:var(--lh-flush);color:var(--text-primary)}
.k-rate{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-24);line-height:var(--lh-flush);color:var(--text-primary)}
.k-segment{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-20);line-height:var(--lh-flush);color:var(--text-primary)}
.k-row{font-family:var(--font-ui);font-weight:var(--fw-medium);font-size:var(--fs-20);line-height:var(--lh-flush);color:var(--text-primary)}
.k-body{font-family:var(--font-ui);font-weight:var(--fw-regular);font-size:var(--fs-16);line-height:var(--lh-field);color:var(--text-primary)}
.k-button{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-14);line-height:var(--lh-flush)}
.k-chip{font-family:var(--font-ui);font-weight:var(--fw-medium);font-size:var(--fs-14);line-height:var(--lh-flush)}
.k-meta{font-family:var(--font-ui);font-weight:var(--fw-regular);font-size:var(--fs-12);line-height:var(--lh-flush);color:var(--text-muted)}
.k-field-label{font-family:var(--font-ui);font-weight:var(--fw-regular);font-size:var(--fs-12);line-height:15px;color:var(--text-muted)}
.k-eyebrow{font-family:var(--font-concierge);font-weight:var(--fw-bold);font-size:var(--fs-12);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;line-height:var(--lh-flush);color:var(--text-warm-muted)}
.k-eyebrow-gold{font-family:var(--font-system);font-weight:var(--fw-bold);font-size:var(--fs-8-2);letter-spacing:var(--ls-micro);text-transform:uppercase;line-height:var(--lh-flush);color:var(--text-accent)}
.k-tagline{font-family:var(--font-system);font-weight:var(--fw-medium);font-size:var(--fs-13);letter-spacing:var(--ls-tagline);text-transform:uppercase;line-height:var(--lh-flush);color:rgba(28,24,22,0.52)}
.k-cta-label{font-family:var(--font-grotesk);font-weight:var(--fw-bold);font-size:11.5px;letter-spacing:var(--ls-cta);text-transform:uppercase;line-height:var(--lh-flush);color:var(--action-on-primary)}
.k-card-title{font-family:var(--font-system);font-weight:var(--fw-bold);font-size:var(--fs-15);letter-spacing:var(--ls-tight);line-height:18px;color:var(--text-ink)}
.k-card-copy{font-family:var(--font-system);font-weight:var(--fw-regular);font-size:10.9px;letter-spacing:0.109px;line-height:var(--lh-body);color:rgba(28,24,22,0.52)}
.k-legal{font-family:var(--font-system);font-weight:var(--fw-regular);font-size:var(--fs-8-5);letter-spacing:0.935px;text-transform:uppercase;line-height:var(--lh-legal);color:rgba(28,24,22,0.38)}
.k-wordmark{font-family:var(--font-concierge);font-weight:var(--fw-bold);font-size:var(--fs-22);letter-spacing:var(--ls-wordmark);line-height:var(--lh-flush);color:var(--k-ink-brown)}
.k-tab-label{font-family:var(--font-concierge);font-weight:var(--fw-medium);font-size:var(--fs-10);line-height:var(--lh-flush)}
.k-ios-time{font-family:var(--font-ios-chrome);font-weight:600;font-size:17.07px;line-height:22.096px;color:var(--k-ink-900)}
