/* CO-DEAL cards: complete replacement for the old stylesheet. */
.codeal-result-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.codeal-result-grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.codeal-result-grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.codeal-result-card, .codeal-result-card * { box-sizing:border-box; }

.codeal-result-card {
  --accent:#0886a0; --soft:#e8f5f8;
  position:relative; isolation:isolate; overflow:hidden; min-width:0; min-height:260px;
  display:grid; grid-template-columns:minmax(0,1fr) 52px; grid-template-rows:1fr auto;
  column-gap:14px; padding:25px 26px 24px; background:#fff; border-radius:13px;
  box-shadow:0 5px 10px rgba(240,120,30,.22),0 12px 18px -6px rgba(235,105,15,.55);
  transition:transform .25s ease,box-shadow .25s ease;
}
.codeal-result-card--orange { --accent:#ae590c; --soft:#fff2e4; }
.codeal-result-card--yellow { --accent:#886308; --soft:#fff7dc; }
.codeal-result-card--blue { --accent:#1b638b; --soft:#eaf4fa; }

/* Colored circle in the background. */
.codeal-result-card::before {
  content:""; position:absolute; top:-112px; right:-97px; width:205px; height:205px;
  border:40px solid var(--soft); border-radius:50%; z-index:0; pointer-events:none;
  transition:transform .3s ease;
}

/* Title on the left, icon on the right. No title/icon overlap. */
.codeal-card__header { grid-area:1 / 2; position:relative; z-index:1; }
.codeal-card__icon-wrap {
  display:grid; place-items:center; width:52px; height:52px;
  border-radius:15px; background:var(--soft); color:var(--accent);
}
.codeal-card__icon-svg { display:block; }
.codeal-card__body { grid-area:1 / 1; position:relative; z-index:1; min-width:0; }
.codeal-result-card h3.codeal-card__title {
  margin:0; padding:0; font-size:20px; font-weight:700; line-height:1.38;
  letter-spacing:-.02em; color:#253843; overflow-wrap:break-word;
}
.codeal-card__type, .codeal-card__description, .codeal-card__arrow { display:none; }

/* Bottom link / coming-soon state. */
.codeal-card__footer {
  grid-area:2 / 1 / 3 / 3; display:flex; flex-wrap:wrap; align-items:center; gap:12px;
  margin-top:22px; padding-top:17px; border-top:1px solid #e8eff2;
}
.codeal-card__link, .codeal-card__secondary {
  color:var(--accent) !important; font-size:13px; font-weight:700; text-decoration:none !important;
}
/* Expand the main link to cover the entire card. */
.codeal-card__link::after { content:""; position:absolute; inset:0; z-index:3; }
/* Let a second link (e.g. pocket cards PDF) remain independently clickable. */
.codeal-card__secondary { position:relative; z-index:4; text-decoration:underline !important; }
.codeal-card__coming-soon {
  padding:8px 11px; border-radius:30px; background:#f4f7f8;
  color:#677985; font-size:12px; font-weight:700;
}
.codeal-card__status-dot {
  display:inline-block; width:7px; height:7px; margin-right:7px;
  border-radius:50%; background:#bdc8cf;
}

/* Hover and keyboard focus. */
.codeal-result-card:has(.codeal-card__link) { cursor:pointer; }
.codeal-result-card:hover {
  transform:translateY(-5px);
  box-shadow:0 9px 16px rgba(240,120,30,.28),0 18px 27px -6px rgba(235,105,15,.65);
}
.codeal-result-card:hover::before { transform:translate(-5px,8px); }
.codeal-result-card:focus-within { outline:3px solid var(--accent); outline-offset:3px; }
@media (max-width:980px) {
  .codeal-result-grid, .codeal-result-grid--4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .codeal-result-grid, .codeal-result-grid--2, .codeal-result-grid--4 { grid-template-columns:1fr; gap:16px; }
  .codeal-result-card { min-height:230px; padding:22px; }
  .codeal-result-card h3.codeal-card__title { font-size:19px; }
}
@media (prefers-reduced-motion:reduce) {
  .codeal-result-card, .codeal-result-card::before { transition:none; }
  .codeal-result-card:hover { transform:none; }
}
