/* A calm, guided final request form. */
.details .form-card{max-width:1050px;padding:32px;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:32px;border-radius:30px;background:#fffdfa;box-shadow:0 20px 65px #6c3c4d12;align-items:start}
.details .form-intro{padding:28px;background:linear-gradient(145deg,#fae7ed,#fff5e7);border:1px solid #ecd8df;border-radius:22px}
.details .form-intro h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:12px 0 18px}
.details #quoteForm{gap:22px;min-width:0}
.service-note{display:flex;gap:12px;background:#f1f5ed;border:1px solid #dbe4d4;border-radius:16px;padding:16px;color:#43553b;font-size:13px;line-height:1.6}
.service-note>span{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;background:#e1ebd9;border-radius:50%;font-weight:700}
.service-note p{margin:4px 0 0}.service-note strong{font-size:14px}
.details .event-group{border:0;border-top:1px solid #eddee3;padding:18px 0 0;margin:0;display:grid;gap:16px;min-width:0}
.event-group legend{padding:0 12px 0 0;font-weight:700;color:#633c4c;font-size:16px;line-height:30px}
.event-group legend>span{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:7px;background:#f7e5ec;border-radius:50%;font-size:11px;color:#8a3d59}
.group-help{font-size:13px;line-height:1.6;color:#77636c;margin:0}
.details .event-group label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;color:#5e404e}
.details .event-group input,.details .event-group select,.details .event-group textarea{width:100%;min-width:0;min-height:48px;background:#fff;border:1px solid #dfd2d8;border-radius:12px;padding:13px 14px;color:#422e38;font:400 16px Montserrat,sans-serif;box-shadow:0 2px 4px #57364503}
.details .event-group textarea{resize:vertical;line-height:1.6}
.details .event-group input:focus,.details .event-group select:focus,.details .event-group textarea:focus{outline:3px solid #f8e3eb;border-color:#a95775}
.details .event-group input::placeholder,.details .event-group textarea::placeholder{color:#8a7880;font-size:14px}
.optional{font-size:11px;font-weight:400;color:#79656f}.field-help{font-weight:400;line-height:1.6}
.request-review{background:#fbf5f7;border:1px solid #eddee3;border-radius:16px;padding:16px;font-size:13px}
#formSelection{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0;line-height:1.5}
#formSelection p{margin:0;color:#79656f}.request-review .review-chip{padding:6px 10px;border:1px solid #e4cbd5;background:#fff;border-radius:10px;color:#674152;font-size:12px}
.request-review a{color:#853d58;font-size:12px;text-underline-offset:3px}
.details #quoteForm .whatsapp{width:100%;min-height:54px;border-radius:14px;font-size:14px;line-height:1.5;white-space:normal;padding:15px 18px}
.submit-help{font-size:12px;line-height:1.7;text-align:center;color:#79656f;margin:-10px 4px 0}
@media(max-width:800px){.details .form-card{grid-template-columns:1fr;gap:24px;padding:24px}.details .form-intro{padding:24px}.details .form-intro h2{font-size:32px}.details .form-intro p{margin-bottom:0}}
@media(max-width:560px){.details .form-card{padding:18px;border-radius:24px}.details .form-intro{padding:20px}.details #quoteForm .form-row{grid-template-columns:1fr;gap:16px}.details .form-intro h2{font-size:28px}.details .event-group legend{font-size:15px}}

.form-booking-notes{margin:0;padding:20px;border:1px solid #e8cdd7;border-radius:18px;background:linear-gradient(135deg,#fcf0f4,#fff7ee);color:#624653}
.form-booking-notes h3{font:500 24px 'Playfair Display',serif;color:#873a5a;margin:0 0 14px}
.payment-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.payment-notes p{display:flex;flex-direction:column;gap:7px;margin:0;font-size:12px;line-height:1.6}
.payment-notes p+p{padding-left:16px;border-left:1px solid #e4cad3}
.payment-notes strong{font:500 30px 'Playfair Display',serif;color:#8f3155;line-height:1}
.form-booking-notes .refund-note{font-size:12px;line-height:1.7;margin:16px 0 0;padding-top:12px;border-top:1px solid #e7d4db}
@media(max-width:560px){.form-booking-notes{padding:17px}.payment-notes{gap:12px}.payment-notes p+p{padding-left:12px}.payment-notes strong{font-size:28px}}
