/* CTA card — shared across the site */
.cta-strip{background:var(--mag);margin:0 24px 48px;border-radius:14px;padding:28px 24px;text-align:center;}
.cta-strip h2{font-family:var(--ff-disp);font-size:20px;font-weight:800;color:#fff;margin-bottom:8px;}
.cta-strip p{font-size:13px;color:rgba(255,255,255,.75);margin-bottom:20px;}
.cta-strip a{display:inline-flex;align-items:center;gap:6px; background:#fff;color:var(--mag);border-radius:100px; padding:11px 22px;font-size:13px;font-weight:700;}
.cta-inner h2{ font-family:var(--ff-disp);font-size:clamp(22px,6vw,32px); font-weight:900;letter-spacing:-1.2px; color:transparent; background:linear-gradient(135deg,#fff 30%,rgba(255,255,255,.55) 100%); -webkit-background-clip:text;background-clip:text; -webkit-text-fill-color:transparent; line-height:1.05;margin-bottom:20px; }
.cta-section { padding: 0 24px 64px; margin-top: 64px; }
.cta-card-wrap { position: relative; border-radius: 20px; border: 1.5px solid rgba(232,41,74,.7); overflow: hidden; min-height: 220px; animation: neon-pulse 3s ease-in-out infinite; background: #0F0E0C; }
@keyframes neon-pulse { 0%,100% { border-color: rgba(232,41,74,.7); box-shadow: 0 0 8px rgba(232,41,74,.2); } 50% { border-color: rgba(232,41,74,1); box-shadow: 0 0 16px rgba(232,41,74,.4); } }
.cta-bg-video { position: absolute; top:0; left:0; width:100%; height:100%; object-fit: cover; z-index: 0; opacity: 1; }
.cta-video-overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(135deg, #0F0E0C 0%, #0F0E0C 25%, rgba(15,14,12,.88) 38%, rgba(15,14,12,.5) 50%, rgba(15,14,12,.15) 75%, transparent 100%); }
.cta-inner { position: relative; z-index: 2; padding: 48px 28px 40px; }
.cta-inner h2 { font-family: var(--ff-disp); font-size: clamp(28px,8vw,38px); font-weight: 900; letter-spacing: -1.5px; line-height: 1.0; color: transparent; background: linear-gradient(135deg,#fff 30%,rgba(255,255,255,.55) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; margin-bottom: 24px; }
.cta-btn { display: inline-flex; align-items: center; gap: 8px; background: #fff; color: #0F0E0C; font-family: var(--ff-body); font-size: 14px; font-weight: 700; padding: 12px 20px; border-radius: 100px; text-decoration: none; transition: background .15s; border: none; cursor: pointer; }
.cta-btn:hover { background: rgba(255,255,255,.88); }
.cta-btn-arrow { display:inline-flex; align-items:center; }
.cta-section{max-width:680px;}
.cta-section{max-width:680px;box-sizing:border-box;}
