/* ==========================================================================
   Ignite brand layer — from the Kasasa "Everyday Rewards" slick (V1-4555).
   Loaded last by both the attendee and planner experiences.

   Type:    Plus Jakarta Sans (bundled in /assets/fonts, SIL OFL).
            Headlines 700–800, tight tracking. Body 400. No serif italics.
   Colour:  Kasasa black, Kasasa red, lava orange, cool greys, white.
   Graphic: grainy red→orange "lava" shapes, solid red tab labels,
            solid red call-to-action blocks, square corners, thin rules.
   ========================================================================== */

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url('/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2') format('woff2-variations'),
       url('/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url('/assets/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2') format('woff2-variations'),
       url('/assets/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  /* Brand palette (sampled from the slick) */
  --k-black: #181615;
  --k-black-2: #211e1d;
  --k-black-3: #2b2726;
  --k-red: #d71920;
  --k-red-hover: #ea2a2f;
  --k-red-deep: #a10e16;
  --k-ember: #ea3a2d;
  --k-orange: #ff5921;
  --k-orange-soft: #ff8a5c;
  --k-white: #ffffff;
  --k-grey-50: #f8f8f8;
  --k-grey-100: #eaeaea;
  --k-grey-300: #c9c6c4;
  --k-grey-500: #8a8583;
  --k-grey-700: #55504e;

  --k-font: 'Plus Jakarta Sans', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;

  /* Lava gradients — the static counterpart to the animated lava. */
  --k-lava: radial-gradient(ellipse at 22% 70%, #ff5921 0%, transparent 55%),
            radial-gradient(ellipse at 80% 20%, #ff5921cc 0%, transparent 50%),
            linear-gradient(135deg, #e8332b, #d71920 60%, #c4141c);
  /* Print-style grain, drawn once as an SVG turbulence tile. */
  --k-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

html { font-family: var(--k-font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body, button, input, select, textarea { font-family: var(--k-font); }

/* Serif italics are retired: an accent word is set in the same face, in colour. */
em { font-family: inherit; font-style: normal; font-weight: inherit; }

/* The red tab label — the slick's "EVERYDAY REWARDS" block. */
.k-tab {
  display: inline-block;
  padding: 7px 12px 6px;
  background: var(--k-red);
  color: var(--k-white);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 1.2;
  text-transform: uppercase;
}

/* Grainy lava shape — use on any decorative element. */
.k-lava {
  background: var(--k-grain), var(--k-lava);
  background-size: 180px 180px, auto;
  background-blend-mode: soft-light, normal;
}
