.lta-form{background:#fff;border:1px solid var(--line-l);border-radius:2px;padding:28px;max-width:760px}
.lta-form label{display:flex;flex-direction:column;gap:6px;font-weight:500;font-size:.95rem;margin-bottom:14px;color:var(--ink)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.form-grid .span2{grid-column:1/-1}
.booking-kind{border:0;padding:0;margin:0 0 24px}
.booking-kind legend{font-size:1.35rem;font-weight:700;margin-bottom:12px;color:var(--ink)}
.booking-kind-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lta-form .booking-kind-option{display:block;position:relative;margin:0;cursor:pointer}
.booking-kind-option input{position:absolute;opacity:0;pointer-events:none}
.booking-kind-card{display:flex;min-height:106px;flex-direction:column;justify-content:center;gap:5px;border:2px solid #c9c6bf;border-radius:6px;padding:18px;background:#fff;transition:border-color .18s,background-color .18s,box-shadow .18s}
.booking-kind-card strong{font-size:1.08rem;color:var(--ink)}
.booking-kind-card small{font-weight:400;line-height:1.45;color:var(--mut-l)}
.booking-kind-option input:checked+.booking-kind-card{border-color:var(--red);background:#fff7f7;box-shadow:inset 0 0 0 1px var(--red)}
.booking-kind-option input:focus-visible+.booking-kind-card{outline:3px solid var(--orange);outline-offset:3px}
.booking-details{margin:0 0 22px;padding:22px 22px 8px;background:#f5f3ef;border-left:4px solid var(--red)}
.booking-details h2{margin:0 0 4px;font-size:1.22rem;color:var(--ink)}
.booking-details>p{margin:0 0 16px;color:var(--mut-l);font-size:.92rem}
.lta-form input,.lta-form select,.lta-form textarea{
  background:#fff;border:1px solid #c9c6bf;border-radius:2px;padding:12px 13px;color:var(--ink);width:100%}
.lta-form select:disabled{background:#ece9e3;color:#777;cursor:not-allowed}
.lta-form input:focus,.lta-form select:focus,.lta-form textarea:focus{outline:none;border-color:var(--red)}
.lta-form input:focus-visible,.lta-form select:focus-visible,.lta-form textarea:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.lta-form .agree{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;color:var(--mut-l);font-size:.85rem}
.lta-form .agree input{width:auto;margin-top:3px}
.lta-form .agree a{color:var(--red);text-decoration:underline}
.hp-field{position:absolute!important;left:-9999px!important;opacity:0;height:0;width:0}
.form-status{margin-top:12px;font-weight:600;min-height:1.4em}
.form-status.ok{color:#2e7d32}
.form-status.err{color:var(--red)}
.lta-form button[disabled]{opacity:.6;cursor:wait}
@media(max-width:640px){
  .form-grid,.booking-kind-grid{grid-template-columns:1fr}
  .booking-kind-card{min-height:88px}
  .booking-details{padding:18px 16px 4px}
}
