.pc-booking{max-width:44rem;margin:1.5rem auto;padding:clamp(1rem,3vw,2rem);border:1px solid currentColor;border-radius:.65rem;font:inherit;color:inherit;line-height:1.6;text-align:left}
.pc-booking [hidden]{display:none!important}
.pc-booking label{display:block;margin-top:1rem;font-weight:600}
.pc-booking input,.pc-booking select{box-sizing:border-box;width:100%;max-width:100%;min-height:44px;padding:.65rem;border:1px solid #767676;border-radius:.3rem;font:inherit;color:#222;background:#fff}
.pc-booking button{min-height:44px;padding:.7rem 1rem;border:1px solid currentColor;border-radius:.3rem;font:inherit;font-weight:600;color:inherit;background:transparent;cursor:pointer}
.pc-booking button:disabled{opacity:.6;cursor:wait}
.pc-booking :is(input,select,button,a):focus-visible{outline:3px solid #125cb0;outline-offset:3px}
.pc-booking [data-status]{padding:.75rem;border-left:3px solid currentColor;overflow-wrap:anywhere}
.pc-booking [data-summary]{font-weight:600}
.pc-booking .pc-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pc-booking .pc-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:480px){.pc-booking .pc-fields{grid-template-columns:1fr;gap:0}.pc-booking button{width:100%}}
