/* === FORM CONTATTI BASE === */
html, body { min-height:100%; margin:0; }
body { font-family:Arial, sans-serif; background:#f6f3ef; }
.bph-form { display:flex; justify-content:center; width:100%; padding:28px 16px; box-sizing:border-box; }
.bph-form__box { width:100%; max-width:560px; padding:30px 34px; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:16px; box-shadow:0 14px 36px rgba(0,0,0,.07); box-sizing:border-box; }
.bph-form__header { margin:0 0 24px; text-align:center; }
.bph-form__header h1 { margin:0 0 8px; font-size:30px; line-height:1.2; font-weight:700; color:#191919; }
.bph-form__header p { margin:0; font-size:16px; line-height:1.45; color:#5f5045; }
.bph-form__field { margin:0 0 16px; }
.bph-form__field label { display:block; margin:0 0 7px; font-size:14px; line-height:1.3; font-weight:700; color:#111; }
.bph-form__input { width:100%; height:42px; padding:8px 12px; font-size:15px; line-height:1.4; color:#222; background:#fff; border:1px solid #d4cbc3; border-radius:8px; outline:none; box-sizing:border-box; transition:border-color .2s ease, box-shadow .2s ease; }
.bph-form__input:focus { border-color:#9c7650; box-shadow:0 0 0 3px rgba(156,118,80,.16); }
.bph-form__privacy { margin:18px 0 12px; padding:12px 14px; font-size:13px; line-height:1.5; color:#4d4036; background:#fbf8f5; border:1px solid #e3d9cf; border-radius:9px; }
.bph-form__privacy p { margin:0; }
.bph-form__privacy a { color:#8a5f35; font-weight:700; text-decoration:underline; }
.bph-form__check { display:flex; align-items:flex-start; gap:8px; margin:0 0 12px; padding:4px 0; font-size:13px; line-height:1.45; color:#222; border:0; border-radius:0; box-sizing:border-box; }
.bph-form__check span { display:block; }
.bph-form__checkbox { flex:0 0 auto; margin-top:1px; }
.bph-form__checkbox input { margin:0; }
.bph-form__required { display:block; margin:0 0 16px; font-size:13px; line-height:1.4; color:#5f5045; }
.bph-form__submit { display:inline-flex; align-items:center; justify-content:center; min-width:180px; min-height:44px; padding:11px 24px; font-size:14px; line-height:1; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:#fff; background:#916537; border:0; border-radius:999px; cursor:pointer; transition:background .2s ease, transform .2s ease, box-shadow .2s ease; }
.bph-form__submit:hover { background:#744d28; transform:translateY(-1px); box-shadow:0 9px 20px rgba(116,77,40,.22); }
.bph-form__error { display:block; margin:18px 0 0; font-size:14px; line-height:1.45; font-weight:700; color:#c00018; }

/* === FORM CONTATTI ERRORI === */
.bph-form__input--error { color:#b00020; background:#fffafa; border-color:#c00018; }
.bph-form__input--error:focus { border-color:#c00018; box-shadow:0 0 0 3px rgba(192,0,24,.14); }
.bph-form__input--error::placeholder { color:#c00018; opacity:1; }
.bph-form__check--error { color:#b00020; background:transparent; border:0; }
.bph-form__check--error input { outline:2px solid #c00018; outline-offset:1px; }

/* === FORM CONTATTI RESPONSIVE 992 === */
@media (max-width:992px){
	.bph-form { padding:24px 14px; }
	.bph-form__box { max-width:540px; padding:28px; }
}

/* === FORM CONTATTI RESPONSIVE 620 === */
@media (max-width:620px){
	.bph-form { padding:18px 12px; }
	.bph-form__box { padding:22px 16px; border-radius:14px; }
	.bph-form__header h1 { font-size:25px; }
	.bph-form__header p { font-size:15px; }
	.bph-form__submit { width:100%; }
}







