.lew-booking-form-wrapper, .lew-contact-form-wrapper, .lew-brochure-form-wrapper {
	background: var(--lew-color-bg); border: 1px solid var(--lew-color-border); border-radius: var(--lew-radius-md);
	padding: var(--lew-space-8); box-shadow: var(--lew-shadow-sm); max-width: 560px; margin: var(--lew-space-6) 0;
}
.lew-form-title { margin-bottom: var(--lew-space-6); font-size: 1.3rem; }
.lew-form-group { margin-bottom: var(--lew-space-4); }
.lew-form-group label { display: block; font-weight: 600; margin-bottom: var(--lew-space-2); font-size: 0.9rem; color: var(--lew-color-text); }
.lew-input {
	width: 100%; padding: var(--lew-space-3) var(--lew-space-4); border: 1px solid var(--lew-color-border);
	border-radius: var(--lew-radius-sm); font-family: var(--lew-font-body); font-size: 1rem; background: var(--lew-color-bg);
	color: var(--lew-color-text); transition: border-color .2s ease, box-shadow .2s ease;
}
textarea.lew-input { min-height: 100px; resize: vertical; }
.lew-input:focus { outline: none; border-color: var(--lew-color-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--lew-color-primary) 20%, transparent); }
.lew-form-message { font-size: 0.9rem; margin-bottom: var(--lew-space-2); min-height: 0; }
.lew-form-message:not(:empty) { padding: var(--lew-space-3) var(--lew-space-4); border-radius: var(--lew-radius-sm); margin-bottom: var(--lew-space-4); }
.lew-form-message.lew-success { background: color-mix(in srgb, var(--lew-color-success) 12%, white); color: var(--lew-color-success); }
.lew-form-message.lew-error { background: color-mix(in srgb, var(--lew-color-danger) 12%, white); color: var(--lew-color-danger); }

.lew-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--lew-space-2); background: var(--lew-button-bg); color: var(--lew-button-text, #fff); padding: var(--lew-button-padding-y) var(--lew-button-padding-x); border-radius: var(--lew-button-radius); border: none; font-weight: 600; font-size: 0.95rem; text-decoration: none; cursor: pointer; transition: background .2s ease, transform .15s ease, box-shadow .2s ease; }
.lew-btn:hover { background: var(--lew-button-bg-hover); color: #fff; transform: translateY(-1px); box-shadow: var(--lew-shadow-md); }
.lew-btn-primary, .lew-btn--primary { background: var(--lew-color-primary); color: #fff; }
.lew-btn-primary:hover, .lew-btn--primary:hover { background: var(--lew-color-primary-dark); }
.lew-btn-outline, .lew-btn--outline { background: transparent; border: 2px solid var(--lew-color-primary); color: var(--lew-color-primary); }
.lew-btn-outline:hover, .lew-btn--outline:hover { background: var(--lew-color-primary); color: #fff; }
button[type="submit"].lew-btn { width: 100%; padding-top: var(--lew-space-4); padding-bottom: var(--lew-space-4); margin-top: var(--lew-space-2); }

@media (max-width: 600px) {
	.lew-booking-form-wrapper, .lew-contact-form-wrapper, .lew-brochure-form-wrapper { padding: var(--lew-space-6); }
}
