/* Moonshine Capital partner channel + Arsenal expansion. Scoped additions. */
:root { --nc-black:#0b0d13; --nc-panel:#17191e; --nc-yellow:#ffd600; }
.lp-nav { gap:clamp(.6rem,1.3vw,1.3rem); }
.lp-nav-links { gap:clamp(.35rem,1vw,1.1rem); }
.lp-nav-links>a { font-size:clamp(.7rem,.87vw,.82rem); }
.nc-nav-dropdown { position:relative; align-self:stretch; display:flex; align-items:center; }
.nc-nav-dropdown>summary { display:flex; align-items:center; gap:.45rem; min-height:44px; padding:0 .22rem; list-style:none; font-size:clamp(.7rem,.87vw,.82rem); font-weight:850; white-space:nowrap; color:#58657f; cursor:pointer; }
.nc-nav-dropdown>summary::-webkit-details-marker { display:none; }
.nc-nav-dropdown>summary:hover,.nc-nav-dropdown[open]>summary { color:#3453ee; }
.nc-nav-dropdown>summary>span { transition:transform .2s ease; }
.nc-nav-dropdown[open]>summary>span { transform:rotate(180deg); }
.nc-dropdown-panel { position:absolute; top:calc(100% - 6px); left:50%; transform:translateX(-50%); z-index:120; width:min(345px,90vw); border:1px solid #e2e8fb; padding:.6rem; border-radius:19px; background:#fff; box-shadow:0 20px 55px #13244b2b; }
.nc-dropdown-panel a { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:46px; padding:.66rem .85rem; color:#273650; border-radius:10px; font-size:.81rem; line-height:1.45; font-weight:800; white-space:normal; }
.nc-dropdown-panel a:hover { background:#eef2ff; color:#3150e0; }
.nc-dropdown-panel .nc-all { color:#2947dc; background:#f0f3ff; margin-bottom:.35rem; }
.nc-mobile-dropdown { margin:.35rem 0; border-top:1px solid #edf0f8; border-bottom:1px solid #edf0f8; }
.nc-mobile-dropdown summary { min-height:48px; display:flex; align-items:center; justify-content:space-between; font-weight:900; color:#203153; cursor:pointer; list-style:none; }
.nc-mobile-dropdown summary::-webkit-details-marker { display:none; }
.nc-mobile-dropdown .nc-mobile-items { padding:0 0 .55rem .8rem; }
.lp-mobile-menu .nc-mobile-items a { min-height:44px; color:#4f5f80; font-weight:750; border-color:#f1f2f9; }
.nc-programs-section { background:#090b0f; color:#fff; }
.nc-program-header { align-items:end; margin-bottom:2.6rem; }
.nc-program-header h2,.nc-program-header h2 em { color:#fff; }
.nc-program-header h2 em { color:var(--nc-yellow); }
.nc-program-header .lp-kicker { color:var(--nc-yellow); }
.nc-program-header p { color:#aab0be; }
.nc-program-header .lp-program-count { color:#19191d; background:var(--nc-yellow); border-color:var(--nc-yellow); }
.nc-featured { position:relative; isolation:isolate; min-height:360px; padding:clamp(2rem,4.2vw,3.9rem); margin:0 0 2rem; background:radial-gradient(ellipse at 92% 30%,#5e550624,transparent 46%),linear-gradient(135deg,#1d1e22,#101114); border:2px solid var(--nc-yellow); border-radius:21px; box-shadow:0 12px 45px #0009; overflow:hidden; }
.nc-featured-tag { position:absolute; right:0; top:0; color:#111; background:var(--nc-yellow); padding:.8rem 1.5rem; border-radius:0 0 0 15px; font-size:.72rem; letter-spacing:.06em; font-weight:950; }
.nc-featured-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(160px,.65fr); align-items:center; gap:2rem; }
.nc-featured-eyebrow { color:#ffdc52; font-weight:900; font-size:.69rem; letter-spacing:.15em; }
.nc-featured h3 { max-width:660px; margin:.8rem 0 1.1rem; font:900 clamp(2rem,3.6vw,3.7rem)/1.13 Manrope,Arial,sans-serif; letter-spacing:-.07em; color:#fff; }
.nc-featured p { max-width:650px; color:#c4c6ce; line-height:1.75; font-size:1rem; }
.nc-featured-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1rem 1.4rem; margin-top:1.8rem; }
.nc-featured-primary { display:inline-flex; justify-content:center; align-items:center; gap:.9rem; min-height:54px; padding:.85rem 1.45rem; color:#17191e; background:var(--nc-yellow); font-size:.87rem; font-weight:950; border-radius:9px; box-shadow:0 9px 28px #ffd60025; transition:transform .2s,background .2s; }
.nc-featured-primary:hover { background:#ffe952; color:#17191e; transform:translateY(-2px); }
.nc-featured-secondary { display:inline-flex; align-items:center; min-height:44px; font-size:.84rem; font-weight:800; color:#f7f7f7; }
.nc-featured-secondary:hover { color:var(--nc-yellow); }
.nc-featured-mark { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:.5rem; color:var(--nc-yellow); text-align:center; min-width:0; }
.nc-featured-mark span { width:clamp(115px,17vw,235px); height:clamp(115px,17vw,235px); display:grid; place-items:center; border:2px solid #ffdc005c; border-radius:35px; background:linear-gradient(140deg,#332f0e,#111); font:900 clamp(3rem,6vw,7rem)/1 Manrope,Arial,sans-serif; letter-spacing:-.13em; transform:rotate(-7deg); }
.nc-featured-mark small { font-size:.59rem; letter-spacing:.17em; font-weight:900; color:#aaa58c; }
.nc-featured .nc-featured-disclosure { margin:1.65rem 0 0; font-size:.77rem; color:#abb0bb; }
.nc-provider-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.nc-provider-grid .lp-program { grid-column:auto; min-width:0; min-height:275px; border:1px solid #393a42; border-radius:12px; background:#17181b; color:#fff; box-shadow:none; padding:clamp(1.35rem,2.5vw,2rem); }
.nc-provider-grid .lp-program:hover { background:#1d1f23; transform:translateY(-5px); border-color:#f9d71f; box-shadow:0 18px 38px #0009; }
.nc-provider-grid .lp-program-icon { color:#151515; background:var(--nc-yellow); border-radius:10px; }
.nc-provider-grid .lp-tag { color:#a9b0c5; background:#252833; border:1px solid #343947; font-size:.63rem; }
.nc-provider-grid .lp-program h3 { color:#fff; font-size:clamp(1.3rem,2vw,1.75rem); font-weight:850; }
.nc-provider-grid .lp-program p { color:#afb5c4; line-height:1.7; }
.nc-provider-grid .lp-program-bottom { display:flex; flex-wrap:wrap; gap:.4rem .9rem; }
.nc-provider-grid .lp-program-bottom>a:first-child { min-height:48px; width:100%; display:flex; align-items:center; justify-content:center; color:#fff; text-align:center; padding:.67rem 1rem; border:1px solid #484a54; border-radius:7px; font-weight:900; }
.nc-provider-grid .lp-program-bottom>a:first-child:hover { color:#121316; border-color:var(--nc-yellow); background:var(--nc-yellow); }
.nc-provider-grid .lp-program-bottom .nc-provider-secondary { color:#a9b0c1; font-size:.72rem; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.nc-programs-section .lp-directory-note { color:#aeb4bf; }
.nc-programs-section .lp-directory-note a { color:#ffe34e; }
.nc-hub-page { background:#f6f8fc; color:#17223d; min-height:75vh; }
.nc-hub-hero { color:#fff; background:linear-gradient(120deg,#111a36,#231851); padding:clamp(4.5rem,7vw,7.5rem) 0; }
.nc-hub-hero .lp-kicker { color:#ffdd46; }
.nc-hub-hero h1 { max-width:880px; margin:0 0 1.25rem; font:900 clamp(2.9rem,6vw,5.5rem)/1.08 Manrope,Arial,sans-serif; letter-spacing:-.075em; }
.nc-hub-hero h1 em { color:#ffcf2b; font-style:normal; }
.nc-hub-hero p { max-width:780px; font-size:clamp(1rem,1.45vw,1.17rem); color:#c5cee6; line-height:1.8; }
.nc-hub-hero .nc-hub-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:2rem; }
.nc-hub-section { padding:clamp(4rem,7vw,6rem) 0; }
.nc-hub-section h2 { font:900 clamp(2.1rem,4vw,3.3rem)/1.17 Manrope,Arial,sans-serif; letter-spacing:-.065em; margin:0 0 1rem; }
.nc-hub-lead { max-width:780px; color:#68768d; line-height:1.75; margin:0 0 2rem; }
.nc-hub-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; }
.nc-hub-card { display:flex; flex-direction:column; gap:1rem; min-height:225px; min-width:0; border:1px solid #e2e8f6; border-radius:20px; background:#fff; padding:clamp(1.4rem,2.7vw,2.2rem); box-shadow:0 8px 26px #18295a0a; transition:transform .22s,box-shadow .22s; }
.nc-hub-card:hover { transform:translateY(-4px); box-shadow:0 17px 40px #1628551c; }
.nc-hub-card .nc-card-kicker { color:#455ff0; letter-spacing:.13em; font-weight:950; font-size:.69rem; }
.nc-hub-card h3 { margin:0; color:#14203b; font:900 clamp(1.24rem,2vw,1.58rem)/1.2 Manrope,Arial,sans-serif; letter-spacing:-.05em; }
.nc-hub-card p { color:#6a758d; line-height:1.75; font-size:.9rem; margin:0; }
.nc-hub-card>a,.nc-hub-card .nc-card-link { margin-top:auto; min-height:44px; display:inline-flex; align-items:center; gap:10px; color:#3555e8; font-size:.88rem; font-weight:900; }
.nc-hub-card>a:hover { color:#5d39c5; }
.nc-hub-band { background:#111c3a; color:#fff; padding:3rem 0; }
.nc-hub-band-inner { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1.5rem; }
.nc-hub-band h2 { color:#fff; margin:0 0 .55rem; font:900 clamp(1.7rem,3vw,2.5rem)/1.2 Manrope,Arial,sans-serif; letter-spacing:-.06em; }
.nc-hub-band p { color:#b0bedc; max-width:680px; margin:0; line-height:1.65; }
.nc-context { color:#64708a; font-size:.82rem; line-height:1.7; }
.nc-path { background:#fff; }
.nc-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; }
.nc-step { border-top:4px solid #4861e4; background:#f2f5fc; border-radius:5px 5px 17px 17px; padding:1.65rem; }
.nc-step strong { font:900 1.05rem/1.3 Manrope,Arial,sans-serif; color:#192849; }
.nc-step p { margin:.7rem 0 0; font-size:.89rem; color:#65718b; line-height:1.7; }
.nc-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:1150px) { .lp-nav-links { gap:.35rem; } }
@media(max-width:940px) { .nc-nav-dropdown { display:none; } .nc-provider-grid,.nc-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
 .nc-provider-grid,.nc-hub-grid,.nc-steps { grid-template-columns:1fr; }
 .nc-featured-layout { grid-template-columns:1fr; }
 .nc-featured { padding:3.2rem 1.3rem 1.7rem; }
 .nc-featured-mark { display:none; }
 .nc-featured h3 { font-size:clamp(2rem,9vw,3.1rem); }
 .nc-featured-tag { padding:.55rem .9rem; font-size:.58rem; }
 .nc-featured-primary { width:100%; }
 .nc-provider-grid .lp-program { min-height:220px; }
 .nc-hub-band-inner { display:block; }
 .nc-hub-band .lp-btn { margin-top:1.3rem; }
}
@media(prefers-reduced-motion:reduce) {
 .nc-provider-grid .lp-program,.nc-hub-card,.nc-featured-primary { transition:none; }
 .nc-provider-grid .lp-program:hover,.nc-hub-card:hover,.nc-featured-primary:hover { transform:none; }
}

/* Secondary route navbar adaptation */
.site-header .nc-dynamic-dropdown { align-self:center; }
.site-header .nc-dynamic-dropdown .nc-dropdown-panel { left:auto; right:-70px; transform:none; }
.site-header .nav-actions { align-items:center; }
@media(max-width:1120px) {
 .site-header .nc-dynamic-dropdown,.site-header .nc-nav-extra { display:none; }
}
