.nc-wrap{width:100%;box-sizing:border-box}
.nc-wrap *{box-sizing:border-box}
.nc-grid{display:grid;margin:0 auto;width:100%}

.nc-card{
	position:relative;display:flex;flex-direction:column;overflow:hidden;
	transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background-color .3s ease;
}
.nc-card-link{position:absolute;inset:0;z-index:3;text-decoration:none;box-shadow:none}
.nc-card-body{position:relative;z-index:2;display:flex;flex-direction:column;flex:1 1 auto}

.nc-icon{
	display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
	border-radius:50%;line-height:1;transition:background-color .3s ease,color .3s ease;
}
.nc-icon i{line-height:1}
.nc-icon svg{width:1em;height:1em;fill:currentColor}
.nc-icon img{max-width:100%;height:auto;display:block}

.nc-title{margin:0;line-height:1.3}
.nc-text{margin:0;line-height:1.5}
.nc-more{
	display:inline-flex;align-items:center;gap:8px;margin-top:auto;
	text-transform:uppercase;letter-spacing:.02em;text-decoration:none;
}
.nc-more-arrow{display:inline-flex;transition:transform .25s ease}
.nc-more-arrow svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nc-card:hover .nc-more-arrow{transform:translateX(4px)}

/* Image card */
.nc-card.nc-has-image{background-size:cover;background-position:center;background-repeat:no-repeat}
.nc-card.nc-has-image::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;transition:opacity .3s ease}

/* Responsive columns fallback (controls override these) */
@media (max-width:1024px){.nc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.nc-grid{grid-template-columns:1fr}}
