/* Scoped defaults: Elementor widget selectors can override these values. */
.ncp .ncp-course-grid{align-items:stretch;gap:24px}
.ncp .ncp-columns-1{grid-template-columns:minmax(0,1fr)}
.ncp .ncp-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ncp .ncp-columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ncp .ncp-columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ncp-listing-card{min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 8px 24px #2528330d;font-size:16px;color:#4b5563}
.ncp-listing-media{padding:18px 18px 0}
.ncp-listing-image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:14px}
.ncp-listing-placeholder{display:grid;place-items:center;aspect-ratio:16/10;padding:24px;background:#f7f2eb;border-radius:14px;color:var(--ncp-accent);font-size:20px;font-weight:700;text-align:center;overflow-wrap:anywhere}
.ncp-listing-body{display:flex;flex:1;flex-direction:column;padding:24px;min-width:0}
:where(.ncp) .ncp-listing-title,:where(.ncp) .ncp-listing-title a{font-family:system-ui,sans-serif!important;font-size:22px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:normal!important;text-transform:none!important;color:#252833;overflow-wrap:anywhere}
:where(.ncp) .ncp-listing-title{margin:0 0 18px!important}
.ncp-card-badges{margin:0 0 14px}
.ncp-list-badge{display:inline-block;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
:where(.ncp) .ncp-listing-fee-heading{font:700 1em/1.4 system-ui,sans-serif!important;margin:0 0 12px!important;color:inherit}
.ncp .ncp-listing-fees{list-style:none;padding:0;margin:0 0 20px;font-size:1em;line-height:1.55}
.ncp-listing-fees li{display:flex;gap:8px;margin:0 0 8px;overflow-wrap:anywhere}
.ncp-listing-fees li>span:first-child{color:var(--ncp-accent)}
.ncp-listing-meta{display:grid;gap:10px;margin:0 0 22px;font-size:1em}
.ncp-listing-meta-row{display:flex;gap:10px;align-items:start;padding:10px;background:#f8f9fa;border-radius:10px;overflow-wrap:anywhere}
.ncp-listing-meta-row>span:last-child{min-width:0}
.ncp-listing-meta-icon{flex-shrink:0;color:var(--ncp-accent)}
.ncp-listing-meta-row small{display:block;font-size:.8em;line-height:1.5}
.ncp-listing-deadline,.ncp-listing-contact{display:block;font-size:1em;line-height:1.45;color:inherit}
:where(.ncp) .ncp-listing-cta{margin-top:auto;width:100%;min-height:48px;border-radius:10px;font-size:17px!important}
.ncp-listing-card .ncp-eyebrow{font-size:12px;letter-spacing:.08em;margin-bottom:12px;overflow-wrap:anywhere}
.ncp-listing-card .ncp-price{font-size:26px}
@media(max-width:960px){.ncp .ncp-columns-3,.ncp .ncp-columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ncp .ncp-course-grid{grid-template-columns:minmax(0,1fr)}.ncp-listing-body{padding:20px}}
.ncp [hidden]{display:none!important}
.ncp .ncp-listing-cta{border-radius:10px}
