 .form-container { max-width: 800px; margin: 50px auto; background: #fff; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); padding: 20px; }
    .form-divider { margin: 30px 0 10px; }
    .form-section-title { font-size: 1.2em; color: #333; margin: 0; }
    .form-grid-row { display: flex; gap: 20px; flex-wrap: wrap; justify-content: space-between; }
    .form-input, .form-select { flex: 1 1 45%; padding: 10px; margin-bottom: 15px; border: 1px solid #ccc; border-radius: 4px; }
    .form-textarea { flex: 1 1 100%; padding: 10px; margin-bottom: 15px; border: 1px solid #ccc; border-radius: 4px; height: 120px; }
    .step { display: none; }
    .step.active { display: block; }
    .nav-buttons { margin-top: 20px; display: flex; align-items: center; justify-content: space-between; }
    .nav-buttons button + button { margin-left: 20px; }
    .error-message { color: #d00; flex: 1 1 auto; margin-right: 10px; }
    button { background: #0073aa; color: #fff; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; }
    button[disabled] { background: #ccc; cursor: not-allowed; }
    #summary { padding: 10px; background: #f9f9f9; border-radius: 4px; }
    .summary-item { margin-bottom: 10px; }
    .opt-in { margin-top: 20px; }