/* Spark: Meralis case layout with a warm coral identity. */
body.spark { --brand:#e8443a; --soft:#fff0ee; --line:#efe6ea; }
.spark h1, .spark h2, .spark h3 { font-family:"Plus Jakarta Sans", Inter, sans-serif; }
.spark .spark-brand b { width:36px; height:36px; border-radius:11px; background:linear-gradient(120deg,#ff9a3c,#ff5a4e 45%,#ff3d7f); color:#fff; font-size:17px; }
.spark h1 em, .spark .decisions-heading h2 em { background:linear-gradient(90deg,#ff9a3c,#ff3d7f); -webkit-background-clip:text; background-clip:text; color:transparent; }
.spark .primary-link { background:linear-gradient(120deg,#ff9a3c,#ff5a4e 45%,#ff3d7f); }
.spark .hero-showcase { background:radial-gradient(ellipse at 75% 0,#ffc9b8,transparent 64%),#fff1ec; }
.spark .hero-showcase .device-figure { background:transparent; }
.spark .screen-stage { background:#fff6f3; }
.spark .model-after { background:var(--soft); }
.spark-roles { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:-20px auto 40px; }
.spark-roles article { padding:24px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.spark-roles i { display:grid; place-items:center; width:46px; height:46px; margin-bottom:16px; border-radius:14px; background:#fff0ee; font-size:22px; font-style:normal; }
.spark-roles span { display:block; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.spark-roles h3 { margin:6px 0 8px; font-size:18px; }
.spark-roles p { margin:0; color:var(--body); font-size:13px; line-height:1.6; }
@media (max-width:900px) { .spark-roles { grid-template-columns:1fr; margin-top:0; } }
