/* ===== Gradient Filled Icon System ===== */
.icon-wrap {
  --icon-from: #6c5ce7;
  --icon-to: #00b4d8;
  width: 52px; height: 52px; border-radius: 16px; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--icon-from), var(--icon-to));
  box-shadow: 0 10px 28px rgba(108, 92, 231, 0.22);
}
.icon-wrap svg {
  width: 26px; height: 26px;
  fill: #fff;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.12));
}
.icon-wrap--lg {
  width: 64px; height: 64px; border-radius: 20px;
}
.icon-wrap--lg svg { width: 30px; height: 30px; }
.icon-wrap--circle { border-radius: 50%; }
.icon-wrap--sm {
  width: 36px; height: 36px; border-radius: 12px;
}
.icon-wrap--sm svg { width: 18px; height: 18px; }

.icon-wrap--purple { --icon-from: #7c6cf0; --icon-to: #a78bfa; box-shadow: 0 10px 28px rgba(124, 108, 240, 0.22); }
.icon-wrap--blue { --icon-from: #0096c7; --icon-to: #00b4d8; box-shadow: 0 10px 28px rgba(0, 150, 199, 0.22); }
.icon-wrap--cyan { --icon-from: #05c58f; --icon-to: #06d6a0; box-shadow: 0 10px 28px rgba(5, 197, 143, 0.22); }
.icon-wrap--pink { --icon-from: #d63384; --icon-to: #e84393; box-shadow: 0 10px 28px rgba(214, 51, 132, 0.22); }
.icon-wrap--orange { --icon-from: #e67e22; --icon-to: #f39c12; box-shadow: 0 10px 28px rgba(230, 126, 34, 0.22); }
.icon-wrap--teal { --icon-from: #16a085; --icon-to: #1abc9c; box-shadow: 0 10px 28px rgba(22, 160, 133, 0.22); }
.icon-wrap--violet { --icon-from: #6c5ce7; --icon-to: #8b5cf6; box-shadow: 0 10px 28px rgba(108, 92, 231, 0.22); }

.feature-card .icon-wrap { margin-bottom: 20px; }
.adv-card .adv-icon,
.policy-card .pc-icon,
.support-card .s-icon,
.value-card .v-icon { display: flex; justify-content: center; margin: 0 auto 20px; }
.policy-card .pc-icon,
.support-card .s-icon { margin-bottom: 16px; }
.value-card .v-icon { margin-bottom: 14px; }
.adv-card .icon-wrap,
.policy-card .icon-wrap,
.support-card .icon-wrap,
.value-card .icon-wrap { margin: 0; }
