.church-form-container{max-width:1100px;margin:1.5rem auto;padding:1.5rem 2rem;background:#f4f6c5;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,0.15)}.form-title{color:#1e5a8a;font-size:1.75rem;margin-bottom:0.25rem;font-weight:700;text-align:center}.form-description{color:#3c5a4a;text-align:center;margin-bottom:1.25rem;font-size:0.95rem}.church-form{width:100%}.form-section{margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(63,165,94,0.2)}.form-section:last-of-type{border-bottom:none}.form-section h3{color:#2d4a3d;font-size:1.1rem;margin-bottom:1rem;font-weight:600;background:rgba(255,255,255,0.6);padding:0.5rem 0.75rem;border-radius:6px;display:inline-block}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:1rem}@media (max-width:900px){.form-row{grid-template-columns:1fr 1fr}}@media (max-width:640px){.form-row{grid-template-columns:1fr}}.form-group{margin-bottom:1rem}.form-group label{display:block;color:#1e293b;font-weight:600;margin-bottom:0.35rem;font-size:0.875rem}.form-group input[type="text"],.form-group input[type="email"],.form-group input[type="tel"],.form-group input[type="date"],.form-group input[type="time"],.form-group input[type="number"],.form-group select,.form-group textarea{width:100%;padding:0.6rem 0.75rem;border:1px solid #c4d4be;border-radius:6px;font-size:0.95rem;transition:all 0.2s;font-family:inherit;background:#ffffff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3fa55e;box-shadow:0 0 0 3px rgba(63,165,94,0.1)}.form-group textarea{resize:vertical;min-height:100px}.checkbox-group{display:flex;flex-wrap:wrap;gap:0.75rem}.checkbox-group label{display:flex;align-items:center;cursor:pointer;margin-bottom:0;padding:0.5rem 0.75rem;border:2px solid #cbd5e1;border-radius:6px;transition:all 0.2s;background:white}.checkbox-group label:hover{border-color:#94a3b8;background-color:#f8fafc}.checkbox-group label:has(input[type="checkbox"]:checked){border-color:#3fa55e;background-color:#e8f5ed}.checkbox-group input[type="checkbox"]{width:auto;margin-right:0.5rem;cursor:pointer;accent-color:#3fa55e}.checkbox-group input[type="checkbox"]:checked+span{font-weight:600;color:#2d5a3f}.ministry-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0.75rem}.ministry-checkboxes label{width:100%}.radio-group{display:flex;flex-direction:column;gap:0.75rem}.radio-label{display:flex;align-items:center;cursor:pointer;padding:0.75rem;border:2px solid #cbd5e1;border-radius:6px;transition:all 0.2s}.radio-label:hover{border-color:#94a3b8;background-color:#f8fafc}.radio-label input[type="radio"]{margin-right:0.75rem;cursor:pointer;accent-color:#3fa55e}.radio-label input[type="radio"]:checked+span{font-weight:600;color:#2d5a3f}.radio-label:has(input[type="radio"]:checked){border-color:#3fa55e;background-color:#e8f5ed}.submit-btn{width:100%;padding:0.85rem 2rem;background:#3fa55e;color:white;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all 0.2s;margin-top:0.5rem}.submit-btn:hover{background:#358f50;transform:translateY(-2px);box-shadow:0 4px 12px rgba(63,165,94,0.4)}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{background:#94a3b8;cursor:not-allowed;transform:none}.form-message{margin:1rem 0;padding:0.85rem 1rem;border-radius:6px;display:none;font-size:0.95rem}.form-message.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7;display:block}.form-message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;display:block}.form-message.info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd;display:block}.church-form.loading{opacity:0.6;pointer-events:none}.church-form.loading .submit-btn::after{content:'';display:inline-block;width:16px;height:16px;margin-left:10px;border:2px solid #ffffff;border-radius:50%;border-top-color:transparent;animation:spin 0.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.wedding-form .form-title{color:#be185d}.funeral-form .form-title{color:#475569}.prayer-request-form .form-title{color:#7c3aed}.form-group label:has(+input:required)::after,.form-group label:has(+select:required)::after,.form-group label:has(+textarea:required)::after{content:' *';color:#dc2626}.form-group input:invalid:not(:placeholder-shown),.form-group select:invalid:not(:placeholder-shown),.form-group textarea:invalid:not(:placeholder-shown){border-color:#f87171}.form-group input:valid:not(:placeholder-shown),.form-group select:valid:not(:placeholder-shown),.form-group textarea:valid:not(:placeholder-shown){border-color:#10b981}@media (max-width:768px){.church-form-container{padding:1.25rem;margin:1rem}.form-title{font-size:1.5rem}.form-section h3{font-size:1rem}.form-section{margin-bottom:1rem;padding-bottom:1rem}}