/* Booking surfaces use the existing sponsor palette and page rails. */
.ofm-sponsor-control__field textarea{box-sizing:border-box;width:100%;min-width:0;min-height:110px;padding:11px;border:1px solid var(--ofm-sponsor-line);border-radius:9px;background:var(--ofm-sponsor-input);color:var(--ofm-sponsor-ink);font:inherit;font-size:.86rem;line-height:1.6;resize:vertical}
.ofm-sponsor-control textarea:focus-visible,.ofm-booking-enquiry :is(input,select,textarea,button,a):focus-visible,.ofm-booking-native button:focus-visible{outline:3px solid var(--ofm-sponsor-accent);outline-offset:3px}
.ofm-booking-layout{min-width:0;margin:0;padding:14px;border:1px solid var(--ofm-sponsor-line);border-radius:10px}.ofm-booking-layout legend{padding:0 5px;color:var(--ofm-sponsor-ink);font-size:.85rem;font-weight:750}
.ofm-booking-filter{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--ofm-sponsor-line)}.ofm-advertise .ofm-booking-collection>.ofm-booking-purpose{margin:0}
.ofm-booking-lead{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px}.ofm-booking-lead>div{min-width:0}.ofm-booking-lead dt{margin:0 0 4px;font-size:.74rem;font-weight:750;color:var(--ofm-sponsor-muted)}.ofm-booking-lead dd{margin:0;font-size:.82rem;line-height:1.5;color:var(--ofm-sponsor-ink);overflow-wrap:anywhere}.ofm-booking-lead__message{margin:0 0 18px;padding:12px;border:1px solid var(--ofm-sponsor-line);border-radius:10px;color:var(--ofm-sponsor-muted);font-size:.85rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
main.ofm-public-page.ofm-advertise>.ofm-booking-packages{margin-top:32px;margin-bottom:32px}.ofm-booking-packages>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ofm-booking-packages article{min-width:0;padding:22px;border:1px solid var(--ofm-sponsor-line);border-radius:16px;background:var(--ofm-sponsor-panel)}.ofm-booking-packages h3{margin:0 0 12px;font-size:1.1rem;line-height:1.4;color:var(--ofm-sponsor-ink);overflow-wrap:anywhere}.ofm-booking-packages article p{margin:8px 0 0;color:var(--ofm-sponsor-muted);font-size:.85rem;line-height:1.5;overflow-wrap:anywhere}.ofm-booking-packages article .ofm-booking-packages__price{color:var(--ofm-sponsor-accent-ink);font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums}
.ofm-advertise .ofm-booking-purpose{margin:16px 0;color:var(--ofm-sponsor-muted);font-size:.78rem;line-height:1.6;overflow-wrap:anywhere}.ofm-booking-purpose a{color:var(--ofm-sponsor-accent-ink);text-decoration:underline;text-underline-offset:3px}
.ofm-booking-enquiry{margin-top:20px}.ofm-booking-enquiry .ofm-sponsor-control__field{font-size:.8rem}.ofm-booking-enquiry .ofm-sponsor-control__field :is(input,select){box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--ofm-sponsor-line);border-radius:9px;background:var(--ofm-sponsor-input);color:var(--ofm-sponsor-ink);font:inherit;font-size:.9rem}
.ofm-booking-enquiry button,.ofm-booking-native button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;max-width:100%;padding:12px 16px;border:1px solid var(--ofm-sponsor-accent);border-radius:10px;background:var(--ofm-sponsor-accent);color:#1b170d;font:inherit;font-size:.88rem;font-weight:800;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}.ofm-booking-enquiry button:disabled{opacity:.6;cursor:wait}.ofm-booking-native{margin:20px 0 0}
.ofm-booking-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.ofm-advertise [hidden]{display:none!important}
html[data-ofm-color-scheme="light"] :is(.ofm-booking-enquiry button,.ofm-booking-native button){background:#f4c430;border-color:#c29811;color:#292318}
@media(max-width:700px){.ofm-booking-packages>div{grid-template-columns:1fr}.ofm-booking-packages article{padding:18px}}
@media(max-width:620px){.ofm-booking-lead{grid-template-columns:1fr}.ofm-booking-enquiry .ofm-sponsor-control__fields{grid-template-columns:1fr}.ofm-booking-enquiry button,.ofm-booking-native button{width:100%}}
