/* OsCar contact: existing paper/red palette, ruled actions and compact mobile fields. */
.direct-booking{background:var(--paper,#eee);color:var(--ink,#191919);border:0;border-top:5px solid var(--red);width:min(680px,calc(100% - 24px));padding:24px 32px 32px;overscroll-behavior:contain}
.direct-booking .dialog-top{position:sticky;top:-24px;z-index:2;background:var(--paper,#eee);border-color:#b9b5af;padding:12px 0 16px}
.direct-booking .close-dialog{color:var(--ink);border-color:#b9b5af;min-width:44px;min-height:44px}
.direct-intro{padding:26px 0 20px}
.direct-booking .direct-intro .eyebrow{color:#625d57;font-size:10px;margin-bottom:14px}
.direct-booking .direct-intro h2{color:#191919;font-size:clamp(32px,6vw,52px);line-height:1.02;margin-bottom:16px;letter-spacing:-.065em}
.direct-intro>p{font-size:14px;line-height:1.65;max-width:46ch;color:#55504b}
.direct-quick-call{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding:16px 0 12px}
.direct-intro .direct-hours{font-size:11px;margin-top:10px}
.direct-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.direct-fields>label:last-child{grid-column:1/-1}
.direct-fields label{display:block;font-size:12px;font-weight:600;min-width:0}
.direct-fields label>span{font-size:11px;font-weight:400;color:#625d57}
.direct-fields input,.direct-fields select,.direct-fields textarea{display:block;width:100%;min-width:0;border:1px solid #a9a39a;background:#faf9f6;color:#191919;border-radius:0;padding:13px 12px;margin-top:8px;font:inherit;line-height:1.5;resize:vertical}
.direct-fields select{min-height:48px}
.direct-actions{margin-top:28px;border-top:2px solid #191919;color:#191919;min-width:0}
.direct-action-heading{display:flex;justify-content:space-between;gap:12px;padding:16px 0;font-size:11px}
.direct-action-heading .mono,.direct-call .mono,.direct-message>.mono{font-size:9px;letter-spacing:.07em;color:#615b54}
.direct-call{display:grid;grid-template-columns:1fr auto;gap:7px 16px;align-items:center;border-top:1px solid #cbc6bd;border-bottom:1px solid #cbc6bd;padding:18px 0}
.direct-call .mono{grid-column:1}
.direct-call strong{grid-column:1;font-family:var(--display);font-size:clamp(24px,4vw,35px);letter-spacing:-.05em;line-height:1.2}
.direct-call svg{grid-column:2;grid-row:1/3}
.direct-call:hover strong{color:var(--red)}
.direct-message{padding-top:20px}
.direct-preview{margin:12px 0 16px}
.direct-preview summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.direct-preview p{margin:8px 0 16px;padding:16px;border-left:3px solid var(--red);background:#e5e1da;color:#292521;font-size:13px;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}
.direct-message>.button{display:flex;width:100%;min-height:54px;justify-content:space-between;padding:14px 20px;font-size:13px}
.direct-disclosure{color:#615b54;font-size:11px;line-height:1.7;margin-top:12px}
.direct-disclosure a{text-decoration:underline;text-underline-offset:3px}
.stock-enquiry-form[data-direct-request]{border-top:4px solid var(--red)}
.stock-enquiry-form[data-direct-request]>.direct-actions{grid-column:1/-1}
.direct-stock-intro{font-size:13px;color:#5f5951;line-height:1.7;margin-bottom:20px}
.direct-actions :focus-visible,.direct-booking :focus-visible{outline:2px solid #b81916;outline-offset:4px}
@media(max-width:600px){
 .direct-booking{padding:18px 20px 24px;max-height:calc(100dvh - 24px);margin:auto}
 .direct-booking .dialog-top{top:-18px}
 .direct-intro{padding-top:22px}
 .direct-fields{grid-template-columns:1fr;gap:16px}
 .direct-fields input,.direct-fields select,.direct-fields textarea{font-size:16px}
 .stock-enquiry-form[data-direct-request] input:not([type=radio]),.stock-enquiry-form[data-direct-request] select,.stock-enquiry-form[data-direct-request] textarea{font-size:16px;min-width:0;max-width:100%}
 .direct-actions{margin-top:24px}
 .direct-call strong{font-size:28px}
 .direct-action-heading{flex-wrap:wrap}
 .direct-disclosure{font-size:12px}
}
