/* Shared, compact product promotion. No autoplay, transitions or layout jumps. */
.research-banner-wrap { padding-top:20px; }
.research-banner { background:#201d1b; color:#fcf1e6; border-top:3px solid #c6282b; font-family:var(--f-sans); overflow:hidden; }
.research-banner-panel { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); grid-template-rows:1fr auto; gap:20px 40px; padding:28px 32px; min-height:290px; box-sizing:border-box; }
.research-banner-panel[hidden] { display:none; }
.research-banner-copy { position:relative; z-index:1; }
.research-banner .research-banner-kicker { margin:0 0 10px; color:#ff999b; font-size:.75rem; font-weight:700; line-height:1.4; letter-spacing:.09em; text-transform:uppercase; }
.research-banner h2 { max-width:21ch; margin:0 0 12px; color:#fcf1e6; font-family:var(--f-serif); font-size:clamp(1.65rem,2.5vw,2rem); font-weight:700; line-height:1.12; letter-spacing:-.015em; }
.research-banner-description { max-width:52ch; margin:0; color:#e4d5c7; font-size:.9375rem; line-height:1.5; }
.research-banner-actions { position:relative; z-index:1; display:flex; align-items:center; gap:18px; }
.research-banner-price { margin:0; font-size:.8rem; line-height:1.5; color:#fcf1e6; }
.research-banner-price strong,.research-banner-price span,.research-banner-price small { display:block; }
.research-banner-price small { font-size:.7rem; color:#c5b8ab; }
.research-banner a.research-banner-cta { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:48px; padding:12px 18px; box-sizing:border-box; border:1px solid #c6282b; border-radius:3px; background:#c6282b; color:#fff; font-size:.9375rem; font-weight:700; line-height:1.4; text-decoration:none; white-space:nowrap; }
.research-banner a.research-banner-cta:hover { background:#a6191b; border-color:#a6191b; }
.research-banner a:focus-visible { outline:3px solid #ffcb75; outline-offset:4px; }
.research-banner-visual { grid-column:2; grid-row:1 / 3; position:relative; display:flex; align-items:center; justify-content:center; min-width:0; isolation:isolate; }
.research-banner-ghost { position:absolute; inset:-28px -32px -28px -40px; width:calc(100% + 72px); height:calc(100% + 56px); max-width:none; object-fit:cover; object-position:center 40%; opacity:.16; mask-image:linear-gradient(90deg,transparent,#000 35%,#000 80%,transparent); z-index:-1; }
.research-banner-product { width:100%; max-width:420px; border:1px solid #57504a; border-radius:8px; background:#101823; box-shadow:0 12px 32px #0006; overflow:hidden; }
.research-banner-shot { height:192px; overflow:hidden; }
.research-banner-shot img { display:block; width:100%; height:auto; max-width:none; }
.research-banner-caption { display:flex; justify-content:space-between; gap:8px; margin:0; padding:10px 12px; border-top:1px solid #313b49; font-size:.7rem; line-height:1.4; color:#e8e2da; }
.research-banner-caption span { color:#b7bec8; white-space:nowrap; }
.research-banner-prompt { margin:0; padding:10px 14px; border-bottom:1px solid #313b49; color:#fff; background:#263342; font-size:.8125rem; line-height:1.5; }
[data-banner-variant="cohorts"] .research-banner-shot img { transform:translateY(-11%); }
[data-banner-variant="assistant"] .research-banner-shot { height:156px; }
@media(max-width:1020px) and (min-width:761px) {
  .research-banner-panel { gap:20px; padding:26px; }
  .research-banner-actions { grid-column:1 / 3; }
  .research-banner-visual { grid-row:1; }
  .research-banner-shot { height:170px; }
}
@media(max-width:760px) {
  .research-banner-wrap { padding-top:14px; }
  .research-banner-panel { position:relative; grid-template-columns:minmax(0,1fr); gap:20px; padding:24px; min-height:310px; }
  .research-banner h2 { max-width:23ch; font-size:1.65rem; }
  .research-banner-description { max-width:48ch; }
  .research-banner-visual { position:absolute; inset:0; grid-column:auto; grid-row:auto; pointer-events:none; opacity:.55; }
  .research-banner-product { display:none; }
  .research-banner-ghost { inset:0; width:100%; height:100%; opacity:.2; mask-image:linear-gradient(90deg,transparent,#000); }
  .research-banner-actions { flex-wrap:wrap; gap:12px 18px; }
}
@media(max-width:420px) {
  .research-banner-panel { padding:22px; min-height:390px; }
  .research-banner-actions { display:block; }
  .research-banner a.research-banner-cta { width:100%; }
  .research-banner-price { margin-top:12px; }
  .research-banner-price span { display:inline; margin-right:5px; }
  .research-banner-price small { display:inline; }
}
/* Original copy and two-column layout retained as the comparison baseline. */
[data-banner-variant="original"] { grid-template-columns:minmax(0,1fr) minmax(240px,auto); grid-template-rows:auto; align-items:center; gap:24px 40px; padding:28px 32px; min-height:0; }
[data-banner-variant="original"] .research-banner-kicker { font-size:.875rem; letter-spacing:.05em; }
[data-banner-variant="original"] h2 { max-width:none; font-size:clamp(1.5rem,2.6vw,2rem); line-height:1.15; }
[data-banner-variant="original"] .research-banner-description { max-width:65ch; color:inherit; font-size:1rem; line-height:1.55; }
[data-banner-variant="original"] .research-banner-actions { grid-column:auto; display:flex; flex-direction:column; align-items:stretch; gap:10px; text-align:center; }
[data-banner-variant="original"] .research-banner-price { margin:0 0 2px; font-size:.875rem; line-height:1.45; color:#e4d5c7; }
[data-banner-variant="original"] .research-banner-price span { display:block; margin:0; color:#fcf1e6; font-size:1.125rem; font-weight:700; }
.research-banner [data-banner-variant="original"] a.research-banner-cta { display:flex; padding:12px 20px; font-size:1rem; white-space:normal; }
@media(max-width:760px) {
  [data-banner-variant="original"] { grid-template-columns:minmax(0,1fr); gap:20px; padding:22px; }
  [data-banner-variant="original"] h2 br { display:none; }
  [data-banner-variant="original"] .research-banner-actions { text-align:left; align-items:flex-start; }
  [data-banner-variant="original"] .research-banner-price span { display:inline; margin-left:8px; }
  .research-banner [data-banner-variant="original"] a.research-banner-cta { width:100%; }
}
