/* Editorial benefit cards with restrained accents and aligned content. */
.cm-home-benefits { gap:18px; counter-reset:cm-benefit; align-items:stretch; }
.cm-home-benefits article { position:relative; counter-increment:cm-benefit; padding:28px 24px 26px; border:1px solid #b993df1e; border-radius:18px; background:linear-gradient(145deg,#b993df06,transparent 65%); box-shadow:none; }
.cm-home-benefits article::after { content:'0' counter(cm-benefit); position:absolute; top:31px; right:24px; color:#84738f; font:10px ui-monospace,monospace; letter-spacing:.08em; }
.cm-home-benefits article > i { display:grid; place-items:center; width:42px; height:42px; margin:0 0 28px; border-radius:12px; color:#c7a0ed; background:#bb8deb0c; font-size:18px; }
.cm-home-benefits article:nth-child(2) > i { color:#8cc5b2; background:#8cc5b20a; }
.cm-home-benefits article:nth-child(3) > i { color:#92b9df; background:#92b9df0a; }
.cm-home-benefits article:nth-child(4) > i { color:#cdb58e; background:#cdb58e0a; }
.cm-home-benefits h3 { margin:0 0 12px; max-width:240px; min-height:2.6em; color:#eee7f5; font-size:17px; line-height:1.3; font-weight:500; letter-spacing:-.02em; }
.cm-home-benefits p { margin:0; color:#a397af; font-size:13px; line-height:1.8; }
@media(max-width:900px) { .cm-home-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:580px) {
  .cm-home-benefits { grid-template-columns:1fr; gap:12px; }
  .cm-home-benefits article { padding:23px; }
  .cm-home-benefits article > i { margin-bottom:22px; }
  .cm-home-benefits h3 { min-height:0; max-width:none; }
}
