﻿.campaign-signup{padding:80px 0;background:#f3eff4}.campaign-signup .campaign-signup-wrapper{max-width:600px;margin:0 auto;background:#fff;padding:60px 40px;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.08)}.campaign-signup .campaign-phase{display:none}.campaign-signup .campaign-phase.active{display:block;animation:fadeIn .4s ease-in}.campaign-signup .campaign-confirmation{text-align:center;margin-bottom:32px}.campaign-signup .campaign-confirmation .success-checkmark{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;margin-bottom:16px;background:#22c55e;color:#fff;font-size:36px;font-weight:bold;border-radius:50%}.campaign-signup .campaign-confirmation .confirmation-title{font-family:"EditorsNoteDisplay",serif;font-size:28px;color:#0b1c32;margin-bottom:12px;text-wrap:balance}.campaign-signup .campaign-confirmation .confirmation-title i{font-style:italic}.campaign-signup .campaign-confirmation .confirmation-text{font-size:16px;color:#374151;line-height:1.6;text-wrap:balance}.campaign-signup .campaign-confirmation .confirmation-text i{font-style:italic}.campaign-signup .campaign-divider{height:1px;background:linear-gradient(to right, transparent, #e5e7eb 20%, #e5e7eb 80%, transparent);margin:40px 0}.campaign-signup .campaign-header{text-align:center;margin-bottom:32px}.campaign-signup .campaign-header .campaign-title{font-family:"EditorsNoteDisplay",serif;font-size:48px;line-height:1.2;color:#0b1c32;margin-bottom:16px;text-wrap:balance}.campaign-signup .campaign-header .campaign-title i{color:#ef404d;font-style:italic}.campaign-signup .campaign-header .campaign-subtitle{font-size:18px;color:#666;line-height:1.5;text-wrap:balance}.campaign-signup .campaign-header .campaign-subtitle i{font-style:italic}.campaign-signup .campaign-header .success-icon{width:80px;height:80px;line-height:80px;margin:0 auto 24px;background:#22c55e;color:#fff;font-size:48px;border-radius:50%}.campaign-signup .campaign-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width: 768px){.campaign-signup .campaign-form .form-row{grid-template-columns:1fr}}.campaign-signup .campaign-form .form-checkbox{display:flex;align-items:center;gap:12px;margin-bottom:28px;font-family:"Poppins",sans-serif;font-size:16px;line-height:1.5}.campaign-signup .campaign-form .form-checkbox input[type=checkbox]{width:24px;height:24px;flex-shrink:0;cursor:pointer}.campaign-signup .campaign-form .form-checkbox label{font-family:"Poppins",sans-serif;font-size:16px;line-height:1.5;cursor:pointer;margin:0}.campaign-signup .campaign-form .form-checkbox label i{font-style:italic}.campaign-signup .campaign-form .form-group{margin-bottom:24px}.campaign-signup .campaign-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#0b1c32;font-size:14px;font-family:"Poppins",sans-serif;text-transform:uppercase;letter-spacing:.5px}.campaign-signup .campaign-form .form-group label .required{color:#ef404d;margin-left:2px}.campaign-signup .campaign-form .form-group .campaign-input{width:100%;padding:14px 16px;border:2px solid #e5e7eb;border-radius:6px;font-size:16px;transition:border-color .2s;box-sizing:border-box;font-family:"Poppins",sans-serif}.campaign-signup .campaign-form .form-group .campaign-input:focus{outline:none;border-color:#a4ddf1}.campaign-signup .campaign-form .form-group .campaign-input::placeholder{color:#9ca3af}.campaign-signup .campaign-form .form-group .form-help{display:block;margin-top:6px;font-size:12px;color:#6b7280;font-family:"Poppins",sans-serif;line-height:1.4}.campaign-signup .campaign-form .npi-group{position:relative}.campaign-signup .campaign-form .npi-group .npi-input-wrapper{position:relative;display:flex;align-items:center}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-input{flex:1;padding-right:3rem}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon{position:absolute;right:1rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:16px;transition:all .3s ease}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon.verified{background-color:#10b981;color:#fff}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon.verified::before{content:"✓"}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon.error{background-color:#ef404d;color:#fff}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon.error::before{content:"✕"}.campaign-signup .campaign-form .npi-group .npi-input-wrapper .npi-status-icon.verifying{border:2px solid #a4ddf1;border-top-color:rgba(0,0,0,0);animation:spin .8s linear infinite}.campaign-signup .campaign-form .npi-group .npi-status-message{display:block;margin-top:.5rem;font-size:.875rem;min-height:1.25rem;transition:all .3s ease}.campaign-signup .campaign-form .npi-group .npi-status-message.success{color:#10b981}.campaign-signup .campaign-form .npi-group .npi-status-message.error{color:#ef404d}.campaign-signup .campaign-form .npi-group .npi-status-message.info{color:#3b82f6}.campaign-signup .campaign-form .npi-validation-banner{margin:24px 0;padding:16px 20px;border-radius:8px;background:#f3f4f6;border:2px solid #e5e7eb;transition:all .3s ease}.campaign-signup .campaign-form .npi-validation-banner .validation-message{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;color:#374151}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;font-size:14px}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-icon.verifying{border:2px solid #a4ddf1;border-top-color:rgba(0,0,0,0);animation:spin .8s linear infinite}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-icon.success::before{content:"✓";color:#10b981;font-size:18px;font-weight:bold}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-icon.error::before{content:"!";color:#ef404d;font-size:18px;font-weight:bold}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-icon.info::before{content:"i";color:#3b82f6;font-size:16px;font-weight:bold}.campaign-signup .campaign-form .npi-validation-banner .validation-message .validation-text{flex:1}.campaign-signup .campaign-form .npi-validation-banner.verifying{background:#eff6ff;border-color:#bfdbfe}.campaign-signup .campaign-form .npi-validation-banner.verifying .validation-text{color:#1e40af}.campaign-signup .campaign-form .npi-validation-banner.success{background:#f0fdf4;border-color:#86efac}.campaign-signup .campaign-form .npi-validation-banner.success .validation-text{color:#15803d}.campaign-signup .campaign-form .npi-validation-banner.error{background:#fef2f2;border-color:#fecaca}.campaign-signup .campaign-form .npi-validation-banner.error .validation-text{color:#991b1b}.campaign-signup .campaign-form .npi-validation-banner.info{background:#eff6ff;border-color:#bfdbfe}.campaign-signup .campaign-form .npi-validation-banner.info .validation-text{color:#1e40af}.campaign-signup .campaign-form .form-checkbox{margin-bottom:24px;display:flex;align-items:center;gap:10px}.campaign-signup .campaign-form .form-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.campaign-signup .campaign-form .form-checkbox label{cursor:pointer;font-size:15px;color:#374151;user-select:none;font-family:"Poppins",sans-serif}.campaign-signup .campaign-form .form-checkbox label i{font-style:italic}.campaign-signup .campaign-form .campaign-buttons{display:flex;gap:12px;margin-bottom:20px}@media(max-width: 768px){.campaign-signup .campaign-form .campaign-buttons{flex-direction:column}}.campaign-signup .campaign-form .campaign-btn{position:relative;flex:1;padding:16px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;font-family:"PoppinsBold",sans-serif}.campaign-signup .campaign-form .campaign-btn .btn-text,.campaign-signup .campaign-form .campaign-btn .btn-spinner{transition:opacity .2s ease}.campaign-signup .campaign-form .campaign-btn .btn-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.campaign-signup .campaign-form .campaign-btn .btn-spinner img{width:20px;height:20px;animation:spin .8s linear infinite}.campaign-signup .campaign-form .campaign-btn .hidden{opacity:0;pointer-events:none}.campaign-signup .campaign-form .campaign-btn.campaign-btn-primary{background:#ef404d;color:#fff}.campaign-signup .campaign-form .campaign-btn.campaign-btn-primary:hover:not(:disabled){background:#ec1a2a;transform:translateY(-1px)}.campaign-signup .campaign-form .campaign-btn.campaign-btn-secondary{background:#fff;color:#0b1c32;border:2px solid #0b1c32}.campaign-signup .campaign-form .campaign-btn.campaign-btn-secondary:hover:not(:disabled){background:#4b88d7}.campaign-signup .campaign-form .campaign-btn:disabled{opacity:.6;cursor:not-allowed}.campaign-signup .campaign-form .campaign-btn:not(.campaign-btn-primary):not(.campaign-btn-secondary){width:100%;background:#ef404d;color:#fff}.campaign-signup .campaign-form .campaign-btn:not(.campaign-btn-primary):not(.campaign-btn-secondary):hover:not(:disabled){background:#ec1a2a;transform:translateY(-1px)}.campaign-signup .campaign-form .campaign-message{margin-top:20px;padding:12px 16px;border-radius:6px;display:none;text-align:center;font-size:14px}.campaign-signup .campaign-form .campaign-message.error{background:#fee;color:#c00;border:1px solid #fcc}.campaign-signup .campaign-form .campaign-message.success{background:#efe;color:#060;border:1px solid #cfc}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@media(max-width: 768px){.campaign-signup{padding:40px 0}.campaign-signup .campaign-signup-wrapper{padding:40px 24px}.campaign-signup .campaign-header .campaign-title{font-size:36px}}