/* ==========================================================
   KARE Core - Stats Component
   Pistachio Premium Compact
   Production Optimized
========================================================== */

.stats-section{
    position:relative;
    overflow:hidden;
    padding:58px 0 62px;
    background:
        radial-gradient(circle at 12% 20%,rgba(132,204,22,.34),transparent 28%),
        radial-gradient(circle at 88% 18%,rgba(45,212,191,.26),transparent 30%),
        radial-gradient(circle at 76% 88%,rgba(250,204,21,.18),transparent 32%),
        linear-gradient(135deg,#f7fee7 0%,#ecfdf5 52%,#fefce8 100%);
}

.stats-section::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(63,98,18,.12) 1px,transparent 1px);
    background-size:15px 15px;
    opacity:.07;
    pointer-events:none;
}

.stats-section .container{
    position:relative;
    z-index:2;
}

.stats-title{
    max-width:700px;
    margin:0 auto 30px;
    text-align:center;
}

.stats-title span{
    display:inline-flex;
    padding:7px 16px;
    border:1px solid rgba(101,163,13,.18);
    border-radius:999px;
    background:rgba(255,255,255,.74);
    color:#3f6212;
    font-size:11.5px;
    font-weight:900;
    letter-spacing:.18em;
}

.stats-title h2{
    margin:14px 0 10px;
    color:#162033;
    font-size:clamp(28px,2.8vw,36px);
    line-height:1.12;
    font-weight:900;
    letter-spacing:-.04em;
}

.stats-title p{
    max-width:620px;
    margin:0 auto;
    color:#52637a;
    font-size:15px;
    line-height:1.55;
}

.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    width:min(1080px,92%);
    margin-inline:auto;
}

.stat-box{
    position:relative;
    overflow:hidden;
    min-height:200px;
    padding:26px 22px 24px;
    border:1px solid rgba(255,255,255,.88);
    border-radius:26px;
    background:rgba(255,255,255,.74);
    box-shadow:
        0 16px 46px rgba(22,101,52,.09),
        inset 0 1px 0 rgba(255,255,255,.80);
    text-align:center;
    backdrop-filter:blur(18px);
    transition:transform .35s ease,background-color .35s ease,box-shadow .35s ease;
}

.stat-box::before,
.stat-box::after{
    content:"";
    position:absolute;
    pointer-events:none;
}

.stat-box::before{
    top:0;
    left:50%;
    width:76px;
    height:3px;
    border-radius:0 0 999px 999px;
    transform:translateX(-50%);
}

.stat-box::after{
    top:-88px;
    right:-88px;
    width:160px;
    height:160px;
    border-radius:50%;
    opacity:.55;
    transition:transform .35s ease,opacity .35s ease;
}

.stat-box:hover{
    transform:translateY(-7px);
    background:rgba(255,255,255,.88);
    box-shadow:
        0 26px 68px rgba(22,101,52,.13),
        inset 0 1px 0 rgba(255,255,255,.86);
}

.stat-box:hover::after{
    transform:scale(1.14);
    opacity:.9;
}

.stat-pink::before,
.stat-purple::before{
    background:linear-gradient(90deg,#84cc16,#14b8a6);
}

.stat-gold::before{
    background:linear-gradient(90deg,#facc15,#84cc16);
}

.stat-green::before{
    background:linear-gradient(90deg,#14b8a6,#22c55e);
}

.stat-pink::after,
.stat-purple::after{
    background:radial-gradient(circle,rgba(132,204,22,.24),transparent 68%);
}

.stat-gold::after{
    background:radial-gradient(circle,rgba(250,204,21,.22),transparent 68%);
}

.stat-green::after{
    background:radial-gradient(circle,rgba(20,184,166,.22),transparent 68%);
}

.stat-icon,
.stat-box strong,
.stat-box p{
    position:relative;
    z-index:2;
}

.stat-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    margin:0 auto 18px;
    border:1px solid rgba(255,255,255,.86);
    border-radius:18px;
    background:rgba(255,255,255,.72);
    font-size:23px;
    box-shadow:
        0 12px 28px rgba(22,101,52,.08),
        inset 0 1px 0 rgba(255,255,255,.82);
}

.stat-box strong{
    display:block;
    color:#365314;
    font-size:clamp(34px,3vw,43px);
    line-height:1;
    font-weight:950;
    letter-spacing:-.045em;
}

.stat-box p{
    margin:10px 0 0;
    color:#162033;
    font-size:14.5px;
    font-weight:850;
    line-height:1.45;
}

/* Responsive */
@media (max-width:1100px){
    .stats-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:767px){
    .stats-section{
        padding:58px 0;
    }

    .stats-title{
        margin-bottom:28px;
    }

    .stats-grid{
        grid-template-columns:1fr;
    }

    .stat-box{
        min-height:auto;
        padding:26px 22px;
    }
}