.stackd-booking{max-width:760px;margin:40px auto;padding:clamp(20px,5vw,48px);border:1px solid #dfd8d1;border-radius:16px;background:#fff}
.stackd-booking h2{font-size:clamp(28px,5vw,44px);line-height:1.12;margin-top:18px}
.stackd-preview-label{font-size:12px;font-weight:750;letter-spacing:.08em;color:#7d3519}
.stackd-booking-fields label{display:flex;flex-direction:column;gap:8px;font-weight:650;margin-top:20px}
.stackd-booking input,.stackd-booking select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid #93877d;border-radius:6px;padding:10px;background:#fff;color:#221c18;font:inherit}
.stackd-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.stackd-booking button{cursor:pointer;min-height:48px;margin-top:12px;border:0}
.stackd-booking :focus-visible{outline:3px solid #257285;outline-offset:3px}
.stackd-quote{margin-top:32px;padding:24px;border-radius:10px;background:#fbf3eb}
.stackd-quote-total{font-size:24px;font-weight:750}
.stackd-error{border-left:4px solid #a52918;padding:12px;background:#fff1ed;color:#7b2016}
.stackd-address-fields{border:0;border-top:1px solid #dfd8d1;padding:24px 0;margin-top:24px;min-width:0}.stackd-address-fields legend{font-size:22px;font-weight:750;padding:0 8px 0 0}.stackd-address-fields label{display:flex;flex-direction:column;gap:8px;margin-top:16px}.stackd-booking textarea{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #93877d;border-radius:6px;resize:vertical}.stackd-booking .stackd-check{display:flex;flex-direction:row;gap:12px;align-items:flex-start;margin-top:20px}.stackd-booking .stackd-check input{width:22px;min-height:22px;flex:0 0 22px;margin-top:3px}.stackd-address-inputs[hidden]{display:none}
@media(max-width:520px){.stackd-date-fields{grid-template-columns:1fr;gap:0}.stackd-booking button{width:100%}}
