:root {
  --slm-bg: #160b37;
  --slm-bg-2: #221055;
  --slm-bg-3: #32156e;
  --slm-surface: rgba(255, 255, 255, .08);
  --slm-surface-2: rgba(255, 255, 255, .12);
  --slm-surface-3: rgba(255, 255, 255, .18);
  --slm-border: rgba(255, 255, 255, .14);
  --slm-border-2: rgba(255, 255, 255, .22);
  --slm-ink: #f7f4ff;
  --slm-ink-soft: #d8d0f8;
  --slm-ink-muted: #b9b2d7;
  --slm-cyan: #21d4fd;
  --slm-pink: #ff69d8;
  --slm-violet: #8b5cf6;
  --slm-gold: #ffd166;
  --slm-gold-2: #ffbf47;
  --slm-shadow: 0 24px 60px -30px rgba(0, 0, 0, .65);
  --slm-shadow-soft: 0 16px 34px -22px rgba(0, 0, 0, .55);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body.slm-body {
  margin: 0;
  background:
    radial-gradient(900px 420px at 0% 0%, rgba(255, 105, 216, .18), transparent 60%),
    radial-gradient(700px 380px at 100% 5%, rgba(33, 212, 253, .16), transparent 55%),
    linear-gradient(180deg, #13072d 0%, #241352 100%);
  color: var(--slm-ink);
  font: 16px/1.6 "Nunito Sans", system-ui, sans-serif;
  max-width: 100%;
  overflow-x: hidden;
}

img, svg { display: block; max-width: 100%; }

a { color: var(--slm-cyan); text-decoration: none; }

a:hover,
a:focus-visible { color: #fff; }

.slm-container {
  width: min(100% - 32px, 1180px);
  margin-inline: auto;
}

.slm-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(19, 7, 45, .85);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--slm-border);
}

.slm-header__inner {
  width: min(100% - 32px, 1280px);
  margin-inline: auto;
  min-height: 72px;
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  gap: 18px;
  align-items: center;
}

.slm-logo,
.slm-logo__text,
.slm-nav,
.slm-header__cta-group,
.slm-cta-row,
.slm-store-strip__inner,
.slm-phone__chrome,
.slm-phone__coins,
.slm-phone__bottom-nav,
.slm-toc__nav,
.slm-footer__bottom {
  display: flex;
}

.slm-logo {
  align-items: center;
  gap: 10px;
  color: var(--slm-ink);
}

.slm-logo__text {
  align-items: baseline;
  gap: 8px;
  font-family: "Fredoka", system-ui, sans-serif;
  font-weight: 700;
}

.slm-logo__text-pill {
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(255, 105, 216, .15);
  color: var(--slm-pink);
  font-size: 11px;
  letter-spacing: .08em;
}

.slm-nav {
  justify-self: end;
  gap: 20px;
}

.slm-nav a,
.slm-footer__group a { color: var(--slm-ink-soft); }

.slm-header__cta-group {
  align-items: center;
  gap: 12px;
}

.slm-header__cta,
.slm-btn--primary,
.slm-mobile__cta,
.slm-footer__cta-card a {
  background: linear-gradient(135deg, var(--slm-cyan), var(--slm-pink));
  color: #190c3d;
}

.slm-header__cta,
.slm-btn,
.slm-mobile__cta,
.slm-footer__cta-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 11px 18px;
  font-weight: 800;
  box-shadow: 0 10px 24px -16px rgba(33, 212, 253, .8);
}

.slm-btn { transition: transform .2s ease, box-shadow .2s ease; }

.slm-btn:hover,
.slm-header__cta:hover,
.slm-platform-card:hover { transform: translateY(-2px); }

.slm-burger {
  display: none;
  width: 40px;
  height: 40px;
  border: 1px solid var(--slm-border);
  border-radius: 10px;
  background: var(--slm-surface);
  padding: 0;
}

.slm-burger span {
  display: block;
  width: 18px;
  height: 2px;
  background: #fff;
  margin: 4px auto;
}

.slm-mobile {
  position: fixed;
  inset: 0;
  z-index: 25;
  padding: 28px 22px;
  background: rgba(17, 8, 39, .97);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.slm-mobile[hidden] { display: none !important; }

.slm-mobile a {
  display: block;
  padding: 14px 16px;
  border-radius: 14px;
  background: var(--slm-surface);
  color: var(--slm-ink);
}

.slm-mobile__close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--slm-border);
  background: var(--slm-surface);
  color: #fff;
  font-size: 24px;
}

.slm-main,
.slm-section,
.slm-page-hero,
.slm-error { display: block; }

.slm-hero,
.slm-section,
.slm-page-hero { padding: 56px 0; }

.slm-section--soft { background: rgba(255, 255, 255, .04); }

.slm-hero__grid,
.slm-page-hero__grid,
.slm-feature-grid,
.slm-footer__top,
.slm-footer__columns,
.slm-evidence-board,
.slm-disclaimer,
.slm-social-note,
.slm-carousel__track {
  display: grid;
  gap: 24px;
}

.slm-hero__grid {
  grid-template-columns: minmax(310px, 390px) 1fr;
  align-items: center;
}

.slm-phone,
.slm-sidecard,
.slm-evidence-card,
.slm-game-card,
.slm-toc,
.slm-rich-content,
.slm-faq details,
.slm-footer__cta-card,
.slm-writer-card,
.slm-rtp-note,
.slm-social-note {
  background: var(--slm-surface);
  border: 1px solid var(--slm-border);
  border-radius: 24px;
  box-shadow: var(--slm-shadow);
}

.slm-phone {
  padding: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.04));
  border-radius: 34px;
  position: relative;
  overflow: hidden;
}

.slm-phone::before {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  pointer-events: none;
}

.slm-phone__chrome {
  justify-content: space-between;
  align-items: center;
  padding: 4px 8px 12px;
  color: var(--slm-ink-soft);
  font: 700 12px/1 "Fredoka", sans-serif;
}

.slm-phone__speaker {
  width: 96px;
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.2);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.slm-phone__screen {
  display: grid;
  gap: 16px;
  padding: 18px;
  min-height: 620px;
  border-radius: 28px;
  background:
    radial-gradient(260px 180px at 50% 0%, rgba(255, 209, 102, .14), transparent 70%),
    linear-gradient(180deg, #2a1460 0%, #1a0e42 100%);
}

.slm-phone__coins {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 20px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.08);
}

.slm-phone__coins strong {
  font: 700 42px/1 "Fredoka", sans-serif;
  color: var(--slm-gold);
}

.slm-phone__label,
.slm-phone__slot-tag,
.slm-hero__eyebrow,
.slm-section__eyebrow,
.slm-social-note__badge,
.slm-evidence-card__status,
.slm-game-card__tag {
  display: inline-flex;
  width: fit-content;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(33, 212, 253, .12);
  color: var(--slm-cyan);
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.slm-phone__slot-card {
  display: grid;
  gap: 10px;
  padding: 16px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(18, 8, 45, .72);
}

.slm-phone__slot-card strong {
  font: 700 26px/1 "Fredoka", sans-serif;
}

.slm-phone__slot-card--pink {
  background: linear-gradient(135deg, rgba(255,105,216,.22), rgba(124,58,237,.12));
}

.slm-phone__slot-card--cyan {
  background: linear-gradient(135deg, rgba(33,212,253,.22), rgba(33,212,253,.08));
}

.slm-phone__slot-card--gold {
  background: linear-gradient(135deg, rgba(255,209,102,.22), rgba(139,92,246,.12));
}

.slm-phone__slot-card--pink strong { color: var(--slm-pink); }
.slm-phone__slot-card--cyan strong { color: var(--slm-cyan); }
.slm-phone__slot-card--gold strong { color: var(--slm-gold); }

.slm-phone__bottom-nav {
  justify-content: space-between;
  gap: 10px;
  margin-top: auto;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  color: var(--slm-ink-soft);
  font: 700 12px/1 "Fredoka", sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.slm-hero h1,
.slm-page-hero h1,
.slm-section__title,
.slm-cta-banner h2,
.slm-error h1 {
  margin: 0 0 14px;
  font: 700 clamp(2rem, 4vw, 4rem)/1.05 "Fredoka", sans-serif;
}

.slm-hero h1 span,
.slm-page-hero h1 span { color: var(--slm-gold); }

.slm-cta-row {
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 22px;
}

.slm-btn--ghost {
  background: transparent;
  color: var(--slm-ink);
  border: 1px solid var(--slm-border);
  box-shadow: none;
}

.slm-evidence-board {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 28px;
}

.slm-evidence-board__header {
  grid-column: 1 / -1;
  padding: 0 4px;
}

.slm-evidence-card,
.slm-game-card,
.slm-sidecard,
.slm-toc,
.slm-rich-content,
.slm-faq details,
.slm-writer-card,
.slm-social-note,
.slm-rtp-note {
  padding: 20px;
}

.slm-evidence-card {
  position: relative;
  overflow: hidden;
}

.slm-evidence-card::after {
  content: "";
  position: absolute;
  inset: auto -20px -20px auto;
  width: 80px;
  height: 80px;
  border-radius: 999px;
  opacity: .2;
}

.slm-evidence-card--google::after { background: var(--slm-cyan); }
.slm-evidence-card--apple::after { background: var(--slm-pink); }
.slm-evidence-card--site::after { background: var(--slm-violet); }
.slm-evidence-card--microsoft::after { background: var(--slm-gold); }

.slm-evidence-card__source,
.slm-footer__brand {
  color: var(--slm-cyan);
  font-weight: 800;
}

.slm-evidence-card__note {
  color: var(--slm-ink-soft);
  margin: 10px 0 14px;
}

.slm-evidence-card__status {
  background: rgba(255,255,255,.08);
  color: var(--slm-gold);
}

.slm-store-strip {
  border-block: 1px solid var(--slm-border);
  background: rgba(255, 255, 255, .04);
}

.slm-store-strip__inner {
  gap: 14px;
  overflow: auto;
  padding: 14px 0;
}

.slm-store-pill {
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid var(--slm-border-2);
  font-family: "Fredoka", sans-serif;
  color: var(--slm-ink-soft);
  white-space: nowrap;
  background: rgba(255,255,255,.04);
}

.slm-store-pill--google { box-shadow: inset 0 0 0 1px rgba(33,212,253,.16); }
.slm-store-pill--apple { box-shadow: inset 0 0 0 1px rgba(255,105,216,.16); }
.slm-store-pill--web { box-shadow: inset 0 0 0 1px rgba(139,92,246,.16); }
.slm-store-pill--microsoft { box-shadow: inset 0 0 0 1px rgba(255,209,102,.16); }

.slm-carousel { overflow: hidden; }

.slm-carousel__track,
.slm-feature-grid,
.slm-footer__columns {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.slm-game-card {
  position: relative;
  display: grid;
  gap: 10px;
  min-height: 220px;
  background: linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.04));
}

.slm-game-card__icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--slm-pink), var(--slm-cyan));
  color: #1a0d3d;
  font: 800 18px/1 "Fredoka", sans-serif;
}

.slm-game-card__title {
  font: 700 22px/1.1 "Fredoka", sans-serif;
}

.slm-game-card__meta {
  color: var(--slm-ink-soft);
}

.slm-social-note {
  grid-template-columns: 180px 1fr;
  align-items: start;
  margin-bottom: 24px;
  background: linear-gradient(135deg, rgba(255,105,216,.12), rgba(33,212,253,.06));
}

.slm-social-note__badge {
  justify-self: start;
  background: rgba(255,255,255,.08);
  color: var(--slm-gold);
}

.slm-social-note__body { display: grid; gap: 14px; }

.slm-social-note__list {
  margin: 0;
  padding-left: 18px;
  color: var(--slm-ink-soft);
}

.slm-feature-grid {
  gap: 18px;
}

.slm-feature-grid article {
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.05);
  border: 1px solid var(--slm-border);
}

.slm-feature-grid strong {
  display: block;
  margin-bottom: 10px;
  font: 700 18px/1.2 "Fredoka", sans-serif;
}

.slm-rtp-note {
  display: grid;
  gap: 22px;
  background: linear-gradient(180deg, rgba(255,209,102,.12), rgba(255,255,255,.03));
}

.slm-rtp-note__table {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.slm-rtp-note__table div {
  padding: 18px;
  border-radius: 20px;
  background: rgba(255,255,255,.05);
  border: 1px solid var(--slm-border);
}

.slm-rtp-note__table strong {
  display: block;
  margin-bottom: 8px;
  font: 700 18px/1.2 "Fredoka", sans-serif;
}

.slm-rtp-note__warning {
  margin: 0;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(24, 12, 50, .65);
  border: 1px solid rgba(255,209,102,.2);
  color: var(--slm-ink-soft);
}

.slm-toc { margin-bottom: 20px; }

.slm-toc__nav {
  flex-wrap: wrap;
  gap: 10px;
}

.slm-toc__nav a {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: var(--slm-ink);
}

.slm-rich-content { color: var(--slm-ink-soft); }

.slm-rich-content h2,
.slm-rich-content h3 {
  color: var(--slm-ink);
  font-family: "Fredoka", sans-serif;
}

.slm-faq { display: grid; gap: 14px; }

.slm-faq summary { cursor: pointer; font-weight: 800; }

.slm-cta-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-top: 28px;
  padding: 22px;
  border-radius: 24px;
  background: rgba(255,255,255,.06);
  border: 1px solid var(--slm-border);
}

.slm-app-band__head { margin-bottom: 22px; }

.slm-platform-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.slm-platform-card {
  position: relative;
  display: grid;
  grid-template-columns: 112px 1fr;
  gap: 18px;
  align-items: stretch;
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(160deg, #1f1052 0%, #160a3d 100%);
  border: 1px solid rgba(255, 255, 255, .12);
  box-shadow: var(--slm-shadow);
  color: var(--slm-ink);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.slm-platform-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent 55%, rgba(255, 255, 255, .06));
  pointer-events: none;
}

.slm-platform-card:hover,
.slm-platform-card:focus-visible {
  border-color: rgba(33, 212, 253, .4);
  box-shadow: 0 26px 60px -28px rgba(33, 212, 253, .45);
  outline: none;
}

.slm-platform-card__art {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  padding: 8px;
  background: linear-gradient(160deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02));
  border: 1px solid rgba(255, 255, 255, .12);
}

.slm-platform-card__art svg {
  width: 100%;
  height: auto;
  max-width: 96px;
}

.slm-platform-card--android .slm-platform-card__art { box-shadow: inset 0 0 0 1px rgba(33, 212, 253, .25); }
.slm-platform-card--ios .slm-platform-card__art { box-shadow: inset 0 0 0 1px rgba(255, 105, 216, .25); }
.slm-platform-card--web .slm-platform-card__art { box-shadow: inset 0 0 0 1px rgba(139, 92, 246, .3); }
.slm-platform-card--mobile .slm-platform-card__art { box-shadow: inset 0 0 0 1px rgba(255, 209, 102, .25); }

.slm-platform-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.slm-platform-card__eyebrow {
  display: inline-flex;
  width: fit-content;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(33, 212, 253, .14);
  color: var(--slm-cyan);
  font: 700 11px/1 "Fredoka", sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.slm-platform-card--ios .slm-platform-card__eyebrow { background: rgba(255, 105, 216, .16); color: var(--slm-pink); }
.slm-platform-card--web .slm-platform-card__eyebrow { background: rgba(139, 92, 246, .2); color: #c4b5fd; }
.slm-platform-card--mobile .slm-platform-card__eyebrow { background: rgba(255, 209, 102, .18); color: var(--slm-gold); }

.slm-platform-card__title {
  font: 700 24px/1.1 "Fredoka", sans-serif;
  color: #fff;
}

.slm-platform-card__text {
  margin: 0;
  color: var(--slm-ink-soft);
  font-size: 15px;
  line-height: 1.55;
}

.slm-platform-card__cta {
  margin-top: 6px;
  font: 800 13px/1 "Fredoka", sans-serif;
  letter-spacing: .04em;
  color: #fff;
  text-transform: uppercase;
}

.slm-platform-card__cta span { margin-left: 4px; }

.slm-footer {
  padding: 48px 0 28px;
  border-top: 1px solid var(--slm-border);
  background: rgba(10, 4, 25, .45);
}

.slm-footer__inner {
  width: min(100% - 32px, 1180px);
  margin-inline: auto;
}

.slm-footer__top,
.slm-footer__columns { margin-bottom: 28px; }

.slm-footer__top {
  grid-template-columns: 1.2fr .8fr;
}

.slm-footer__cta-card {
  display: grid;
  gap: 10px;
  align-content: start;
}

.slm-footer__brand {
  font: 700 18px/1 "Fredoka", sans-serif;
}

.slm-footer__group {
  display: grid;
  gap: 12px;
}

.slm-footer__bottom {
  justify-content: space-between;
  gap: 18px;
  border-top: 1px solid var(--slm-border);
  padding-top: 18px;
  color: var(--slm-ink-soft);
}

.slm-error {
  min-height: 100vh;
  display: grid;
  place-items: center;
  text-align: center;
}

.slm-writer-card {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 20px;
  align-items: start;
}

.slm-writer-card__media img,
.slm-writer-card__media span {
  width: 160px;
  height: 160px;
  border-radius: 24px;
  object-fit: cover;
  background: linear-gradient(135deg, var(--slm-pink), var(--slm-cyan));
  display: grid;
  place-items: center;
  color: #190c3d;
  font: 800 42px/1 "Fredoka", sans-serif;
}

.slm-sidecard ul {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}

@media (max-width: 1100px) {
  .slm-hero__grid,
  .slm-page-hero__grid,
  .slm-disclaimer,
  .slm-footer__top,
  .slm-social-note {
    grid-template-columns: 1fr;
  }

  .slm-carousel__track,
  .slm-feature-grid,
  .slm-footer__columns,
  .slm-evidence-board,
  .slm-rtp-note__table {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .slm-header__inner { grid-template-columns: auto 1fr auto; }
  .slm-nav, .slm-header__cta-group { display: none; }
  .slm-burger { display: block; }
}

@media (max-width: 760px) {
  .slm-platform-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .slm-container { width: min(100% - 20px, 1180px); }

  .slm-carousel__track,
  .slm-feature-grid,
  .slm-footer__columns,
  .slm-evidence-board,
  .slm-rtp-note__table,
  .slm-writer-card {
    grid-template-columns: 1fr;
  }

  .slm-cta-banner,
  .slm-footer__bottom,
  .slm-phone__coins {
    flex-direction: column;
  }

  .slm-phone__screen { min-height: auto; }

  .slm-platform-card {
    grid-template-columns: 80px 1fr;
    gap: 14px;
    padding: 18px;
  }

  .slm-platform-card__art svg { max-width: 64px; }
  .slm-platform-card__title { font-size: 20px; }
  .slm-platform-card__text { font-size: 14px; }

  .slm-rich-content { padding: 16px; }
  .slm-toc { padding: 16px; }

  .slm-hero,
  .slm-section,
  .slm-page-hero { padding: 36px 0; }
}

/* Rich-content from CMS — Slotomania themed reading */
.slm-body .slm-rich-content {
  max-width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  color: var(--slm-ink-soft);
}

.slm-body .slm-rich-content > *:first-child { margin-top: 0; }
.slm-body .slm-rich-content > *:last-child { margin-bottom: 0; }

.slm-body .slm-rich-content *,
.slm-body .slm-rich-content *::before,
.slm-body .slm-rich-content *::after {
  max-width: 100%;
  box-sizing: border-box;
}

.slm-body .slm-rich-content img,
.slm-body .slm-rich-content video,
.slm-body .slm-rich-content iframe,
.slm-body .slm-rich-content embed,
.slm-body .slm-rich-content object,
.slm-body .slm-rich-content picture,
.slm-body .slm-rich-content source {
  display: block;
  width: 100%;
  height: auto;
  margin: 22px 0;
  border-radius: 18px;
  object-fit: cover;
}

.slm-body .slm-rich-content img { max-height: 480px; }

.slm-body .slm-rich-content figure {
  margin: 22px 0;
  padding: 0;
}

.slm-body .slm-rich-content figure img { margin: 0; }

.slm-body .slm-rich-content figcaption {
  margin-top: 10px;
  color: var(--slm-ink-muted);
  font-size: 14px;
  text-align: center;
}

.slm-body .slm-rich-content h2,
.slm-body .slm-rich-content h3,
.slm-body .slm-rich-content h4,
.slm-body .slm-rich-content p,
.slm-body .slm-rich-content ul,
.slm-body .slm-rich-content ol,
.slm-body .slm-rich-content blockquote,
.slm-body .slm-rich-content details,
.slm-body .slm-rich-content pre {
  max-width: 78ch;
}

.slm-body .slm-rich-content h2 {
  position: relative;
  margin: 32px 0 14px;
  padding-left: 18px;
  color: var(--slm-ink);
  font: 700 clamp(22px, 2.6vw, 28px)/1.2 "Fredoka", sans-serif;
  letter-spacing: -0.2px;
}

.slm-body .slm-rich-content h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 4px;
  border-radius: 4px;
  background: linear-gradient(180deg, var(--slm-cyan), var(--slm-pink));
}

.slm-body .slm-rich-content h3 {
  margin: 24px 0 10px;
  color: var(--slm-ink);
  font: 700 clamp(18px, 2vw, 22px)/1.3 "Fredoka", sans-serif;
}

.slm-body .slm-rich-content h4 {
  margin: 20px 0 8px;
  color: var(--slm-ink);
  font: 700 17px/1.35 "Fredoka", sans-serif;
}

.slm-body .slm-rich-content p {
  margin: 12px 0;
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--slm-ink-soft);
  overflow-wrap: anywhere;
}

.slm-body .slm-rich-content strong { color: var(--slm-ink); font-weight: 700; }
.slm-body .slm-rich-content em { color: var(--slm-ink); font-style: italic; }

.slm-body .slm-rich-content a {
  color: var(--slm-cyan);
  font-weight: 700;
  border-bottom: 1px solid rgba(33, 212, 253, .4);
  transition: color .15s ease, border-color .15s ease;
  word-break: break-word;
}

.slm-body .slm-rich-content a:hover,
.slm-body .slm-rich-content a:focus-visible {
  color: var(--slm-pink);
  border-bottom-color: var(--slm-pink);
}

/* Lists — plain, readable, no card chrome */
.slm-body .slm-rich-content ul,
.slm-body .slm-rich-content ol {
  margin: 18px 0 24px;
  padding-left: 1.35rem;
  color: var(--slm-ink-soft);
}

.slm-body .slm-rich-content ul { list-style: disc; }
.slm-body .slm-rich-content ol { list-style: decimal; }

.slm-body .slm-rich-content li {
  margin: 0 0 10px;
  padding-left: .25rem;
  line-height: 1.75;
  font-size: 15.5px;
  overflow-wrap: anywhere;
}

.slm-body .slm-rich-content li::marker {
  color: var(--slm-cyan);
  font-weight: 800;
}

.slm-body .slm-rich-content li strong:first-child {
  color: var(--slm-ink);
  font-weight: 800;
}

.slm-body .slm-rich-content li > p { margin: 4px 0; }

/* Accordion / details */
.slm-body .slm-rich-content details {
  margin: 12px 0;
  padding: 16px 20px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .1);
  background: linear-gradient(160deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02));
  transition: background .2s ease;
}

.slm-body .slm-rich-content details + details { margin-top: 10px; }

.slm-body .slm-rich-content details[open] {
  background: linear-gradient(160deg, rgba(33, 212, 253, .1), rgba(255, 105, 216, .04));
  border-color: rgba(33, 212, 253, .25);
}

.slm-body .slm-rich-content details summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  color: var(--slm-ink);
  font: 700 16px/1.4 "Fredoka", sans-serif;
}

.slm-body .slm-rich-content details summary::-webkit-details-marker { display: none; }
.slm-body .slm-rich-content details summary::marker { content: ""; }

.slm-body .slm-rich-content details summary::after {
  content: "+";
  display: grid;
  place-items: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(33, 212, 253, .15);
  color: var(--slm-cyan);
  font: 700 18px/1 "Fredoka", sans-serif;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}

.slm-body .slm-rich-content details[open] summary::after {
  content: "−";
  background: rgba(255, 105, 216, .18);
  color: var(--slm-pink);
}

.slm-body .slm-rich-content details > *:not(summary) {
  margin-top: 12px;
}

/* Blockquote */
.slm-body .slm-rich-content blockquote {
  margin: 22px 0;
  padding: 16px 20px;
  border-left: 4px solid var(--slm-cyan);
  border-radius: 0 16px 16px 0;
  background: rgba(255, 255, 255, .05);
  color: var(--slm-ink-soft);
  font-style: italic;
}

.slm-body .slm-rich-content blockquote p { margin: 6px 0; }

/* Code */
.slm-body .slm-rich-content pre,
.slm-body .slm-rich-content code {
  white-space: pre-wrap;
  word-break: break-word;
  background: rgba(255, 255, 255, .06);
  border-radius: 10px;
  padding: 2px 6px;
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 14px;
  color: var(--slm-ink);
}

.slm-body .slm-rich-content pre {
  padding: 14px;
  overflow-x: auto;
  border: 1px solid var(--slm-border);
}

/* Tables */
.slm-body .slm-rich-content table {
  width: 100%;
  max-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 22px 0;
  display: block;
  overflow-x: auto;
  border-radius: 16px;
  border: 1px solid var(--slm-border);
}

.slm-body .slm-rich-content table th,
.slm-body .slm-rich-content table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--slm-border);
  vertical-align: top;
  text-align: left;
  font-size: 14.5px;
}

.slm-body .slm-rich-content table tr:last-child td { border-bottom: 0; }

.slm-body .slm-rich-content table th {
  color: var(--slm-ink);
  background: rgba(255, 255, 255, .06);
  font-family: "Fredoka", sans-serif;
  font-weight: 700;
}

.slm-body .slm-rich-content table tbody tr:nth-child(even) td {
  background: rgba(255, 255, 255, .025);
}

/* hr */
.slm-body .slm-rich-content hr {
  margin: 28px 0;
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--slm-border-2), transparent);
}

@media (max-width: 640px) {
  .slm-body .slm-rich-content details { padding: 14px 16px; }
  .slm-body .slm-rich-content h2 { padding-left: 14px; }
  .slm-body .slm-rich-content p,
  .slm-body .slm-rich-content li { font-size: 14.5px; }
}

/* Contact page — controlled editorial layout */
.slm-main { padding: 24px 0 64px; }
.slm-contact { padding: 36px 0 64px; }
.slm-contact__head { width: 100%; max-width: 760px; margin: 0 auto 22px; }
.slm-contact__eyebrow {
  display: inline-block; margin-bottom: 12px;
  padding: 5px 12px; border-radius: 999px;
  background: var(--slm-surface); color: var(--slm-cyan);
  border: 1px solid var(--slm-border);
  font-family: "Fredoka", "Nunito Sans", sans-serif;
  font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700;
}
.slm-contact__title {
  margin: 0 0 10px; color: var(--slm-ink);
  font-family: "Fredoka", "Nunito Sans", sans-serif;
  font-size: clamp(26px, 3.4vw, 34px); letter-spacing: -0.4px; line-height: 1.2;
}
.slm-contact__lead {
  margin: 0; color: var(--slm-ink-soft); font-size: 15.5px; line-height: 1.7; max-width: 68ch;
}
.slm-contact__notice {
  display: flex; gap: 14px; align-items: flex-start;
  width: 100%; max-width: 760px; margin: 0 auto 22px;
  padding: 14px 16px; border-radius: 14px;
  background: var(--slm-surface); border: 1px solid var(--slm-border);
  border-left: 3px solid var(--slm-pink);
}
.slm-contact__notice p { margin: 0; color: var(--slm-ink-soft); font-size: 14px; line-height: 1.65; }
.slm-contact__notice-tag {
  flex: 0 0 auto; padding: 3px 8px; border-radius: 999px;
  background: rgba(255, 105, 216, 0.18); color: var(--slm-pink);
  font-family: "Fredoka", sans-serif; font-size: 11px;
  text-transform: uppercase; letter-spacing: 0.1em; font-weight: 700;
}
.slm-contact__form-card {
  width: min(100%, 760px); margin: 0 auto; padding: 24px;
  background: var(--slm-surface); border: 1px solid var(--slm-border);
  border-radius: 18px; box-sizing: border-box;
}

.slm-body .slm-contact__form-card .contact-form {
  display: flex; flex-direction: column; gap: 14px;
  margin: 0; padding: 0; background: transparent; border: 0;
  color: var(--slm-ink); font-family: inherit;
}
.slm-body .contact-form__group { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.slm-body .contact-form__label {
  color: var(--slm-ink); font-family: "Fredoka", "Nunito Sans", sans-serif;
  font-size: 13px; letter-spacing: 0.04em; font-weight: 700;
}
.slm-body .contact-form__req { color: var(--slm-pink); margin-left: 2px; }
.slm-body .contact-form__input,
.slm-body .contact-form__textarea {
  width: 100%; padding: 11px 14px;
  background: rgba(255, 255, 255, 0.06); color: var(--slm-ink);
  border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 12px;
  font: inherit; font-size: 15px; line-height: 1.5; box-sizing: border-box;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.slm-body .contact-form__input::placeholder,
.slm-body .contact-form__textarea::placeholder { color: rgba(216, 208, 248, 0.55); }
.slm-body .contact-form__textarea { min-height: 140px; resize: vertical; }
.slm-body .contact-form__input:focus,
.slm-body .contact-form__textarea:focus {
  outline: none; border-color: var(--slm-cyan);
  box-shadow: 0 0 0 3px rgba(33, 212, 253, 0.22);
}
.slm-body .contact-form__actions { display: flex; margin-top: 4px; }
.slm-body .contact-form__btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 12px 28px;
  background: linear-gradient(135deg, var(--slm-cyan), var(--slm-violet));
  color: #fff; border: 0; border-radius: 999px;
  font: inherit; font-family: "Fredoka", sans-serif; font-weight: 700; font-size: 14px;
  letter-spacing: 0.06em; text-transform: uppercase; cursor: pointer;
  box-shadow: 0 10px 26px rgba(139, 92, 246, 0.35);
  transition: transform .15s ease, filter .15s ease;
}
.slm-body .contact-form__btn:hover { transform: translateY(-1px); filter: brightness(1.06); }
.slm-body .contact-form__btn:disabled { cursor: not-allowed; opacity: 0.6; transform: none; box-shadow: none; }
.slm-body .contact-form__status { margin: 6px 0 0; font-size: 14px; color: var(--slm-ink-soft); }
.slm-body .contact-form__status[hidden] { display: none !important; }
.slm-body .contact-form__status:empty { display: none; }
.slm-body .contact-form__status.is-success { color: var(--slm-cyan); }
.slm-body .contact-form__status.is-error { color: #fca5a5; }

.slm-legal-hero { padding: 40px 0 12px; }
.slm-legal-hero__eyebrow {
  display: inline-block; margin-bottom: 12px;
  padding: 5px 12px; border-radius: 999px;
  background: var(--slm-surface); color: var(--slm-cyan);
  border: 1px solid var(--slm-border);
  font-family: "Fredoka", sans-serif;
  font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700;
}
.slm-legal-hero__title {
  margin: 0 0 8px; color: var(--slm-ink);
  font-family: "Fredoka", sans-serif;
  font-size: clamp(26px, 3.4vw, 36px); letter-spacing: -0.4px;
}
.slm-legal-section { padding-top: 16px; padding-bottom: 32px; }
.slm-legal-card {
  background: var(--slm-surface); border: 1px solid var(--slm-border);
  border-radius: 16px; padding: 26px; margin-bottom: 18px; box-sizing: border-box;
}
.slm-legal-empty h2 { margin: 0 0 8px; font-size: 18px; color: var(--slm-ink); font-family: "Fredoka", sans-serif; }
.slm-legal-empty p { color: var(--slm-ink-soft); margin: 0 0 10px; line-height: 1.7; }

@media (max-width: 640px) {
  .slm-contact__form-card { padding: 18px; }
  .slm-contact__notice { padding: 12px 14px; }
  .slm-body .contact-form__btn { width: 100%; }
}

/* === Mobile header offer CTA === */
.slm-header__cta-mobile {
  display: none;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--slm-cyan), var(--slm-pink));
  color: #190c3d;
  font-weight: 800;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.02em;
  white-space: nowrap;
  text-decoration: none;
}
@media (max-width: 980px) {
  .slm-header__inner { display: flex; align-items: center; gap: 10px; }
  .slm-header__inner > :first-child { margin-right: auto; min-width: 0; }
  .slm-header__cta-mobile { display: inline-flex; flex-shrink: 0; padding: 8px 12px; font-size: 12px; }
  .slm-burger { flex-shrink: 0; }
}
