/* Mobile booking form polish — 2026-09-01 */
.booking-form .field select{
  width:100%;
  min-height:58px;
  padding:0 50px 0 16px;
  border:1px solid var(--line);
  border-radius:16px;
  background-color:#fff;
  color:var(--ink);
  font-size:16px;
  line-height:1.2;
  -webkit-appearance:none;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23101712' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  background-size:20px;
}
.booking-form .field select:focus{
  border-color:var(--green);
  box-shadow:0 0 0 4px rgba(67,176,42,.12);
}

.booking-form .handover-field{
  width:100%;
  min-width:0;
  border:0!important;
  padding:0!important;
  margin:2px 0 0!important;
}
.booking-form .handover-field legend{
  float:none;
  width:auto;
  max-width:100%;
  margin:0 0 12px;
  padding:0;
  color:var(--ink);
  font-size:15px;
  font-weight:900;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.booking-form .handover-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  width:100%;
}
.booking-form .handover-option{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr);
  align-items:start;
  gap:12px;
  width:100%;
  min-width:0;
  margin:0!important;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:var(--ink);
  cursor:pointer;
  line-height:1.4;
  letter-spacing:normal;
  text-transform:none;
  transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;
}
.booking-form .handover-option:hover{
  border-color:#9bd78d;
  background:#f8fff6;
}
.booking-form .handover-option.is-selected,
.booking-form .handover-option:has(input:checked){
  border-color:var(--green);
  background:var(--green-mist);
  box-shadow:0 0 0 3px rgba(67,176,42,.1);
}
.booking-form .handover-option:has(input[type="radio"]:focus-visible){
  border-color:#216e1b;
  box-shadow:0 0 0 3px rgba(33,110,27,.22);
}
.booking-form .handover-option input[type="radio"]{
  -webkit-appearance:none;
  appearance:none;
  width:22px;
  height:22px;
  min-width:22px;
  margin:1px 0 0;
  border:2px solid #98a39a;
  border-radius:50%;
  background:#fff;
  box-shadow:inset 0 0 0 5px #fff;
}
.booking-form .handover-option input[type="radio"]:focus-visible{
  outline:3px solid #216e1b;
  outline-offset:3px;
}
.booking-form .handover-option input[type="radio"]:checked{
  border-color:var(--green);
  background:var(--green);
}
.booking-form .handover-option span{
  display:block;
  min-width:0;
}
.booking-form .handover-option strong{
  display:block;
  margin:0 0 4px;
  color:var(--ink);
  font-size:16px;
  font-weight:900;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.booking-form .handover-option small{
  display:block;
  margin:0;
  color:var(--muted);
  font-size:13px;
  font-weight:600;
  line-height:1.45;
  overflow-wrap:anywhere;
}

@media(max-width:680px){
  .quote-body{padding:18px}
  .booking-form{gap:18px}
  .booking-form .field select{min-height:60px;font-size:17px;border-radius:16px}
  .booking-form .handover-field legend{margin-bottom:12px;font-size:17px;line-height:1.3}
  .booking-form .handover-options{grid-template-columns:1fr;gap:10px}
  .booking-form .handover-option{grid-template-columns:22px minmax(0,1fr);gap:12px;padding:15px 14px;border-radius:15px}
  .booking-form .handover-option strong{font-size:16px;line-height:1.3}
  .booking-form .handover-option small{font-size:13px;line-height:1.45}
  .pickup-panel{border-radius:17px;padding:16px}
  .pickup-panel-head strong{font-size:20px}
  .pickup-panel-head p{font-size:14px;line-height:1.55}
}
