/* V16: Native, accessible pop-up for all booking CTAs */
.booking-native-popup:not([open]){display:none!important}
.booking-native-popup[open]{display:block;position:fixed;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);margin:0;width:min(1000px,calc(100vw - 40px));max-width:none;max-height:min(90dvh,840px);height:auto;min-height:0;padding:0;background:#fbf9f5;border:1px solid rgba(227,207,180,.60);border-radius:12px;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 35px 100px rgba(16,8,5,.35);color:#392518;z-index:9999}
.booking-native-popup::backdrop{background:rgba(22,11,7,.79);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.booking-native-popup .booking-modal-top{position:sticky;top:0;z-index:5;background:#fbf9f5;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8ddd0;min-height:62px;padding:10px 28px}
.booking-native-popup .booking-close{display:grid;place-items:center;border:1px solid #d8c6ae;border-radius:100%;font-size:25px;background:#fff9f0;line-height:1;width:40px;height:40px;cursor:pointer}
.booking-native-popup .booking-modal-body{padding:0;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr)}
.booking-native-popup .booking-modal-body>.booking-heading{min-height:570px;background:#322119;color:#fff;padding:50px 32px 270px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
.booking-native-popup .booking-modal-body>.booking-heading::before{content:"";position:absolute;z-index:-1;bottom:0;left:0;right:0;height:300px;background:linear-gradient(180deg,#322119,transparent 33%),url('assets/dr-paulo-retrato-hero.webp') center 27%/cover no-repeat;filter:saturate(.82)}
.booking-native-popup .booking-modal-body>.booking-heading h2{color:#fff7ef}
.booking-native-popup .booking-modal-body>.booking-heading>p{color:#e2d5c8}
.booking-native-popup .booking-modal-body>.booking-form{padding:36px 34px 30px;background:#fbf9f5}
.booking-native-popup .booking-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.booking-native-popup .booking-field-wide{grid-column:1/-1}
.booking-native-popup .booking-field input,.booking-native-popup .booking-field select{max-width:100%}
.booking-native-popup .booking-submit-button{justify-content:center}
.booking-native-popup :focus-visible{outline:2px solid #b18a58;outline-offset:3px}
@media(max-width:760px){
  .booking-native-popup[open]{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:12px}
  .booking-native-popup .booking-modal-top{min-height:54px;padding:8px 18px}
  .booking-native-popup .booking-modal-body{display:block}
  .booking-native-popup .booking-modal-body>.booking-heading{min-height:0;padding:22px 20px 17px;display:block;background:#efe5d6;color:#422818}
  .booking-native-popup .booking-modal-body>.booking-heading::before{display:none}
  .booking-native-popup .booking-modal-body>.booking-heading h2{color:#432919;font-size:clamp(31px,8vw,43px);line-height:1.1;margin-bottom:9px}
  .booking-native-popup .booking-modal-body>.booking-heading>p{color:#715d4b;font-size:12px;line-height:1.5;margin:0 auto}
  .booking-native-popup .booking-modal-body>.booking-form{padding:21px 20px 25px}
  .booking-native-popup .booking-fields{grid-template-columns:1fr;gap:13px}
  .booking-native-popup .booking-field-wide{grid-column:auto}
  .booking-native-popup .booking-field input,.booking-native-popup .booking-field select{font-size:16px}
}
@media(max-width:360px){
  .booking-native-popup .booking-modal-body>.booking-heading{padding:17px 15px 14px}
  .booking-native-popup .booking-modal-body>.booking-form{padding:17px 15px 22px}
  .booking-native-popup .booking-modal-body>.booking-heading h2{font-size:32px}
}

.booking-native-popup .booking-modal-body>.booking-heading h2 em{color:#e6c799!important}
