/* NeuroPlanck Benefits Grid Widget */
.np-benefits { background: #0f1923; padding: 80px 0; position: relative; overflow: hidden; width: 100%; }
.np-benefits__container { max-width: 1200px; margin: 0 auto; padding: 0 48px; }
.np-benefits__header { text-align: center; margin-bottom: 48px; }
.np-benefits__dot-label { display: inline-block; font-family: 'Geologica', sans-serif; font-size: 12px; font-weight: 500; letter-spacing: 2px; color: rgba(255,255,255,0.5); margin-bottom: 10px; }
.np-benefits__title { font-family: 'Geologica', sans-serif; font-size: 42px; font-weight: 500; font-style: italic; line-height: 1.3; color: #fff; margin-bottom: 8px; }
.np-benefits__desc { font-family: 'Cabin', sans-serif; font-size: 15px; line-height: 1.7; color: rgba(255,255,255,0.45); }
.np-benefits__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.np-benefits__card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 10px; transition: transform 0.3s ease, box-shadow 0.3s ease; cursor: pointer; position: relative; overflow: hidden; }
.np-benefits__card:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 12px 32px rgba(0,0,0,0.3); }
.np-benefits__card-icon { width: 36px; height: 36px; border-radius: 10px; display: flex; align-items: center; justify-content: center; margin-bottom: 4px; }
.np-benefits__card-icon svg { width: 18px; height: 18px; }
.np-benefits__icon-img { width: 18px; height: 18px; object-fit: contain; }
.np-benefits__card-title { font-family: 'Geologica', sans-serif; font-size: 16px; font-weight: 600; }
.np-benefits__card-sub { font-family: 'Cabin', sans-serif; font-size: 13px; color: rgba(255,255,255,0.65); }

/* Elementor Overrides */
.elementor-widget-np_benefits { max-width: 100% !important; width: 100% !important; padding: 0 !important; }
.elementor-widget-np_benefits .elementor-widget-container { padding: 0 !important; margin: 0 !important; max-width: none !important; }

/* Responsive */
@media (max-width: 1100px) { .np-benefits__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 900px) { .np-benefits { padding: 60px 0; } .np-benefits__container { padding: 0 24px; } .np-benefits__title { font-size: 32px; } }
@media (max-width: 600px) { .np-benefits { padding: 40px 0; } .np-benefits__container { padding: 0 16px; } .np-benefits__title { font-size: 26px; } .np-benefits__grid { gap: 12px; } .np-benefits__card { padding: 18px; } }
