/* /casino-script — AISHTMLNEWDESIGN-328
   Page-owned styles. EVERY selector is scoped to #page-casino-script or a
   cs- prefixed class: this sheet must never style body, a bare
   element, #ais-header or #ais-footer. The document reset
   (html,body{margin:0}) is owned by the shared layout sheet.
   Font is Inter; no body/UI text below 16px.

   VISUAL DIRECTION — "SOURCE GUTTER".
   The product is source code, so the page is composed like a printed source
   listing: deep blue-black ink bands, cool paper bands, hairline rules, and a
   left index gutter whose two-digit numerals are generated by CSS counters
   (decorative only — no invented copy enters the DOM). Signal mint marks the
   live/active edge; periwinkle marks references. Rule 26: no @keyframes
   anywhere in this sheet, every transition is a finite response to
   hover / focus / open. */

#page-casino-script{
  --cs-ink:#0c1020;
  --cs-ink-2:#141a30;
  --cs-ink-3:#1d2440;
  --cs-paper:#eef0f6;
  --cs-white:#ffffff;
  --cs-rule:#d3d8e6;
  --cs-rule-2:#e4e8f1;
  --cs-rule-d:#2a3252;
  --cs-text:#141a30;
  --cs-text-2:#3c455f;
  --cs-on-ink:#eaeefa;
  --cs-on-ink-2:#aab5d2;
  --cs-mint:#33e0a1;
  --cs-mint-d:#0b7f57;
  --cs-peri:#8b9bff;
  --cs-peri-d:#3d4bcf;
  --cs-wrap:1200px;
  --cs-gut:26px;
  font-family:"Inter", system-ui, sans-serif;
  font-size:16px;
  line-height:1.6;
  color:var(--cs-text);
  background:var(--cs-paper);
  counter-reset:cssec;
  -webkit-font-smoothing:antialiased;
}

#page-casino-script *,
#page-casino-script *::before,
#page-casino-script *::after{box-sizing:border-box;}

#page-casino-script img{max-width:100%;height:auto;display:block;}

#page-casino-script :focus-visible{
  outline:3px solid var(--cs-peri-d);
  outline-offset:3px;
  border-radius:4px;
}

/* ══ bands & wrapper ═══════════════════════════════════════════════════════ */

#page-casino-script .cs-band{
  width:100%;
  padding:clamp(56px,6vw,104px) 24px;
  counter-increment:cssec;
}
#page-casino-script .cs-band--paper{background:var(--cs-paper);color:var(--cs-text);}
#page-casino-script .cs-band--white{background:var(--cs-white);color:var(--cs-text);}
#page-casino-script .cs-band--ink{
  background:var(--cs-ink);
  color:var(--cs-on-ink);
  background-image:linear-gradient(180deg,#0c1020 0%,#111731 100%);
}
#page-casino-script .cs-band--rally{padding-block:clamp(44px,5vw,72px);}

#page-casino-script .cs-wrap{max-width:var(--cs-wrap);margin-inline:auto;}

/* ── the gutter: a two-digit section index + a hairline rail ─────────────── */
#page-casino-script .cs-head{
  position:relative;
  padding-left:64px;
  margin:0 0 clamp(26px,3vw,44px);
}
#page-casino-script .cs-head::before{
  content:counter(cssec,decimal-leading-zero);
  position:absolute;
  left:0;
  top:2px;
  font-size:16px;
  font-weight:800;
  letter-spacing:.14em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-mint-d);
}
#page-casino-script .cs-head::after{
  content:"";
  position:absolute;
  left:8px;
  top:32px;
  bottom:-6px;
  width:2px;
  background:var(--cs-rule);
}
#page-casino-script .cs-band--ink .cs-head::before{color:var(--cs-mint);}
#page-casino-script .cs-band--ink .cs-head::after{background:var(--cs-rule-d);}

#page-casino-script .cs-h2{
  margin:0;
  font-size:clamp(30px,3.5vw,46px);
  line-height:1.14;
  letter-spacing:-.022em;
  font-weight:800;
  color:var(--cs-text);
}
#page-casino-script .cs-h2--onink,
#page-casino-script .cs-band--ink .cs-h2{color:var(--cs-on-ink);}

#page-casino-script .cs-h3{
  margin:34px 0 14px;
  font-size:clamp(22px,2.2vw,28px);
  line-height:1.22;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-band--ink .cs-h3{color:var(--cs-on-ink);}

#page-casino-script .cs-p{
  margin:0;
  font-size:18px;
  line-height:1.72;
  color:var(--cs-text-2);
}
#page-casino-script .cs-p--wide{max-width:960px;margin-bottom:8px;}
#page-casino-script .cs-p--onink,
#page-casino-script .cs-band--ink .cs-p{color:var(--cs-on-ink-2);}

#page-casino-script .cs-lede{
  margin:26px 0 12px;
  font-size:18px;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-caption{
  margin:-14px 0 26px;
  padding-left:64px;
  font-size:16px;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:600;
  color:var(--cs-on-ink-2);
}

/* ══ 01 hero — rule 24: full-bleed static gradient, no media ═══════════════ */

#page-casino-script .cs-hero{
  width:100%;
  padding:clamp(72px,9vw,132px) 24px clamp(60px,7vw,104px);
  background:linear-gradient(158deg,#080b16 0%,#111731 46%,#16214a 100%);
  color:var(--cs-on-ink);
  border-bottom:2px solid var(--cs-mint);
}
#page-casino-script .cs-hero__inner{
  max-width:900px;
  margin-inline:auto;
  text-align:center;
}
#page-casino-script .cs-hero__h1{
  margin:0 0 22px;
  font-size:clamp(38px,5.4vw,68px);
  line-height:1.05;
  letter-spacing:-.03em;
  font-weight:900;
  color:#fff;
}
#page-casino-script .cs-hero__lede{
  margin:0 auto;
  max-width:820px;
  font-size:clamp(17px,1.5vw,19px);
  line-height:1.75;
  color:#cdd6ee;
}
#page-casino-script .cs-hero__act{margin-top:34px;}

/* ══ CTA buttons ═══════════════════════════════════════════════════════════ */

#page-casino-script .cs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 30px;
  border:2px solid var(--cs-mint);
  border-radius:2px;
  background:var(--cs-mint);
  color:#062219;
  font-family:inherit;
  font-size:17px;
  font-weight:800;
  letter-spacing:.01em;
  cursor:pointer;
  text-align:center;
  box-shadow:6px 6px 0 0 rgba(6,34,25,.22);
  transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease, color .16s ease;
}
#page-casino-script .cs-btn:hover{
  background:#0c1020;
  color:var(--cs-mint);
  box-shadow:2px 2px 0 0 rgba(6,34,25,.3);
  transform:translate(3px,3px);
}
#page-casino-script .cs-btn:active{transform:translate(5px,5px);box-shadow:none;}
#page-casino-script .cs-band--ink .cs-btn:hover,
#page-casino-script .cs-hero .cs-btn:hover{background:#fff;color:#0c1020;border-color:#fff;}
#page-casino-script .cs-btn--lg{min-height:60px;padding:18px 40px;font-size:18px;}
#page-casino-script .cs-btn--sm{min-height:48px;padding:12px 24px;font-size:16px;width:100%;}

#page-casino-script .cs-act{margin-top:clamp(30px,4vw,48px);text-align:center;}
#page-casino-script .cs-act--left{text-align:left;margin-top:28px;}

#page-casino-script .cs-inline{
  display:inline-block;
  font-size:17px;
  font-weight:700;
  color:var(--cs-peri-d);
  border-bottom:2px solid currentColor;
  padding-bottom:2px;
  transition:color .16s ease;
}
#page-casino-script .cs-inline:hover{color:var(--cs-text);}
#page-casino-script .cs-inline--onink{color:var(--cs-peri);}
#page-casino-script .cs-inline--onink:hover{color:#fff;}

/* ══ 02 breadcrumb ═════════════════════════════════════════════════════════ */

#page-casino-script .cs-crumbband{
  width:100%;
  padding:16px 24px;
  background:var(--cs-white);
  border-bottom:1px solid var(--cs-rule);
}
#page-casino-script .cs-crumb{
  max-width:var(--cs-wrap);
  margin-inline:auto;
  display:flex;
  align-items:center;
  gap:12px;
  font-size:16px;
  color:var(--cs-text-2);
}
#page-casino-script .cs-crumb__back{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border:1px solid var(--cs-rule);
  border-radius:2px;
  transition:border-color .16s ease, background-color .16s ease;
}
#page-casino-script .cs-crumb__back:hover{border-color:var(--cs-mint-d);background:#f2fbf7;}
#page-casino-script .cs-crumb__link{font-weight:600;color:var(--cs-text-2);}
#page-casino-script .cs-crumb__link:hover{color:var(--cs-peri-d);}
#page-casino-script .cs-crumb__here{font-weight:700;color:var(--cs-text);}

/* ══ 03 split intro ════════════════════════════════════════════════════════ */

#page-casino-script .cs-split{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(28px,4vw,60px);
  align-items:center;
}
#page-casino-script .cs-split__copy .cs-head{margin-bottom:22px;}
#page-casino-script .cs-split__shot{
  margin:0;
  border:1px solid var(--cs-rule);
  border-radius:3px;
  background:var(--cs-white);
  padding:14px;
  box-shadow:14px 14px 0 0 rgba(20,26,48,.07);
}
#page-casino-script .cs-split__shot img{width:100%;border-radius:2px;}

/* ══ 04 stats ══════════════════════════════════════════════════════════════ */

#page-casino-script .cs-stats{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  border:1px solid var(--cs-rule-d);
  border-width:1px 0 0 1px;
}
#page-casino-script .cs-stat{
  flex:1 1 22%;
  min-width:208px;
  background:var(--cs-ink-2);
  padding:26px 22px;
  border-right:1px solid var(--cs-rule-d);
  border-bottom:1px solid var(--cs-rule-d);
  transition:background-color .16s ease;
}
#page-casino-script .cs-stat:hover{background:var(--cs-ink-3);}
#page-casino-script .cs-stat__n{
  margin:0 0 8px;
  font-size:clamp(30px,3.4vw,42px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-mint);
}
#page-casino-script .cs-stat__l{margin:0;font-size:16px;line-height:1.5;color:var(--cs-on-ink-2);}

/* ══ 05 / 22 numbered listing rows ═════════════════════════════════════════ */

#page-casino-script .cs-rows{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:csrow;
  border-top:1px solid var(--cs-rule);
}
#page-casino-script .cs-row{
  counter-increment:csrow;
  position:relative;
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  gap:0 var(--cs-gut);
  padding:22px 12px 22px 0;
  border-bottom:1px solid var(--cs-rule);
  transition:background-color .16s ease, padding-left .16s ease;
}
#page-casino-script .cs-row::before{
  content:counter(csrow,decimal-leading-zero);
  grid-row:span 2;
  font-size:16px;
  font-weight:800;
  letter-spacing:.12em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-mint-d);
  padding-top:3px;
}
#page-casino-script .cs-row:hover{background:var(--cs-white);}
#page-casino-script .cs-row__t{
  margin:0 0 6px;
  font-size:20px;
  line-height:1.32;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-row__p{margin:0;font-size:17px;line-height:1.65;color:var(--cs-text-2);}

#page-casino-script .cs-rows--ink{border-top-color:var(--cs-rule-d);}
#page-casino-script .cs-rows--ink .cs-row{border-bottom-color:var(--cs-rule-d);}
#page-casino-script .cs-rows--ink .cs-row::before{color:var(--cs-mint);}
#page-casino-script .cs-rows--ink .cs-row:hover{background:var(--cs-ink-2);}
#page-casino-script .cs-rows--ink .cs-row__t{color:var(--cs-on-ink);}
#page-casino-script .cs-rows--ink .cs-row__p{color:var(--cs-on-ink-2);}

/* ══ 06 / 24 rally bands ═══════════════════════════════════════════════════ */

#page-casino-script .cs-rally{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  border-left:4px solid var(--cs-mint);
  padding-left:clamp(20px,3vw,38px);
}
#page-casino-script .cs-rally .cs-h2{margin-bottom:8px;}

#page-casino-script .cs-markb{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:clamp(24px,4vw,56px);
  align-items:center;
}
#page-casino-script .cs-markb__copy .cs-h2{margin-bottom:12px;}
#page-casino-script .cs-markb__act{
  margin-top:28px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:26px;
}
#page-casino-script .cs-markb__fig{margin:0;}
#page-casino-script .cs-markb__fig img{width:100%;border-radius:3px;}

/* ══ 07 games, provider marks, chips ═══════════════════════════════════════ */

#page-casino-script .cs-chips{
  list-style:none;
  margin:0 0 26px;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
#page-casino-script .cs-chip{
  padding:10px 18px;
  border:1px solid var(--cs-rule);
  border-left:3px solid var(--cs-peri-d);
  border-radius:2px;
  background:var(--cs-white);
  font-size:16px;
  font-weight:600;
  color:var(--cs-text);
}

#page-casino-script .cs-games{
  list-style:none;
  margin:30px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
#page-casino-script .cs-game__a{
  display:block;
  height:100%;
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-radius:3px;
  overflow:hidden;
  transition:border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}
#page-casino-script .cs-game__a:hover{
  border-color:var(--cs-mint-d);
  transform:translateY(-3px);
  box-shadow:0 16px 34px -22px rgba(20,26,48,.6);
}
#page-casino-script .cs-game__img{width:100%;aspect-ratio:3/2;object-fit:cover;}
#page-casino-script .cs-game__t{
  margin:0;
  padding:16px 18px;
  font-size:19px;
  font-weight:700;
  color:var(--cs-text);
  border-top:1px solid var(--cs-rule-2);
}
#page-casino-script .cs-game__a:hover .cs-game__t{color:var(--cs-mint-d);}

#page-casino-script .cs-marks{
  list-style:none;
  margin:34px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule);
  border:1px solid var(--cs-rule);
}
#page-casino-script .cs-mark{
  background:var(--cs-white);
  padding:18px 12px;
  text-align:center;
  transition:background-color .16s ease;
}
#page-casino-script .cs-mark:hover{background:#f7f9fd;}
#page-casino-script .cs-mark__img{
  margin:0 auto 10px;
  height:56px;
  width:auto;
  max-width:100%;
  object-fit:contain;
}
#page-casino-script .cs-mark__t{
  margin:0;
  font-size:16px;
  font-weight:600;
  line-height:1.35;
  color:var(--cs-text-2);
}

/* ══ 08 portfolio plates ═══════════════════════════════════════════════════ */

#page-casino-script .cs-group{margin-bottom:34px;}
#page-casino-script .cs-group__t{
  margin:0 0 14px;
  padding-bottom:10px;
  border-bottom:1px solid var(--cs-rule-d);
  font-size:20px;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--cs-mint);
}
#page-casino-script .cs-plates{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}
#page-casino-script .cs-plate{
  /* brand marks arrive as transparent PNG/WebP with dark artwork, so the plate
     is a white specimen card — on the ink band they would otherwise vanish */
  background:#fff;
  border:1px solid var(--cs-rule-d);
  border-radius:2px;
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:96px;
  transition:border-color .16s ease, transform .16s ease;
}
#page-casino-script .cs-plate:hover{border-color:var(--cs-mint);transform:translateY(-2px);}
#page-casino-script .cs-plate img{max-height:64px;width:auto;object-fit:contain;}

/* ══ 09 screenshots ════════════════════════════════════════════════════════ */

#page-casino-script .cs-shots{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-shot{
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-radius:3px;
  padding:12px;
  box-shadow:10px 10px 0 0 rgba(20,26,48,.06);
}
#page-casino-script .cs-shot img{width:100%;border-radius:2px;}

/* ══ 10 / 13 spec cards ════════════════════════════════════════════════════ */

#page-casino-script .cs-specs{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule);
  border:1px solid var(--cs-rule);
}
#page-casino-script .cs-spec{
  background:var(--cs-white);
  padding:26px 24px;
  border-left:3px solid transparent;
  transition:border-left-color .16s ease, background-color .16s ease;
}
#page-casino-script .cs-spec:hover{border-left-color:var(--cs-mint);background:#f8fbff;}
#page-casino-script .cs-spec__t{
  margin:0 0 10px;
  font-size:19px;
  line-height:1.3;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-spec__p{margin:0;font-size:17px;line-height:1.65;color:var(--cs-text-2);}

/* ══ 11 variant tiles ══════════════════════════════════════════════════════ */

#page-casino-script .cs-tiles{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:16px;
}
#page-casino-script .cs-tile{
  background:var(--cs-ink-2);
  border:1px solid var(--cs-rule-d);
  border-radius:3px;
  overflow:hidden;
  transition:border-color .16s ease, transform .16s ease;
}
#page-casino-script .cs-tile:hover{border-color:var(--cs-mint);transform:translateY(-3px);}
#page-casino-script .cs-tile__img{width:100%;aspect-ratio:11/8;object-fit:cover;}
#page-casino-script .cs-tile__t{
  display:block;
  padding:12px 12px 14px;
  font-size:16px;
  font-weight:600;
  line-height:1.35;
  color:var(--cs-on-ink-2);
}

/* ══ 12 / 21 / 23 deck cards ═══════════════════════════════════════════════ */

#page-casino-script .cs-deck{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  counter-reset:csdeck;
}
#page-casino-script .cs-deck-card{
  counter-increment:csdeck;
  position:relative;
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-top:3px solid var(--cs-ink);
  border-radius:3px;
  padding:28px 26px 26px;
  transition:border-top-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
#page-casino-script .cs-deck-card:hover{
  border-top-color:var(--cs-mint);
  box-shadow:0 18px 36px -26px rgba(20,26,48,.65);
  transform:translateY(-3px);
}
#page-casino-script .cs-deck-card::before{
  content:counter(csdeck,decimal-leading-zero);
  position:absolute;
  top:16px;
  right:20px;
  font-size:16px;
  font-weight:800;
  letter-spacing:.1em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-rule);
}
#page-casino-script .cs-deck-card__t{
  margin:0 0 12px;
  padding-right:44px;
  font-size:21px;
  line-height:1.28;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-deck-card__p{margin:0;font-size:17px;line-height:1.65;color:var(--cs-text-2);}

/* ── check lists (marker asset drawn as a background, never as content) ──── */
#page-casino-script .cs-checks{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:9px;
}
#page-casino-script .cs-checks li{
  position:relative;
  padding-left:30px;
  font-size:17px;
  line-height:1.55;
  color:var(--cs-text-2);
}
#page-casino-script .cs-checks li::before{
  content:"";
  position:absolute;
  left:0;
  top:3px;
  width:18px;
  height:18px;
  background-image:url("/assets/images/common-img/usa-check-icon.svg");
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
}
#page-casino-script .cs-checks--alt li::before{
  background-image:url("/assets/images/common-img/check.png");
}
#page-casino-script .cs-checks--wide{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 34px;
  max-width:980px;
}

/* ══ 14 platform slabs ═════════════════════════════════════════════════════ */

#page-casino-script .cs-slabs{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-slab{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:20px;
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-radius:3px;
  padding:26px 24px;
  transition:border-color .16s ease, box-shadow .16s ease;
}
#page-casino-script .cs-slab:hover{
  border-color:var(--cs-peri-d);
  box-shadow:0 18px 36px -28px rgba(20,26,48,.7);
}
#page-casino-script .cs-slab__ico{
  width:64px;
  height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cs-paper);
  border-radius:3px;
}
#page-casino-script .cs-slab__ico img{width:40px;height:40px;object-fit:contain;}
#page-casino-script .cs-slab__t{
  margin:0 0 10px;
  font-size:21px;
  line-height:1.28;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-slab__p{margin:0;font-size:17px;line-height:1.65;color:var(--cs-text-2);}

/* ══ 15 other solutions ════════════════════════════════════════════════════ */

#page-casino-script .cs-other{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(26px,4vw,56px);
  align-items:center;
}
#page-casino-script .cs-other__fig{
  margin:0;
  border:1px solid var(--cs-rule-d);
  border-radius:3px;
  padding:12px;
  background:var(--cs-ink-2);
}
#page-casino-script .cs-other__fig img{width:100%;border-radius:2px;}
#page-casino-script .cs-links{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule-d);
  border:1px solid var(--cs-rule-d);
}
#page-casino-script .cs-links__a{
  display:block;
  background:var(--cs-ink-2);
  padding:16px 18px;
  font-size:17px;
  font-weight:600;
  line-height:1.4;
  color:var(--cs-on-ink);
  height:100%;
  transition:background-color .16s ease, color .16s ease;
}
#page-casino-script .cs-links__a:hover{background:var(--cs-mint);color:#062219;}

/* ══ 16 process steps ══════════════════════════════════════════════════════ */

#page-casino-script .cs-steps{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:csstep;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule);
  border:1px solid var(--cs-rule);
}
#page-casino-script .cs-step{
  counter-increment:csstep;
  position:relative;
  background:var(--cs-white);
  padding:28px 26px;
  transition:background-color .16s ease;
}
#page-casino-script .cs-step:hover{background:#f8fbff;}
#page-casino-script .cs-step::before{
  content:counter(csstep,decimal-leading-zero);
  display:block;
  margin-bottom:12px;
  font-size:17px;
  font-weight:800;
  letter-spacing:.14em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-mint-d);
}
#page-casino-script .cs-step__t{
  margin:0 0 12px;
  font-size:20px;
  font-weight:700;
  line-height:1.3;
  color:var(--cs-text);
}
#page-casino-script .cs-step__l{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:8px;
}
#page-casino-script .cs-step__l li{
  position:relative;
  padding-left:18px;
  font-size:17px;
  line-height:1.55;
  color:var(--cs-text-2);
}
#page-casino-script .cs-step__l li::before{
  content:"";
  position:absolute;
  left:0;
  top:11px;
  width:8px;
  height:2px;
  background:var(--cs-peri-d);
}

/* ══ 17 technology stack table ═════════════════════════════════════════════ */

#page-casino-script .cs-tablewrap{overflow-x:auto;}
#page-casino-script .cs-table{
  width:100%;
  border-collapse:collapse;
  border:1px solid var(--cs-rule-d);
  font-size:17px;
}
#page-casino-script .cs-table th,
#page-casino-script .cs-table td{
  padding:18px 22px;
  text-align:left;
  border-bottom:1px solid var(--cs-rule-d);
  vertical-align:top;
}
#page-casino-script .cs-table tr:last-child th,
#page-casino-script .cs-table tr:last-child td{border-bottom:0;}
#page-casino-script .cs-table th{
  width:32%;
  font-weight:700;
  color:var(--cs-mint);
  background:var(--cs-ink-2);
  border-right:1px solid var(--cs-rule-d);
  white-space:nowrap;
}
#page-casino-script .cs-table td{color:var(--cs-on-ink);letter-spacing:.01em;}

/* ══ 18 case studies ═══════════════════════════════════════════════════════ */

#page-casino-script .cs-cases{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-case{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:22px;
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-left:4px solid var(--cs-peri-d);
  border-radius:3px;
  padding:28px 26px;
  transition:border-left-color .16s ease, transform .16s ease;
}
#page-casino-script .cs-case:hover{border-left-color:var(--cs-mint-d);transform:translateY(-3px);}
#page-casino-script .cs-case__t{
  margin:0;
  font-size:19px;
  line-height:1.4;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-case__more{
  align-self:flex-start;
  font-size:17px;
  font-weight:700;
  color:var(--cs-peri-d);
  border-bottom:2px solid currentColor;
  padding-bottom:2px;
  transition:color .16s ease;
}
#page-casino-script .cs-case__more:hover{color:var(--cs-text);}

/* ══ 19 engagement models ══════════════════════════════════════════════════ */

#page-casino-script .cs-models{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-model{
  background:var(--cs-paper);
  border:1px solid var(--cs-rule);
  border-radius:3px;
  padding:28px 26px;
  transition:background-color .16s ease, border-color .16s ease;
}
#page-casino-script .cs-model:hover{background:var(--cs-white);border-color:var(--cs-mint-d);}
#page-casino-script .cs-model__ico{
  width:56px;
  height:56px;
  margin-bottom:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-radius:3px;
}
#page-casino-script .cs-model__ico img{width:34px;height:34px;object-fit:contain;}
#page-casino-script .cs-model__t{
  margin:0 0 12px;
  font-size:21px;
  line-height:1.28;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-model__p{margin:0;font-size:17px;line-height:1.65;color:var(--cs-text-2);}

/* ══ 20 worldwide ══════════════════════════════════════════════════════════ */

#page-casino-script .cs-geo{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule);
  border:1px solid var(--cs-rule);
}
#page-casino-script .cs-geo__i{
  display:flex;
  align-items:center;
  gap:14px;
  background:var(--cs-white);
  padding:18px 20px;
  transition:background-color .16s ease;
}
#page-casino-script .cs-geo__i:hover{background:#f7f9fd;}
#page-casino-script .cs-geo__f{
  width:40px;
  height:28px;
  object-fit:cover;
  border:1px solid var(--cs-rule);
  border-radius:2px;
  flex:0 0 auto;
}
#page-casino-script .cs-geo__n{font-size:17px;font-weight:600;color:var(--cs-text);}

/* ══ 25 demo cards ═════════════════════════════════════════════════════════ */

#page-casino-script .cs-demos{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-demo-card{
  display:flex;
  flex-direction:column;
  background:var(--cs-ink);
  border:1px solid var(--cs-ink);
  border-radius:3px;
  padding:28px 26px;
  color:var(--cs-on-ink);
}
#page-casino-script .cs-demo-card__ico{
  width:48px;
  height:48px;
  margin-bottom:16px;
  display:flex;
  align-items:center;
  justify-content:center;
}
#page-casino-script .cs-demo-card__ico img{width:40px;height:40px;object-fit:contain;}
#page-casino-script .cs-demo-card__t{
  margin:0 0 16px;
  font-size:20px;
  font-weight:700;
  color:#fff;
}
#page-casino-script .cs-creds{
  margin:0 0 22px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:8px 16px;
  font-size:16px;
}
#page-casino-script .cs-creds dt{color:var(--cs-on-ink-2);font-weight:600;}
#page-casino-script .cs-creds dd{margin:0;color:var(--cs-mint);font-weight:700;word-break:break-word;}
#page-casino-script .cs-demo-card .cs-btn{margin-top:auto;}

/* ══ 27 reading list ═══════════════════════════════════════════════════════ */

#page-casino-script .cs-reads{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:csread;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--cs-rule);
  border:1px solid var(--cs-rule);
}
#page-casino-script .cs-read{counter-increment:csread;background:var(--cs-white);}
#page-casino-script .cs-read__a{
  display:flex;
  gap:16px;
  height:100%;
  padding:18px 20px;
  font-size:17px;
  line-height:1.5;
  font-weight:600;
  color:var(--cs-text);
  transition:background-color .16s ease, color .16s ease;
}
#page-casino-script .cs-read__a::before{
  content:counter(csread,decimal-leading-zero);
  flex:0 0 auto;
  font-weight:800;
  letter-spacing:.1em;
  font-variant-numeric:tabular-nums;
  color:var(--cs-mint-d);
}
#page-casino-script .cs-read__a:hover{background:var(--cs-ink);color:#fff;}
#page-casino-script .cs-read__a:hover::before{color:var(--cs-mint);}

/* ══ 28 FAQ ════════════════════════════════════════════════════════════════ */

#page-casino-script .cs-faqs{
  max-width:940px;
  border-top:1px solid var(--cs-rule);
}
#page-casino-script .cs-faq{border-bottom:1px solid var(--cs-rule);}
#page-casino-script .cs-faq__s{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:20px 4px;
  cursor:pointer;
  list-style:none;
  transition:color .16s ease;
}
#page-casino-script .cs-faq__s::-webkit-details-marker{display:none;}
#page-casino-script .cs-faq__q{
  margin:0;
  font-size:19px;
  line-height:1.4;
  font-weight:700;
  color:var(--cs-text);
}
#page-casino-script .cs-faq__i{
  position:relative;
  flex:0 0 auto;
  width:26px;
  height:26px;
  margin-top:2px;
  border:2px solid var(--cs-rule);
  border-radius:2px;
  transition:border-color .16s ease, background-color .16s ease;
}
#page-casino-script .cs-faq__i::before,
#page-casino-script .cs-faq__i::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:var(--cs-text);
  transform:translate(-50%,-50%);
  transition:opacity .16s ease;
}
#page-casino-script .cs-faq__i::before{width:12px;height:2px;}
#page-casino-script .cs-faq__i::after{width:2px;height:12px;}
#page-casino-script .cs-faq__s:hover .cs-faq__q{color:var(--cs-mint-d);}
#page-casino-script .cs-faq__s:hover .cs-faq__i{border-color:var(--cs-mint-d);}
#page-casino-script .cs-faq[open] .cs-faq__i{border-color:var(--cs-mint-d);background:var(--cs-mint-d);}
#page-casino-script .cs-faq[open] .cs-faq__i::before{background:#fff;}
#page-casino-script .cs-faq[open] .cs-faq__i::after{opacity:0;}
#page-casino-script .cs-faq__a{padding:0 4px 24px;}
#page-casino-script .cs-faq__a p{
  margin:0;
  max-width:820px;
  font-size:17px;
  line-height:1.7;
  color:var(--cs-text-2);
}

/* ══ 29 customer success stories ═══════════════════════════════════════════ */

#page-casino-script .cs-stories{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
#page-casino-script .cs-story{
  background:var(--cs-ink-2);
  border:1px solid var(--cs-rule-d);
  border-radius:3px;
  overflow:hidden;
}
#page-casino-script .cs-vid{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  border:0;
  background:#000;
  cursor:pointer;
  transition:filter .16s ease;
}
#page-casino-script .cs-vid:hover{filter:brightness(1.08);}
#page-casino-script .cs-vid__img{width:100%;aspect-ratio:16/10;object-fit:cover;}
#page-casino-script .cs-vid__play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--cs-mint);
  color:#062219;
  box-shadow:0 10px 26px -8px rgba(0,0,0,.7);
  transition:transform .16s ease;
}
#page-casino-script .cs-vid:hover .cs-vid__play{transform:translate(-50%,-50%) scale(1.08);}
#page-casino-script .cs-story__frame{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  border:0;
}
#page-casino-script .cs-story__q{
  margin:0;
  padding:22px 22px 26px;
  font-size:17px;
  line-height:1.65;
  color:var(--cs-on-ink-2);
}
#page-casino-script .cs-storiesmore{margin:30px 0 0;text-align:center;}

/* ══ 30 area we serve ══════════════════════════════════════════════════════ */

#page-casino-script .cs-areas{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
#page-casino-script .cs-area{
  background:var(--cs-white);
  border:1px solid var(--cs-rule);
  border-top:3px solid var(--cs-ink);
  border-radius:3px;
  padding:26px 24px;
  transition:border-top-color .16s ease;
}
#page-casino-script .cs-area:hover{border-top-color:var(--cs-mint);}
#page-casino-script .cs-area__t{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 12px;
  font-size:18px;
  font-weight:800;
  letter-spacing:.06em;
  color:var(--cs-text);
}
#page-casino-script .cs-area__pin{width:14px;height:20px;flex:0 0 auto;}
#page-casino-script .cs-area__tel{
  display:inline-block;
  margin-bottom:10px;
  font-size:17px;
  font-weight:700;
  color:var(--cs-peri-d);
  transition:color .16s ease;
}
#page-casino-script .cs-area__tel:hover{color:var(--cs-mint-d);}
#page-casino-script .cs-area__p{margin:0;font-size:16px;line-height:1.6;color:var(--cs-text-2);}

/* ══ CTA modal ═════════════════════════════════════════════════════════════ */

#page-casino-script .cs-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding: 100px 16px 24px 16px;
  overflow-y:auto;
  background:rgba(8,11,22,.78);
}
#page-casino-script .cs-modal.is-open{display:flex;}
#page-casino-script .cs-modal__box{
  position:relative;
  width:100%;
  max-width:620px;
  background:#fff;
  border-radius:6px;
  padding:56px 18px 18px;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.75);
}
#page-casino-script .cs-modal__x{
  position:absolute;
  top:14px;
  right:14px;
  width:44px;
  height:44px;
  border-radius:50%;
  background:var(--cs-paper);
  border:1px solid var(--cs-rule);
  color:var(--cs-text);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:background-color .16s ease, color .16s ease, border-color .16s ease;
}
#page-casino-script .cs-modal__x:hover{background:var(--cs-ink);color:var(--cs-mint);border-color:var(--cs-ink);}
#page-casino-script .cs-modal iframe{
  width:100%;
  min-height:860px;
  border:0;
  display:block;
  border-radius:4px;
}

/* ══ responsive ════════════════════════════════════════════════════════════ */

@media (max-width:1180px){
  #page-casino-script .cs-marks{grid-template-columns:repeat(4,minmax(0,1fr));}
  #page-casino-script .cs-plates{grid-template-columns:repeat(4,minmax(0,1fr));}
  #page-casino-script .cs-tiles{grid-template-columns:repeat(4,minmax(0,1fr));}
  #page-casino-script .cs-geo{grid-template-columns:repeat(3,minmax(0,1fr));}
  #page-casino-script .cs-areas{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:980px){
  #page-casino-script .cs-split,
  #page-casino-script .cs-other,
  #page-casino-script .cs-markb{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-games{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-specs,
  #page-casino-script .cs-deck,
  #page-casino-script .cs-steps,
  #page-casino-script .cs-cases,
  #page-casino-script .cs-models,
  #page-casino-script .cs-demos,
  #page-casino-script .cs-stories{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-slabs{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-links{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-markb__fig{order:-1;}
}

@media (max-width:720px){
  #page-casino-script .cs-band{padding-inline:18px;}
  #page-casino-script .cs-head{padding-left:44px;}
  #page-casino-script .cs-head::after{left:6px;}
  #page-casino-script .cs-caption{padding-left:44px;}
  #page-casino-script .cs-marks{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-plates{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-shots{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-specs,
  #page-casino-script .cs-deck,
  #page-casino-script .cs-steps,
  #page-casino-script .cs-cases,
  #page-casino-script .cs-models,
  #page-casino-script .cs-demos,
  #page-casino-script .cs-stories,
  #page-casino-script .cs-reads,
  #page-casino-script .cs-areas,
  #page-casino-script .cs-games{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-geo{grid-template-columns:repeat(2,minmax(0,1fr));}
  #page-casino-script .cs-checks--wide{grid-template-columns:minmax(0,1fr);}
  #page-casino-script .cs-row{grid-template-columns:44px minmax(0,1fr);}
  #page-casino-script .cs-rally{flex-direction:column;align-items:flex-start;}
  #page-casino-script .cs-btn,
  #page-casino-script .cs-btn--lg{width:100%;}
  #page-casino-script .cs-markb__act{flex-direction:column;align-items:stretch;gap:18px;}
  #page-casino-script .cs-markb__act .cs-inline{align-self:flex-start;}
  #page-casino-script .cs-table th,
  #page-casino-script .cs-table td{padding:14px 16px;}
  #page-casino-script .cs-table th{white-space:normal;width:40%;}
  #page-casino-script .cs-modal iframe{min-height:900px;}
}

/* rule 26 — reduced-motion reset for the finite transitions that remain */
@media (prefers-reduced-motion:reduce){
  #page-casino-script *,
  #page-casino-script *::before,
  #page-casino-script *::after{
    transition:none!important;
    animation:none!important;
  }
}

/* Games We Provide: source had TWO tabs (Casino Originals, Live Game
   API); "Our diverse iGaming software We Provide" was the first line inside the
   first tab, not a third pill. Restored as two labelled groups; colour inherited
   rather than tokenised so it reads on whatever band this section sits on. */
.cs-grp{margin:0 0 38px;}
.cs-grp:last-of-type{margin-bottom:0;}
.cs-grp > h4{margin:0 0 6px;font-size:clamp(19px,1.6vw,22px);font-weight:700;line-height:1.3;letter-spacing:-.008em;}
.cs-grp > h5{margin:0 0 12px;font-size:16px;font-weight:600;opacity:.78;}

/* The "Best Solutions for iGaming" description rendered larger than the body
   copy beneath it. Sized to this page's body text (16px) at the user's
   request, applied across every page carrying this section. Scoped to the
   section because .cs-p is used elsewhere on this page. Line-height is
   left alone — it is unitless, so it tracks the new size. */
#page-casino-script [aria-labelledby="cs-igaming"] .cs-p{font-size:16px;}
