/* Preview-only three-step reservation presentation. */
#reservar.booking-editorial{background:#F0EEE8;color:#111;padding:80px 5%;scroll-margin-top:60px}
#reservar.booking-editorial h2{font:800 clamp(44px,6.8vw,100px)/.98 'Inter Tight',sans-serif;letter-spacing:-.055em;margin:28px 0 48px;max-width:1000px}#reservar h2 span{color:#F56618}
.booking-editorial [hidden]{display:none!important}
.booking-editorial .flow-progress{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:56px}
.booking-editorial .flow-tab{border:0;border-top:3px solid #d6d2c8;padding:16px 0;background:none;text-align:left;color:#99978f;display:grid;gap:6px;font:700 22px 'Inter Tight',sans-serif;cursor:pointer}.booking-editorial .flow-tab[aria-current]{border-color:#F56618;color:#111}.booking-editorial .flow-tab[aria-current] .mono{color:#F56618}.booking-editorial .flow-tab.complete{border-color:#111;color:#111}.booking-editorial .flow-tab.complete .mono:after{content:' ✓'}
.booking-editorial .booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:50px;margin:0;align-items:start}
.booking-editorial h3{font:800 27px 'Inter Tight',sans-serif;letter-spacing:-.03em;margin:0 0 22px}.booking-editorial .flow-block{padding:26px 0;border-bottom:1px solid #d6d2c8}.booking-editorial .flow-block:first-child{padding-top:0}
.booking-editorial button,.booking-editorial input,.booking-editorial select,.booking-editorial .booking-summary{border-radius:0!important;box-shadow:none!important}
.booking-editorial .flow-booths{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-editorial .flow-choice,.booking-editorial .flow-day{padding:18px 14px;background:#F6F4EF;border:2px solid #d6d2c8;color:#111;cursor:pointer;font:500 14px 'IBM Plex Mono',monospace}.booking-editorial .flow-booths .flow-choice{font:800 22px 'Inter Tight',sans-serif;min-height:95px}.booking-editorial .flow-choice[aria-pressed=true],.booking-editorial .flow-day[aria-pressed=true]{background:#111;color:#F0EEE8;border-color:#111}.booking-editorial .flow-choice:hover,.booking-editorial .flow-day:hover{border-color:#F56618}.booking-editorial .flow-durations{display:flex;gap:10px;flex-wrap:wrap}
.booking-editorial .flow-week{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.booking-editorial .flow-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.booking-editorial .flow-day{padding:12px 3px;display:grid;gap:4px;text-align:center}.booking-editorial .flow-day strong{font:800 26px 'Inter Tight',sans-serif}.booking-editorial .flow-day small{font-size:10px}
.booking-editorial .booking-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.booking-editorial .booking-slot{background:#F6F4EF;color:#111;border:2px solid #d6d2c8;font:14px 'IBM Plex Mono',monospace;min-height:64px;padding:10px 5px}.booking-editorial .booking-slot:disabled{background:#555;color:white;border-color:#555;opacity:1}.booking-editorial .booking-slot.in-selection{background:#F56618;color:#111;border-color:#F56618;opacity:1}.booking-editorial .slot-unavailable-label{font:9px 'Inter Tight',sans-serif}.booking-editorial .timeline-close{grid-column:1/-1}.booking-editorial .booking-status{font-size:13px;background:transparent;padding:8px 0;border:0}.booking-editorial .recording-option{border:1px solid #111;background:transparent;padding:20px;margin-top:25px;display:flex;align-items:center}.booking-editorial #booking-recording{appearance:none;width:48px;height:26px;background:#bbb;flex-shrink:0;position:relative;cursor:pointer}.booking-editorial #booking-recording:after{content:'';position:absolute;left:4px;top:4px;width:18px;height:18px;background:#111}.booking-editorial #booking-recording:checked{background:#F56618}.booking-editorial #booking-recording:checked:after{left:26px}
.booking-editorial .booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-editorial .booking-fields label:first-child{grid-column:1/-1}.booking-editorial .booking-fields label{font:11px 'IBM Plex Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.booking-editorial .booking-fields input{background:transparent;border:0;border-bottom:2px solid #111;padding:18px 0;font:20px 'Inter Tight',sans-serif;width:100%}.booking-editorial .flow-alternative{margin:30px 0;font-size:14px}.booking-editorial .flow-alternative summary{cursor:pointer;text-decoration:underline}.booking-editorial .flow-alternative select{margin-top:15px}
.booking-editorial .booking-summary{position:sticky;top:90px;background:#111;color:#F0EEE8;border:0;padding:28px;margin:0}.booking-editorial #mp-brand{display:none!important}.booking-editorial .booking-summary .mono,.booking-editorial .booking-summary small{color:#bdb9b1}.booking-editorial .flow-ticket-title{font-size:38px;margin:20px 0 30px}.booking-editorial .flow-ticket-details p,.booking-editorial .booking-summary>p{display:flex;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #ffffff20;font-size:14px;margin:14px 0}.booking-editorial .booking-summary .deposit{display:block;border-top:1px dashed #ffffff40;padding-top:26px;margin-top:25px}.booking-editorial .deposit strong{display:block;font:800 64px 'Inter Tight',sans-serif;color:#F56618}.booking-editorial #booking-submit,.booking-editorial .flow-ticket-next{width:100%;min-height:60px;background:#F56618;color:#111;font:800 19px 'Inter Tight',sans-serif;letter-spacing:-.02em;text-transform:none;border:0;padding:18px;margin-top:20px;cursor:pointer}.booking-editorial .flow-ticket-next{background:#F0EEE8}.booking-editorial #booking-submit:disabled,.booking-editorial .flow-ticket-next:disabled{background:#bdb9b1;color:#444;cursor:default}.booking-editorial .booking-policy{border:0;color:#bdb9b1;font-size:12px;margin-top:25px}.booking-editorial .booking-policy summary{text-decoration:underline;cursor:pointer}.booking-editorial .flow-actions{display:flex;flex-direction:column;align-items:start;gap:20px;margin-top:32px}.booking-editorial .flow-primary{background:#111;color:#F0EEE8;border:0;padding:22px 28px;font:800 20px 'Inter Tight',sans-serif;cursor:pointer}.booking-editorial .flow-back{background:none;border:0;font:600 14px 'Inter Tight',sans-serif;padding:10px 0;color:#666;cursor:pointer}.booking-editorial button:hover:not(:disabled){filter:brightness(.93)}.booking-editorial button:focus-visible,.booking-editorial input:focus-visible{outline:3px solid #F56618;outline-offset:4px}.booking-editorial .flow-review p{font-size:18px;overflow-wrap:anywhere}.booking-editorial .flow-feedback:empty{display:none}.flow-dock{display:none}
@media(max-width:760px){#reservar.booking-editorial{padding:48px 20px 120px}.booking-editorial .booking-layout{display:block}.booking-editorial .flow-progress{margin-bottom:30px}.booking-editorial .flow-tab{font-size:16px}.booking-editorial .booking-summary{position:static;margin-top:35px;display:none}.booking-editorial .booking-summary.flow-expanded{display:block}.booking-editorial .flow-days{display:flex;overflow:auto}.booking-editorial .flow-day{min-width:62px}.booking-editorial .flow-booths .flow-choice{font-size:18px;padding:14px 8px}.booking-editorial .booking-fields{grid-template-columns:1fr}.booking-editorial .flow-dock{position:fixed;bottom:0;left:0;right:0;z-index:60;background:#111;color:#F0EEE8;padding:14px 16px calc(14px + env(safe-area-inset-bottom));display:flex;gap:12px;align-items:center}.booking-editorial .flow-dock-info{background:none;color:#F56618;border:0;font:700 13px 'Inter Tight',sans-serif;text-align:left;flex:1}.booking-editorial .flow-dock-next{background:#F56618;color:#111;border:0;padding:16px;font:800 15px 'Inter Tight',sans-serif}.booking-editorial .flow-dock-next:disabled{background:#555;color:#ccc}body:has(#reservar:hover) .whatsapp-float{bottom:100px}}
/* WhatsApp stays in reach, above the mobile reservation dock. */
body>a.whatsapp-float{position:fixed!important;display:flex!important;left:22px!important;right:auto!important;bottom:24px!important;width:56px!important;height:56px!important;border-radius:50%!important;background:#111!important;color:#F0EEE8!important;border:1px solid #F56618!important;z-index:65!important;align-items:center;justify-content:center;box-shadow:0 4px 16px #0002!important}
body>a.whatsapp-float svg{width:27px;height:27px;fill:currentColor}body>a.whatsapp-float:hover{background:#F56618!important;color:#111!important}body>a.whatsapp-float .whatsapp-float-label{display:block;position:absolute;left:66px;background:#111;color:#F0EEE8;padding:8px 12px;white-space:nowrap;font:600 13px 'Inter Tight',sans-serif;border-radius:4px}
@media(max-width:760px){body>a.whatsapp-float{left:16px!important;bottom:calc(100px + env(safe-area-inset-bottom))!important;width:46px!important;height:46px!important}body>a.whatsapp-float .whatsapp-float-label{display:none}}
@media(max-width:760px){body:not(.booking-in-view)>a.whatsapp-float{bottom:24px!important}}
.booking-editorial .flow-booths .flow-choice{display:grid;grid-template-columns:1fr auto;text-align:left;gap:10px}.booking-editorial .flow-booths .flow-choice>.mono{grid-column:1/-1;font-size:10px;color:#777}.booking-editorial .flow-booths .flow-choice[aria-pressed=true]>.mono{color:#F56618}.booking-editorial .flow-booth-price small{font:10px 'IBM Plex Mono',monospace}
@media(max-width:760px){.booking-editorial .flow-booths .flow-choice{grid-template-columns:1fr}.booking-editorial .flow-booth-price{font-size:17px}.booking-editorial .booking-summary.flow-expanded{position:fixed;bottom:86px;left:16px;right:16px;max-height:65vh;overflow:auto;z-index:64;padding:22px;border:1px solid #555}.booking-editorial .flow-ticket-title{font-size:30px}}
@media(max-width:760px){body.booking-in-view>a.whatsapp-float{bottom:calc(22px + env(safe-area-inset-bottom))!important}.booking-editorial .flow-dock{padding-left:76px;gap:8px}.booking-editorial .flow-dock-info{font-size:11px;line-height:1.5}.booking-editorial .flow-dock-next{padding:16px 12px;font-size:14px}}
