.bgx-ts{
  --ts-bg:#0A1A33; --ts-deep:#071631; --ts-ink:#0A1A33; --ts-body:#3A4763; --ts-muted:#6B7690;
  --ts-accent:#1F5FB4; --ts-accent-lt:#7FB0F0; --ts-line:#E3E7EE; --ts-chip:#F3F6FA;
  --ts-font:"Plus Jakarta Sans","Inter","Helvetica Neue",Arial,sans-serif;
  position:relative; overflow:hidden; isolation:isolate;
  padding:72px clamp(16px,4vw,48px) 72px; font-family:var(--ts-font); color:#fff;
  background:
    radial-gradient(900px 480px at 15% 0%, rgba(31,95,180,.28), transparent 70%),
    linear-gradient(180deg,var(--ts-deep) 0%,var(--ts-bg) 100%);
}
.bgx-ts *,.bgx-ts *::before,.bgx-ts *::after{box-sizing:border-box}
.bgx-ts::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.4) 70%,transparent 100%);
          mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.4) 70%,transparent 100%);
}
.bgx-ts__wrap{max-width:1268px; margin:0 auto} /* matches the site content width (1268px) */

/* ---------- header ---------- */
.bgx-ts__head{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,420px); align-items:end; gap:16px 64px; margin-bottom:32px}
.bgx-ts__eyebrow{display:inline-flex; align-items:center; gap:12px; margin:0 0 12px; font-size:12.5px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--ts-accent-lt)}
.bgx-ts__eyebrow::before{content:""; width:28px; height:1px; background:currentColor; opacity:.6}
.bgx-ts__title{margin:0; font-size:clamp(28px,3vw,40px); line-height:1.1; font-weight:700; letter-spacing:-.022em; color:#fff; text-wrap:balance}
.bgx-ts__lead{margin:0; font-size:16.5px; line-height:1.6; color:rgba(255,255,255,.72)}

/* ---------- cards ---------- */
.bgx-ts__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin:0; padding:0; list-style:none}
.bgx-ts__grid > li{display:flex}
.bgx-ts__card{
  flex:1; display:flex; flex-direction:column; margin:0; background:#fff; color:var(--ts-ink); border-radius:0;
  border-top:3px solid var(--ts-accent);
  box-shadow:0 0 0 1px rgba(255,255,255,.06), 0 30px 60px -28px rgba(0,0,0,.65), 0 0 40px rgba(0,0,0,.18);
}
.bgx-ts__card{position:relative}
.bgx-ts__card[data-demo]::after{ /* visible "Sample" tag while demo content is in place */
  content:"Sample"; position:absolute; top:12px; right:12px; padding:3px 7px;
  background:#FFF4E5; color:#9A5B00; border:1px solid #F5D7A8;
  font-size:10.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
}
.bgx-ts__result{padding:22px 28px 18px; border-bottom:1px solid var(--ts-line)}
.bgx-ts__figure{display:block; font-size:clamp(30px,2.6vw,36px); line-height:1; font-weight:700; letter-spacing:-.025em; color:var(--ts-ink); font-variant-numeric:tabular-nums}
.bgx-ts__label{display:block; margin-top:8px; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--ts-accent)}
.bgx-ts__quote{flex:1; position:relative; margin:0; padding:18px 28px 18px}
.bgx-ts__quote svg{display:block; width:20px; height:16px; margin-bottom:8px; color:var(--ts-accent-lt)}
.bgx-ts__quote p{margin:0; font-size:16px; line-height:1.6; color:var(--ts-body)}
.bgx-ts__by{display:flex; align-items:center; gap:14px; margin:0; padding:14px 28px 16px; background:var(--ts-chip); border-top:1px solid var(--ts-line)}
.bgx-ts__logo{flex:none; display:grid; place-items:center; width:48px; height:48px; background:#fff; border:1px solid var(--ts-line); color:var(--ts-muted); font-size:10px; font-weight:700; letter-spacing:.08em}
.bgx-ts__logo img{max-width:38px; max-height:38px; object-fit:contain}
.bgx-ts__who{min-width:0}
.bgx-ts__who strong{display:block; font-size:15px; font-weight:700; color:var(--ts-ink)}
.bgx-ts__who span{display:block; margin-top:3px; font-size:13.5px; line-height:1.45; color:var(--ts-muted)}

.bgx-ts__note{display:flex; align-items:center; gap:10px; margin:24px 0 0; font-size:13.5px; color:rgba(255,255,255,.6)}
.bgx-ts__note svg{flex:none; color:var(--ts-accent-lt)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .bgx-ts__result,.bgx-ts__quote,.bgx-ts__by{padding-left:24px; padding-right:24px}
}
@media (max-width:900px){
  .bgx-ts{padding-top:64px; padding-bottom:64px}
  .bgx-ts__head{grid-template-columns:1fr; margin-bottom:28px}
  .bgx-ts__lead{max-width:620px}
  .bgx-ts__grid{grid-template-columns:1fr; gap:18px}
}
@media (max-width:560px){
  .bgx-ts{padding:52px 16px}
  .bgx-ts__lead{font-size:16px}
  .bgx-ts__result{padding:20px 20px 16px}
  .bgx-ts__quote{padding:16px 20px 16px}
  .bgx-ts__by{padding:12px 20px 14px}
  .bgx-ts__quote p{font-size:16px}
  .bgx-ts__note{align-items:flex-start}
}
@media (max-width:400px){.bgx-ts{padding-left:12px; padding-right:12px}}
