/* Nasci Cijfers (nasci-counters) */
.nasci-counters{
  position:relative;
  padding:var(--nc-pad,80px) 40px;
  background:linear-gradient(180deg,var(--nc-bg1,#F7FAF4) 0%,var(--nc-bg2,#F1F6EC) 100%);
  overflow:hidden;
  color:#0C2721;
  font-family:'Satoshi',ui-sans-serif,system-ui,sans-serif;
}
.nasci-counters *{margin:0;padding:0;box-sizing:border-box;}
.nasci-counters::before{
  content:'';position:absolute;top:-200px;right:-150px;
  width:500px;height:500px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--nc-accent,#90E509) 12%,transparent) 0%,transparent 60%);
}
.nasci-counters::after{
  content:'';position:absolute;bottom:-300px;left:-200px;
  width:600px;height:600px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--nc-accent,#90E509) 7%,transparent) 0%,transparent 60%);
}
.nasci-counters-inner{position:relative;max-width:var(--nc-max,1350px);margin:0 auto;z-index:1;}

.nasci-counters-grid{
  position:relative;
  display:grid;
  grid-template-columns:var(--nc-grid,1.4fr 1fr 1fr 1fr);
  gap:0;
  border-radius:24px;overflow:hidden;
  background:var(--nc-kaart,#fff);
  box-shadow:0 26px 70px rgba(12,39,33,.12);
}
/* gradient hairline rondom de kaart */
.nasci-counters-grid::after{
  content:'';position:absolute;inset:0;z-index:5;
  border-radius:24px;padding:1px;
  background:linear-gradient(200deg,rgba(12,39,33,.1),rgba(12,39,33,.03) 45%,color-mix(in srgb,var(--nc-accent,#90E509) 45%,transparent));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}

.nasci-counter-card{
  position:relative;min-width:0;
  padding:48px 36px;
  border-right:1px solid rgba(12,39,33,.09);
  transition:background-color .4s cubic-bezier(.25,.46,.45,.94);
  overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;
  min-height:260px;
}
.nasci-counter-card:last-child{border-right:none;}
/* lime lijn die over de bovenrand groeit bij hover */
.nasci-counter-card::after{
  content:'';position:absolute;left:0;right:0;top:0;height:3px;z-index:3;
  background:linear-gradient(90deg,#82DB05,#A4EF23);
  transform:scaleX(0);transform-origin:left;
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
}
.nasci-counter-card:hover::after{transform:scaleX(1);}
.nasci-counter-card:not(.featured):hover{background:color-mix(in srgb,var(--nc-accent,#90E509) 5%,transparent);}

.nasci-counter-card.featured{
  background:linear-gradient(160deg,#123B31 0%,#0E2E26 55%,#081F1A 100%);
  color:#fff;
}
.nasci-counter-card.featured::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--nc-accent,#90E509) 22%,transparent) 0%,transparent 55%),
    radial-gradient(circle at 10% 88%,color-mix(in srgb,var(--nc-accent,#90E509) 12%,transparent) 0%,transparent 55%);
}
.nasci-counter-card.featured::after{
  background:linear-gradient(90deg,#D9FF7A,var(--nc-accent,#90E509));
}

.nasci-counter-body{position:relative;z-index:1;}
.nasci-counter-number-wrap{
  display:flex;align-items:baseline;gap:4px;margin-bottom:20px;
  font-family:'Korataki','Satoshi',ui-sans-serif,sans-serif;
  font-weight:900;line-height:.9;font-variant-numeric:tabular-nums;
  transition:transform .4s cubic-bezier(.22,.61,.36,1);
}
.nasci-counter-card:hover .nasci-counter-number-wrap{transform:translateY(-3px);}
.nasci-counter-number{
  font-size:clamp(48px,5.5vw,76px);
  color:var(--nc-getal,#0C2721);
  letter-spacing:-.04em;
}
.nasci-counter-card.featured .nasci-counter-number{
  background:linear-gradient(120deg,#fff 0%,#D9FF7A 46%,var(--nc-accent,#90E509) 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.nasci-counter-suffix{
  font-size:clamp(24px,3vw,40px);
  color:var(--nc-achter,var(--nc-accent,#90E509));
  text-shadow:0 0 18px color-mix(in srgb,var(--nc-accent,#90E509) 25%,transparent);
}
.nasci-counter-label{
  font-size:15px;font-weight:900;letter-spacing:-.01em;margin-bottom:10px;
  color:var(--nc-label,#0C2721);
}
.nasci-counter-card.featured .nasci-counter-label{color:var(--nc-label,#fff);}
.nasci-counter-desc{
  font-size:13px;line-height:1.6;font-weight:400;
  color:var(--nc-tekst,rgba(12,39,33,.55));
}
.nasci-counter-card.featured .nasci-counter-desc{color:var(--nc-tekst,rgba(255,255,255,.6));}

/* Tablet */
@media(max-width:1024px){
  .nasci-counters{padding:var(--nc-pad,60px) 32px;}
  .nasci-counters-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .nasci-counter-card{
    border-right:1px solid rgba(12,39,33,.09);
    border-bottom:1px solid rgba(12,39,33,.09);
    min-height:220px;padding:36px 28px;
  }
  .nasci-counter-card:nth-child(2n){border-right:none;}
  .nasci-counter-card:nth-last-child(-n+2){border-bottom:none;}
}

/* Mobiel */
@media(max-width:600px){
  .nasci-counters{padding:var(--nc-pad,48px) 16px;}
  .nasci-counters-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .nasci-counter-card{min-height:auto;padding:24px 16px;}
  .nasci-counter-number-wrap{margin-bottom:12px;}
  .nasci-counter-number{font-size:34px;}
  .nasci-counter-suffix{font-size:19px;}
  /* gelijke hoogtes: labels en teksten krijgen twee regels ruimte */
  .nasci-counter-label{
    font-size:12.5px;line-height:1.3;margin-bottom:6px;
    min-height:calc(12.5px * 1.3 * 2);
    display:flex;align-items:flex-end;
  }
  .nasci-counter-desc{
    font-size:10.5px;line-height:1.5;
    min-height:calc(10.5px * 1.5 * 2);
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
}

@media(prefers-reduced-motion:reduce){
  .nasci-counter-card,.nasci-counter-card::after,.nasci-counter-number-wrap{transition:none;}
}
