/* Key-module cards on a blue band, shared by the product pages.
   Bento rows of 2 then 3 cards; pastel icon tile per card (--bg / --ink set inline). */
.kmc-band{position:relative;isolation:isolate;overflow:hidden;border-radius:30px;padding:72px 48px 56px;color:#fff;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0/80px 80px,
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) 0 0/80px 80px,
    radial-gradient(120% 85% at 50% 0%,#17357a 0%,#0c1c45 55%,#08122b 100%)}
.kmc-top{text-align:center}
.kmc-kicker{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#9fb4e6}
.kmc-title{font-size:clamp(26px,3.4vw,40px);font-weight:700;margin-top:14px;text-wrap:balance;max-width:720px;margin-inline:auto;color:#fff}
.kmc-sub{font-size:17px;color:#aab7d6;margin-top:14px;max-width:560px;margin-inline:auto;text-wrap:pretty}

.kmc-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin-top:44px;text-align:left}
.kmc{grid-column:span 2;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:310px;padding:30px 30px 28px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:22px;color:#fff;text-decoration:none;
  transition:border-color .25s}
.kmc:nth-child(5n+1),.kmc:nth-child(5n+2){grid-column:span 3}
.kmc::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70%;z-index:-1;background:linear-gradient(to top,rgba(76,124,255,.22),rgba(76,124,255,0));opacity:0;transition:opacity .3s}
.kmc:hover{border-color:rgba(140,172,255,.35)}
.kmc:hover::after{opacity:.7}
.kmc-eye{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#9fb4e6}
.kmc-head{display:flex;align-items:center;gap:16px;margin-top:20px}
.kmc-ico{position:relative;flex:none;width:54px;height:54px;border-radius:12px;display:grid;place-items:center;background:var(--bg);color:var(--ink);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ink) 35%,transparent),0 0 0 3px rgba(255,255,255,.06)}
.kmc-ico i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--ink);opacity:.55}
.kmc-ico i:nth-child(1){left:5px;top:5px}
.kmc-ico i:nth-child(2){right:5px;top:5px}
.kmc-ico i:nth-child(3){left:5px;bottom:5px}
.kmc-ico i:nth-child(4){right:5px;bottom:5px}
.kmc h3{font-size:20px;font-weight:700;line-height:1.15;color:#fff;text-wrap:balance}
.kmc-desc{font-size:14.5px;color:#a9b5d1;line-height:1.5;margin-top:16px;max-width:600px;text-wrap:pretty}
.kmc-mods{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:22px}
.kmc-chip{display:inline-block;font-size:13px;font-weight:500;line-height:1.35;color:#dfe6f6;background:rgba(255,255,255,.08);padding:6px 12px;border-radius:999px;max-width:100%}
.kmc-chip span{all:unset}
@media (max-width:900px){
  .kmc-band{padding:56px 24px 40px}
  .kmc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kmc,.kmc:nth-child(5n+1),.kmc:nth-child(5n+2){grid-column:span 1}
  .kmc:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:640px){
  .kmc-band{padding:44px 14px 18px;border-radius:24px}
  .kmc-grid{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:32px}
  .kmc{min-height:0;padding:24px 22px 22px}
  }
@media (prefers-reduced-motion:reduce){ .kmc,.kmc::after,