/* IC Hero v2 utility layer (Tailwind-like) */
.ic-hero-root{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;padding-top:4rem}
.ic-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--from,#0ea5e9),var(--via,#2563eb),var(--to,#1e40af))}
.ic-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,var(--overlay,.2))}
.ic-container{max-width:72rem;margin-left:auto;margin-right:auto;padding:0 1rem}
.ic-text-center{text-align:center}
.ic-relative{position:relative}.ic-z10{z-index:10}
.ic-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:9999px;font-weight:600;padding:.5rem 1rem;font-size:1.125rem;margin-bottom:1.5rem}
.ic-animate-pulse{animation:ic-pulse 2s ease-in-out infinite}
@keyframes ic-pulse{0%,100%{opacity:1}50%{opacity:.6}}
.ic-hero-h1{font-weight:700;line-height:1.1;margin-bottom:1rem;font-size:3rem}
@media (min-width:768px){.ic-hero-h1{font-size:4.5rem}}
.ic-inline-block{display:inline-block}
.ic-animate-fade-in{opacity:0;animation:ic-fade-in .8s ease forwards}
.ic-delay-200{animation-delay:.2s}.ic-delay-500{animation-delay:.5s}
@keyframes ic-fade-in{to{opacity:1}}

/* Gradient text line */
.ic-hero-gradient-line{display:block;background:linear-gradient(90deg,#facc15,#fb923c,#f87171);-webkit-background-clip:text;background-clip:text;color:transparent;animation:ic-gradient-move 6s linear infinite}
@keyframes ic-gradient-move{0%{filter:hue-rotate(0)}100%{filter:hue-rotate(360deg)}}

.ic-hero-desc{font-size:1.25rem;max-width:48rem;margin:0 auto 2rem;color:#cfe5ff}
@media (min-width:768px){.ic-hero-desc{font-size:1.5rem}}

/* Buttons */
.ic-cta-row{display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center;margin-bottom:3rem}
@media (min-width:640px){.ic-cta-row{flex-direction:row}}
.ic-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.75rem;padding:.75rem 2rem;border-radius:9999px;font-weight:600;transition:transform .2s ease, box-shadow .2s ease, background .2s ease}
.ic-btn-primary{background:#fff;color:#0f172a;box-shadow:0 10px 25px rgba(0,0,0,.25)}
.ic-btn-primary:hover{transform:scale(1.05);background:#f1f5f9}
.ic-btn-secondary{border:1px solid #fff;background:#ff8402;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.2)}
.ic-btn-secondary:hover{transform:scale(1.05);box-shadow:0 10px 24px rgba(0,0,0,.28)}
.ic-flex-center{display:flex;align-items:center}
.ic-ml2{margin-left:.5rem}
.ic-group-hover-shift{transition:transform .2s ease}
.ic-group:hover .ic-group-hover-shift{transform:translateX(.25rem)}

/* Icons */
.ic-icon{width:1.25rem;height:1.25rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Decorative blobs */
.ic-blob{position:absolute;border-radius:9999px;filter:blur(48px);opacity:.6;animation:ic-pulse 6s infinite}
.ic-blob-a{top:25%;left:25%;width:18rem;height:18rem;background:linear-gradient(90deg,rgba(255,255,255,.1),rgba(125,211,252,.1))}
.ic-blob-b{bottom:20%;right:20%;width:24rem;height:24rem;background:linear-gradient(90deg,rgba(125,211,252,.1),rgba(103,232,249,.1));animation-delay:1s}

/* Stats grid — equal height cards, no stretch bugs */
.ic-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;max-width:56rem;margin:0 auto}
@media (min-width:768px){.ic-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ic-stat-card{background:rgba(255,255,255,.1);backdrop-filter:blur(6px);border-radius:1rem;transition:transform .3s ease, background .3s ease;overflow:hidden}
.ic-stat-card:hover{transform:scale(1.05);background:rgba(255,255,255,.2)}
.ic-stat-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:10rem;padding:1rem 1.25rem;text-align:center}
.ic-stat-icon-wrap{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;margin:0 auto .5rem;background:rgba(255,255,255,.12);border-radius:1rem}
.ic-stat-value{font-size:1.75rem;font-weight:800;color:#fde68a;margin-bottom:.25rem}
.ic-stat-label{font-size:.95rem;color:#bfdbfe}

/* Utility */
.ic-z10{z-index:10}
