/* /poker-script — AISHTMLNEWDESIGN-436
   Page-owned styles. EVERY selector is scoped to #page-poker-script or a
   ps- 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. */

/* ═══════════════════════════════════════════════════════════════════
   KEY TAG — /poker-script
   The product is the KEYS to a codebase the buyer owns outright, so the
   page is composed as key tags on a ring: every band opens with a notched
   brass tag carrying a two-letter code and a punched ring hole.
   Gunmetal bands persuade; bone card-stock bands carry reference data.
   ═══════════════════════════════════════════════════════════════════ */

#page-poker-script{
  --ps-ink:#141a21;          /* body text on bone */
  --ps-ink-2:#3a4350;        /* secondary text on bone (>=4.5:1 on #f6f3ec) */
  --ps-gun:#191f27;          /* dark band ground */
  --ps-gun-2:#212934;        /* raised surface on gunmetal */
  --ps-gun-3:#2c3542;        /* gunmetal hairline */
  --ps-bone:#f6f3ec;         /* card stock */
  --ps-bone-2:#fffdf8;       /* raised surface on bone */
  --ps-line:#ddd5c6;         /* bone hairline */
  --ps-brass:#c2882b;        /* accent */
  --ps-brass-2:#e0b262;      /* accent on gunmetal */
  --ps-teal:#0f6d70;         /* live / demo affordance only */
  --ps-onGun:#ece7dc;        /* body text on gunmetal */
  --ps-onGun-2:#b9c0cb;      /* secondary text on gunmetal */
  font-family:"Inter",system-ui,sans-serif;
  font-size:16px;
  line-height:1.65;
  color:var(--ps-ink);
  background:var(--ps-bone);
  -webkit-font-smoothing:antialiased;
}

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

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

#page-poker-script .ps-wrap{
  width:100%;max-width:1180px;margin-inline:auto;
  padding-inline:clamp(20px,4vw,40px);
}

/* ── Bands ───────────────────────────────────────────────────────── */
#page-poker-script .ps-band{width:100%;padding-block:clamp(56px,7vw,104px);}
#page-poker-script .ps-band--bone{background:var(--ps-bone);color:var(--ps-ink);}
#page-poker-script .ps-band--gun{background:var(--ps-gun);color:var(--ps-onGun);}
#page-poker-script .ps-band--tight{padding-block:clamp(36px,4.5vw,64px);}
#page-poker-script .ps-band--rule{border-top:1px solid var(--ps-line);}

#page-poker-script .ps-band--gun h2,
#page-poker-script .ps-band--gun h3,
#page-poker-script .ps-band--gun h4,
#page-poker-script .ps-band--gun h5{color:#fff;}
#page-poker-script .ps-band--gun p{color:var(--ps-onGun);}

/* ── Typography ──────────────────────────────────────────────────── */
#page-poker-script h1{
  font-size:clamp(36px,4.6vw,60px);line-height:1.06;
  letter-spacing:-.02em;font-weight:800;margin:0 0 22px;color:#fff;
}
#page-poker-script h2,
#page-poker-script .ps-h2look{
  font-size:clamp(28px,3.3vw,44px);line-height:1.14;
  letter-spacing:-.015em;font-weight:800;margin:0 0 24px;
}
#page-poker-script h3{font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:700;margin:0 0 10px;}
#page-poker-script h4{font-size:clamp(18px,1.7vw,22px);line-height:1.3;font-weight:700;margin:0;}
#page-poker-script h5{font-size:18px;line-height:1.35;font-weight:700;margin:0 0 8px;}
#page-poker-script p{font-size:17px;margin:0 0 18px;}
#page-poker-script .ps-lede{font-size:19px;line-height:1.6;}

/* ── The key tag ─────────────────────────────────────────────────── */
/* A notched brass plate with a punched ring hole. clip-path cuts the two
   right-hand corners; the hole is a pseudo-free inline span so no border
   is clipped away. Static — nothing here moves. */
#page-poker-script .ps-tag{
  display:inline-flex;align-items:center;gap:9px;
  font-size:16px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;
  padding:8px 20px 8px 14px;margin:0 0 20px;
  background:var(--ps-brass);color:#221703;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);
}
#page-poker-script .ps-tag--light{background:var(--ps-brass-2);color:#1d1403;}
#page-poker-script .ps-tag__hole{
  width:9px;height:9px;border-radius:50%;
  background:rgba(0,0,0,.42);flex:none;
}

/* ── Buttons ─────────────────────────────────────────────────────── */
#page-poker-script .ps-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:14px 30px;
  font:inherit;font-size:17px;font-weight:700;letter-spacing:.01em;
  border:2px solid transparent;border-radius:2px;cursor:pointer;
  text-align:center;
  transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease;
}
#page-poker-script .ps-btn--brass{background:var(--ps-brass);color:#1d1403;border-color:var(--ps-brass);}
#page-poker-script .ps-btn--brass:hover{background:var(--ps-brass-2);border-color:var(--ps-brass-2);transform:translateY(-2px);}
#page-poker-script .ps-btn--ink{background:var(--ps-gun);color:#fff;border-color:var(--ps-gun);}
#page-poker-script .ps-btn--ink:hover{background:var(--ps-brass);color:#1d1403;border-color:var(--ps-brass);transform:translateY(-2px);}
#page-poker-script .ps-btn:active{transform:translateY(0);}
#page-poker-script .ps-btn:focus-visible,
#page-poker-script a:focus-visible,
#page-poker-script button:focus-visible,
#page-poker-script summary:focus-visible{
  outline:3px solid var(--ps-teal);outline-offset:3px;
}
#page-poker-script .ps-band--gun .ps-btn:focus-visible,
#page-poker-script .ps-band--gun a:focus-visible,
#page-poker-script .ps-band--gun button:focus-visible{outline-color:var(--ps-brass-2);}

/* ── Inline links ────────────────────────────────────────────────── */
#page-poker-script .ps-inline{
  color:var(--ps-teal);font-weight:600;
  border-bottom:2px solid rgba(15,109,112,.35);
}
#page-poker-script .ps-inline:hover{border-bottom-color:var(--ps-teal);}
#page-poker-script .ps-inline--light{
  color:var(--ps-brass-2);border-bottom-color:rgba(224,178,98,.4);
}
#page-poker-script .ps-inline--light:hover{border-bottom-color:var(--ps-brass-2);}

/* ── Hero (rule 24: full-bleed, image-free, static gradient) ─────── */
#page-poker-script .ps-hero{
  width:100%;
  padding:clamp(64px,8.5vw,124px) 24px clamp(56px,7vw,104px);
  background:linear-gradient(168deg,#232c38 0%,#191f27 46%,#12171e 100%);
  border-bottom:3px solid var(--ps-brass);
}
#page-poker-script .ps-hero__in{max-width:900px;margin-inline:auto;text-align:center;}
#page-poker-script .ps-hero__copy{
  font-size:clamp(17px,1.5vw,19px);line-height:1.62;
  color:var(--ps-onGun);margin:0 auto 30px;max-width:800px;
}

/* ── Breadcrumb rail ─────────────────────────────────────────────── */
#page-poker-script .ps-rail{background:var(--ps-gun-2);}
#page-poker-script .ps-rail__in{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding-block:14px;font-size:16px;
}
#page-poker-script .ps-crumb{
  display:inline-flex;align-items:center;gap:7px;
  color:var(--ps-brass-2);font-weight:600;
}
#page-poker-script .ps-crumb:hover{color:#fff;}
#page-poker-script .ps-rail__here{color:var(--ps-onGun-2);}

/* ── Editorial plates ────────────────────────────────────────────── */
#page-poker-script .ps-plate{margin:0;position:relative;}
#page-poker-script .ps-plate img{
  width:100%;border-radius:3px;
  border:1px solid var(--ps-line);
  box-shadow:0 18px 40px -26px rgba(20,26,33,.5);
}
#page-poker-script .ps-plate--gun img{border-color:var(--ps-gun-3);box-shadow:none;}
/* the tag notch, echoed at the plate's top-left corner */
#page-poker-script .ps-plate::before{
  content:"";position:absolute;top:-1px;left:-1px;
  width:34px;height:34px;background:var(--ps-brass);
  clip-path:polygon(0 0,100% 0,0 100%);
}

/* ── Intro band ──────────────────────────────────────────────────── */
#page-poker-script .ps-intro{display:grid;gap:clamp(28px,4vw,56px);align-items:start;}
#page-poker-script .ps-intro__b p:last-of-type{margin-bottom:26px;}

/* ── Collaborate band ─────────────────────────────────────────────
   collaborate-bg (2).webp is a pale decorative constellation strip, not a
   content picture — as an <img> plate on a dark band it reads as an empty
   white box. It is used here the way /card-game-development uses it and the
   way production does: as the BAND'S OWN BACKGROUND. A warm brass wash sits
   over it so this reads as a deliberate palette break between two bone
   bands, and so the ink type keeps >=4.5:1 contrast over the artwork. */
#page-poker-script .ps-collab{
  background-color:#f0d9a8;
  background-image:
    linear-gradient(100deg,rgba(240,217,168,.94) 0%,rgba(233,201,140,.86) 55%,rgba(226,190,120,.9) 100%),
    url("/assets/images/_shared/collaborate-bg-2.webp");
  background-size:auto,cover;
  background-position:center,center;
  background-repeat:no-repeat,no-repeat;
  border-top:1px solid var(--ps-line);
  border-bottom:3px solid var(--ps-brass);
  color:var(--ps-ink);
  text-align:center;
}
#page-poker-script .ps-collab__in{max-width:820px;}
#page-poker-script .ps-collab .ps-tag{background:var(--ps-gun);color:var(--ps-brass-2);}
#page-poker-script .ps-collab .ps-tag__hole{background:rgba(255,255,255,.5);}
#page-poker-script .ps-collab h2{color:var(--ps-ink);}
#page-poker-script .ps-collab__sub{
  font-size:21px;font-weight:600;color:#4a3a13;margin:0 0 26px;
}

/* ── Prose band ──────────────────────────────────────────────────── */
#page-poker-script .ps-prose{max-width:900px;}
#page-poker-script .ps-prose p:last-of-type{margin-bottom:28px;}

/* ── Rich Interface tiles ────────────────────────────────────────── */
#page-poker-script .ps-rich__head{display:flex;align-items:center;gap:16px;margin-bottom:28px;}
#page-poker-script .ps-rich__head h2{margin:0;}
#page-poker-script .ps-rich__mark{width:56px;height:56px;flex:none;}
#page-poker-script .ps-tiles{
  list-style:none;margin:0;padding:0;
  display:grid;gap:14px;
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
}
#page-poker-script .ps-tile{
  position:relative;background:var(--ps-bone-2);
  border:1px solid var(--ps-line);border-left:3px solid var(--ps-brass);
  padding:20px 18px 18px;
  display:flex;flex-direction:column;gap:12px;
  transition:transform .16s ease,box-shadow .16s ease;
}
#page-poker-script .ps-tile:hover{transform:translateY(-3px);box-shadow:0 12px 26px -18px rgba(20,26,33,.6);}
#page-poker-script .ps-tile img{width:44px;height:44px;}
#page-poker-script .ps-tile h5{margin:0;font-size:17px;}

/* ── Hire band ───────────────────────────────────────────────────── */
#page-poker-script .ps-hire{display:grid;gap:clamp(28px,4vw,56px);align-items:center;}
#page-poker-script .ps-hire__b p{margin-bottom:26px;}

/* ── Screenshot rail ─────────────────────────────────────────────── */
/* Screenshots rail, matched to omaha-poker-software .ops-rail. All twelve
   sources are exactly 767x431, the same as the reference's, so the declared
   aspect-ratio crops nothing.
   flex-wrap:nowrap is explicit: declaring a rail without it lets an earlier
   wrap survive underneath, and the result measures as a correct rail while
   silently stacking instead. */
#page-poker-script .ps-shots{
  list-style:none;margin:0;padding:6px 2px 22px;
  display:flex;flex-wrap:nowrap;gap:18px;overflow-x:auto;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
}
#page-poker-script .ps-shots li{
  flex:0 0 clamp(280px,78vw,430px);scroll-snap-align:start;
}
#page-poker-script .ps-shots img{
  display:block;width:100%;height:auto;aspect-ratio:767/431;object-fit:contain;
  border-radius:14px;
  border:1px solid var(--ps-line);background:var(--ps-bone-2);
}

/* prev/next controls. The rail stays a plain overflow-x container, so swipe,
   trackpad and keyboard keep working; these are an addition, never the only
   way to move.
   Named .ps-shots__step, NOT .ps-rail-anything: .ps-rail already exists on
   this page (3 CSS rules, 3 elements). Checked before naming. */
#page-poker-script .ps-shots__nav{display:flex;gap:12px;justify-content:flex-end;margin-top:4px;}
#page-poker-script .ps-shots__nav .ps-shots__step{
  width:50px;height:50px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--ps-brass);border-radius:50%;
  background:transparent;color:var(--ps-brass);cursor:pointer;
  padding:1px 6px;box-sizing:border-box;min-height:0;
  transition:background-color .18s ease,color .18s ease,opacity .18s ease;
}
#page-poker-script .ps-shots__nav .ps-shots__step:hover:not([disabled]),
#page-poker-script .ps-shots__nav .ps-shots__step:focus-visible{background:var(--ps-brass);color:#fff;}
#page-poker-script .ps-shots__nav .ps-shots__step[disabled]{opacity:.34;cursor:default;}
@media (max-width:560px){#page-poker-script .ps-shots__nav{justify-content:center;}}

/* items 1 and 4 — centre the section CTA in four bands. These buttons sit
   directly in .ps-wrap / .ps-prose / .ps-hire__b, so text-align on the parent
   would centre the body copy with them. Centring the button itself leaves the
   surrounding prose alone. */
#page-poker-script section[aria-labelledby="ps-feat-h"] .ps-btn,
#page-poker-script section[aria-labelledby="ps-max-h"] .ps-btn,
#page-poker-script section[aria-labelledby="ps-grow-h"] .ps-btn,
#page-poker-script section[aria-labelledby="ps-admin-h"] .ps-btn{
  display:flex;width:fit-content;margin-inline:auto;
}
/* the page makes buttons full-width under 600px; these selectors outrank that
   rule, so the override is restated rather than silently lost */
@media (max-width:600px){
  #page-poker-script section[aria-labelledby="ps-feat-h"] .ps-btn,
  #page-poker-script section[aria-labelledby="ps-max-h"] .ps-btn,
  #page-poker-script section[aria-labelledby="ps-grow-h"] .ps-btn,
  #page-poker-script section[aria-labelledby="ps-admin-h"] .ps-btn{width:100%;}
}

/* ── Ledger (admin features) ─────────────────────────────────────── */
#page-poker-script .ps-sub{font-size:21px;margin:0 0 10px;color:var(--ps-brass);}
#page-poker-script .ps-ledger{
  list-style:none;margin:30px 0 30px;padding:0;
  display:grid;gap:0;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  border-top:1px solid var(--ps-line);
}
#page-poker-script .ps-ledger li{
  padding:22px 24px 20px;
  border-bottom:1px solid var(--ps-line);
  border-left:3px solid transparent;
  transition:border-left-color .16s ease,background-color .16s ease;
}
#page-poker-script .ps-ledger li:hover{border-left-color:var(--ps-brass);background:var(--ps-bone-2);}
#page-poker-script .ps-ledger p{margin:0;font-size:16px;color:var(--ps-ink-2);}

/* ── Advantage cards ─────────────────────────────────────────────── */
#page-poker-script .ps-adv{
  list-style:none;margin:30px 0;padding:0;
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
}
#page-poker-script .ps-adv li{
  position:relative;background:var(--ps-gun-2);
  border:1px solid var(--ps-gun-3);border-top:3px solid var(--ps-brass);
  padding:24px 22px 20px;
}
#page-poker-script .ps-adv p{margin:0;font-size:16px;color:var(--ps-onGun-2);}
#page-poker-script .ps-band--bone .ps-adv li{background:var(--ps-bone-2);border-color:var(--ps-line);}
#page-poker-script .ps-max__lede{max-width:900px;margin-bottom:6px;}

/* ── Demo credential sheet ───────────────────────────────────────── */
#page-poker-script .ps-demos{
  list-style:none;margin:26px 0 0;padding:0;
  display:grid;gap:22px;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
}
#page-poker-script .ps-demo{
  background:var(--ps-bone-2);
  border:1px solid var(--ps-line);border-top:3px solid var(--ps-teal);
  padding:0 0 22px;display:flex;flex-direction:column;
}
/* The wonga marks are 500x500 logos, not photographs - at full card width they
   rendered 350x351 and dwarfed the credentials they label. Fixed 150x150
   contain box, centred, matching the poker-game-developers page. */
#page-poker-script .ps-demo>img{
  display:block;width:150px;height:150px;object-fit:contain;
  margin:22px auto 4px;background:var(--ps-bone);border-radius:2px;
}
#page-poker-script .ps-demo h5{margin:20px 22px 14px;font-size:20px;}
#page-poker-script .ps-creds{
  margin:0 22px;padding:0;
  display:grid;grid-template-columns:auto 1fr;gap:4px 12px;
  font-size:16px;
}
#page-poker-script .ps-creds dt{font-weight:700;color:var(--ps-ink);}
#page-poker-script .ps-creds dd{margin:0;color:var(--ps-ink-2);word-break:break-word;}
#page-poker-script .ps-creds__h{
  margin:16px 22px 8px;font-weight:700;font-size:17px;color:var(--ps-ink);
}
#page-poker-script .ps-demo__go{
  /* margin-top:auto pins the button to the CARD BOTTOM, so all three sit on
     one baseline no matter how many lines the credentials above them take.
     Card 1's admin email wraps to two lines, which previously pushed its
     button 27px lower than the other two. align-self:center centres it in
     the card. Same margin-top:auto convention as the sibling
     poker-game-developers demo grid. */
  margin:20px 22px 0;margin-top:auto;align-self:center;
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:12px 26px;
  background:var(--ps-teal);color:#fff;
  font-weight:700;font-size:17px;border-radius:2px;
  transition:background-color .16s ease,transform .16s ease;
}
#page-poker-script .ps-demo__go:hover{background:#0b5457;transform:translateY(-2px);}

/* ── Services band ───────────────────────────────────────────────── */
#page-poker-script .ps-svc{display:grid;gap:clamp(28px,4vw,56px);align-items:start;}
#page-poker-script .ps-checks{
  list-style:none;margin:24px 0 28px;padding:0;
  display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
}
#page-poker-script .ps-checks li{
  display:flex;align-items:center;gap:10px;
  font-size:17px;font-weight:600;color:var(--ps-ink);
}
#page-poker-script .ps-checks img{width:18px;height:18px;flex:none;}

/* ── FAQ ─────────────────────────────────────────────────────────── */
#page-poker-script .ps-faq{max-width:940px;}
#page-poker-script #ps-faqlist details{
  background:var(--ps-bone-2);
  border:1px solid var(--ps-line);border-left:3px solid var(--ps-line);
  margin-bottom:10px;
  transition:border-left-color .16s ease;
}
#page-poker-script #ps-faqlist details[open]{border-left-color:var(--ps-brass);}
#page-poker-script #ps-faqlist summary{
  list-style:none;cursor:pointer;
  padding:18px 54px 18px 22px;position:relative;
  display:block;
}
#page-poker-script #ps-faqlist summary::-webkit-details-marker{display:none;}
#page-poker-script #ps-faqlist summary::after{
  content:"";position:absolute;right:22px;top:50%;
  width:11px;height:11px;margin-top:-7px;
  border-right:2.5px solid var(--ps-brass);
  border-bottom:2.5px solid var(--ps-brass);
  transform:rotate(45deg);
  transition:transform .18s ease;
}
#page-poker-script #ps-faqlist details[open] summary::after{transform:rotate(-135deg);margin-top:-2px;}
#page-poker-script #ps-faqlist summary h4{font-size:18px;font-weight:700;}
#page-poker-script #ps-faqlist details>p{
  margin:0;padding:0 54px 20px 22px;
  font-size:16px;color:var(--ps-ink-2);
}

/* ── Testimonial facades ─────────────────────────────────────────── */
#page-poker-script .ps-stories{
  list-style:none;margin:26px 0 0;padding:0;
  display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
}
#page-poker-script .ps-stories li{
  background:var(--ps-gun-2);border:1px solid var(--ps-gun-3);
  display:flex;flex-direction:column;
}
#page-poker-script .ps-vid{
  position:relative;display:block;width:100%;padding:0;
  border:0;background:#0f141a;cursor:pointer;line-height:0;
}
#page-poker-script .ps-vid img{width:100%;}
#page-poker-script .ps-vid__play{
  position:absolute;inset:0;margin:auto;
  width:60px;height:60px;border-radius:50%;
  background:rgba(194,136,43,.94);
  transition:transform .16s ease,background-color .16s ease;
}
#page-poker-script .ps-vid__play::after{
  content:"";position:absolute;inset:0;margin:auto;
  width:0;height:0;
  border-left:19px solid #1d1403;
  border-top:12px solid transparent;
  border-bottom:12px solid transparent;
  transform:translateX(3px);
}
#page-poker-script .ps-vid:hover .ps-vid__play{transform:scale(1.09);background:var(--ps-brass-2);}
#page-poker-script .ps-story__frame{
  width:100%;aspect-ratio:16/9;border:0;display:block;
}
#page-poker-script .ps-stories blockquote{margin:0;padding:20px 22px 24px;}
#page-poker-script .ps-stories blockquote p{margin:0;font-size:16px;color:var(--ps-onGun);}
#page-poker-script .ps-more{margin:26px 0 0;text-align:center;}

/* ── Area we serve ───────────────────────────────────────────────── */
#page-poker-script .ps-places{
  list-style:none;margin:26px 0 0;padding:0;
  display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}
#page-poker-script .ps-place{
  background:var(--ps-bone-2);
  border:1px solid var(--ps-line);border-top:3px solid var(--ps-brass);
  padding:22px 20px 20px;
}
#page-poker-script .ps-place h3{
  display:flex;align-items:center;gap:9px;
  font-size:18px;letter-spacing:.06em;text-transform:uppercase;
}
#page-poker-script .ps-place h3 img{width:14px;height:20px;flex:none;}
#page-poker-script .ps-tel{
  display:inline-block;margin-bottom:10px;
  font-weight:700;font-size:17px;color:var(--ps-teal);
}
#page-poker-script .ps-tel:hover{color:#0b5457;}
#page-poker-script .ps-place p{margin:0;font-size:16px;color:var(--ps-ink-2);}

/* ── CTA modal ───────────────────────────────────────────────────── */
#page-poker-script .ps-modal{
  display:none;position:fixed;inset:0;z-index:9999;
  background:rgba(12,16,21,.78);
  padding: 100px 20px 20px 20px;overflow-y:auto;
}
#page-poker-script .ps-modal.is-open{display:flex;align-items:flex-start;justify-content:center;}
#page-poker-script .ps-modal__box{
  position:relative;width:100%;max-width:620px;margin:auto;
  background:#fff;border-radius:4px;border-top:4px solid var(--ps-brass);
  padding:44px 12px 12px;
}
#page-poker-script .ps-modal__x{
  position:absolute;top:10px;right:10px;
  width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--ps-line);border-radius:3px;
  background:#fff;color:var(--ps-ink);cursor:pointer;
  transition:background-color .16s ease,color .16s ease;
}
#page-poker-script .ps-modal__x:hover{background:var(--ps-gun);color:#fff;}
#page-poker-script .ps-modal__box iframe{
  width:100%;min-height:860px;border:0;display:block;
}

/* ── Responsive ──────────────────────────────────────────────────── */
@media (min-width:900px){
  #page-poker-script .ps-intro{grid-template-columns:minmax(0,42%) minmax(0,1fr);}
  #page-poker-script .ps-collab__in{grid-template-columns:minmax(0,45%) minmax(0,1fr);}
  #page-poker-script .ps-hire{grid-template-columns:minmax(0,1fr) minmax(0,45%);}
  #page-poker-script .ps-svc{grid-template-columns:minmax(0,1fr) minmax(0,42%);}
}
@media (max-width:600px){
  #page-poker-script .ps-rich__head{flex-direction:column;align-items:flex-start;gap:12px;}
  #page-poker-script .ps-btn{width:100%;}
  #page-poker-script .ps-demo__go{width:calc(100% - 44px);}
  #page-poker-script .ps-creds{grid-template-columns:1fr;gap:2px;}
  #page-poker-script .ps-creds dt{margin-top:8px;}
  #page-poker-script .ps-modal__box{padding-top:52px;}
}

/* Rule 26 — the only motion on this page is a finite response to hover,
   focus or click. Honour the reduced-motion preference for all of it. */
@media (prefers-reduced-motion:reduce){
  #page-poker-script *,
  #page-poker-script *::before,
  #page-poker-script *::after{
    animation:none !important;transition-duration:.01ms !important;
  }
}


/* -- Added CTA rows (AISHTMLNEWDESIGN-436 refinements) --------------
   The six sections that previously carried no CTA - tiles, screenshots,
   demo sheet, FAQ, stories, offices - now each carry exactly one, centred
   below their content. Matches the .pgd-act convention on the sibling
   poker-game-developers page so the two behave the same. */
#page-poker-script .ps-act{margin:34px 0 0;text-align:center;}

/* -- FAQ numbering -------------------------------------------------
   Real DOM spans, not CSS counters, so "Q. 1" and "Ans." are selectable
   and survive a copy-paste. Both aria-hidden: details/summary already
   expose the question/answer relationship, so announcing "Q. 1" to a
   screen reader is noise. */
#page-poker-script #ps-faqlist summary{display:flex;align-items:flex-start;gap:12px;}
#page-poker-script .ps-q__n{
  flex:0 0 auto;min-width:46px;
  color:var(--ps-brass);font-weight:800;font-size:18px;line-height:1.35;
  font-variant-numeric:tabular-nums;letter-spacing:.02em;
}
#page-poker-script .ps-q__ans{
  display:inline-block;min-width:46px;
  color:var(--ps-teal);font-weight:800;
}
#page-poker-script #ps-faqlist details>p{padding-left:22px;}
@media (max-width:600px){
  #page-poker-script .ps-q__n{min-width:38px;}
  #page-poker-script .ps-q__ans{min-width:38px;}
}

/* ── "Investing in poker script solutions": the opening paragraph carried
      .ps-lede at 19px while the three that follow take the page's base
      #page-poker-script p rule at 17px, so the section read at two sizes.
      Matched to its siblings exactly — 17px with line-height 1.65, which is
      the 28.05px they compute to.
      SCOPED to .ps-intro on purpose: .ps-lede is used twice on this page, and
      the other instance sits in a section whose siblings are 16px, so a global
      change would leave that one mismatched in the other direction. ── */
#page-poker-script .ps-intro .ps-lede{font-size:17px;line-height:1.65;}

/* ── "Advantages of Our Poker Source Code": its CTA is a bare child of
      .ps-wrap, so it sat left at 412px off the section's centre. The page
      already centres this exact shape for ps-feat-h, ps-max-h, ps-grow-h and
      ps-admin-h — same declarations, same aria-labelledby scoping — so
      ps-adv-h joins that pattern rather than getting a new mechanism. ── */
#page-poker-script section[aria-labelledby="ps-adv-h"] .ps-btn{
  display:flex;width:fit-content;margin-inline:auto;}
