.fz-custom-product__hero { text-align: center; padding: 4rem 0 2rem; }
.fz-custom-product__hero h1 { font-family: var(--fz-font-serif, Georgia, serif); font-size: clamp(2rem, 4vw, 3rem); margin-bottom: 1rem; }
.fz-custom-product__intro { font-size: 1.1rem; color: #666; max-width: 600px; margin: 0 auto; }
.fz-custom-product__form-section { padding: 2rem 0 4rem; }
.fz-lead-form { display: flex; flex-direction: column; gap: 1.25rem; }
.fz-form-row label { display: block; font-size: 0.85rem; font-weight: 600; margin-bottom: 0.375rem; color: #333; }
.fz-form-row input, .fz-form-row textarea, .fz-form-row select { width: 100%; padding: 0.75rem 1rem; border: 1px solid #ddd; border-radius: 4px; font-size: 0.95rem; transition: border-color 0.2s; }
.fz-form-row input:focus, .fz-form-row textarea:focus, .fz-form-row select:focus { border-color: #000; outline: none; }
.fz-form-row--split { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media (max-width: 640px) { .fz-form-row--split { grid-template-columns: 1fr; } }
.fz-lead-form__submit { padding: 1rem 2rem; font-size: 1rem; cursor: pointer; }
.fz-lead-form__submit:disabled { opacity: 0.6; cursor: not-allowed; }
.fz-form-success { padding: 1rem; background: #e8f5e9; color: #2e7d32; border-radius: 4px; margin-top: 1rem; }
.fz-form-error { padding: 1rem; background: #fce4ec; color: #c62828; border-radius: 4px; margin-top: 1rem; }
