/* "Become a partner" section (parts/become-partner.php). Loaded only where it renders. */
.ncd-partners { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: clamp(22px, 3.5vw, 36px); border-radius: 24px; color: #fff; background: radial-gradient(900px 400px at 0% 0%, #4b276d 0%, #1b1030 55%, #0f0a1a 100%); }
.ncd-partners__glow { position: absolute; right: -120px; top: -140px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(201,162,74,.5), transparent 65%); filter: blur(20px); pointer-events: none; }
.ncd-partners__body, .ncd-partners__cta { position: relative; }
.ncd-partners__kicker { margin: 0 0 8px; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: #e7cf8a; }
.ncd-partners__title { margin: 0 0 8px; font-size: clamp(22px, 2.8vw, 32px); font-weight: 900; line-height: 1.05; letter-spacing: -.02em; color: #fff; }
.ncd-partners__text { margin: 0; max-width: 56ch; font-size: 14px; line-height: 1.6; color: rgba(255,255,255,.78); }
.ncd-partners__cta { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.ncd-partners__btn { display: inline-flex; align-items: center; justify-content: center; height: 50px; padding: 0 26px; border-radius: 999px; font-size: 15px; font-weight: 800; text-decoration: none; color: #1a1206; background: linear-gradient(135deg, #f1dc9a 0%, #c9a24a 55%, #b48b36 100%); box-shadow: 0 10px 28px rgba(201,162,74,.35); transition: transform 160ms ease, box-shadow 180ms ease; }
.ncd-partners__btn:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(201,162,74,.45); color: #1a1206; }
.ncd-partners__btn:active { transform: scale(.97); }

/* Compact: under the login card. */
.ncd-partners--compact { grid-template-columns: 1fr auto; align-items: center; gap: 16px; margin: 0 0 18px; padding: 22px 24px; border-radius: 18px; }
.ncd-partners--compact .ncd-partners__title { font-size: 20px; }
.ncd-partners--compact .ncd-partners__text { font-size: 13.5px; }
.ncd-partners--compact .ncd-partners__btn { height: 42px; padding: 0 20px; font-size: 14px; }

@media (max-width: 760px) {
	.ncd-partners { grid-template-columns: 1fr; gap: 20px; }
	.ncd-partners__btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .ncd-partners__btn { transition: none; } }

/* The login panel is a flex row; the compact section must take its own line under the card. */
.nc-panel { flex-wrap: wrap; }
.nc-panel .ncd-partners--compact { flex: 1 1 100%; width: 100%; order: -1; }
@media (max-width: 640px) { .ncd-partners--compact { grid-template-columns: 1fr; } }
