.booking-main{max-width:1440px;margin:auto}.booking-intro{max-width:760px}.booking-intro h1{font:400 clamp(3rem,6vw,5.7rem)/1.08 DomOptima,Optima,Georgia,serif;letter-spacing:-.04em;margin:20px 0}.booking-intro h1 em{color:#531713}.booking-intro>p{max-width:580px;color:#52423B;font-size:18px}.booking-steps{display:flex;list-style:none;padding:22px 0;margin:36px 0;border-top:1px solid #AB9E8C;border-bottom:1px solid #AB9E8C;gap:35px;color:#6A5E50;font-size:13px}.booking-steps span{margin-right:8px;color:#A47343}.booking-steps [aria-current]{color:#531713;font-weight:bold}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start}.booking-panel{padding:32px;background:#F1EDE0}.booking-panel h2,.booking-results h2,.booking-aside h2{font:400 clamp(2rem,3vw,2.8rem)/1.15 DomOptima,Optima,Georgia,serif;margin:0 0 16px}.booking-panel>p,.booking-aside p{color:#52423B}.booking-panel fieldset{border:0;padding:0;margin:0;min-width:0}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.booking-panel label{display:block;font-size:14px;font-weight:bold;color:#3F332D}.booking-panel select,.booking-panel input:not([type=checkbox]){display:block;width:100%;min-height:50px;border:1px solid #8A7A6D;background:#fffdf7;color:#2B211D;border-radius:0;padding:12px;font:400 16px Arial,sans-serif;margin-top:8px}.booking-panel button,.booking-option button{border:0;cursor:pointer}.booking-panel button:disabled,.booking-option button:disabled{cursor:wait;opacity:.65}.booking-panel [hidden],.booking-main [hidden]{display:none!important}.booking-error,.booking-notice{background:#E4D1C0;border-left:3px solid #531713;padding:16px;color:#3F332D}.booking-text-button{background:transparent;text-decoration:underline;padding:8px 0;color:#531713}.booking-results,.booking-details{margin-top:32px}.booking-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-option{background:#F1EDE0;min-width:0;display:flex;flex-direction:column}.booking-option img{width:100%;aspect-ratio:1.5;object-fit:cover}.booking-option-body{padding:24px;display:flex;flex-direction:column;flex:1}.booking-option h3{font-size:2rem;margin:0 0 16px;line-height:1.2}.booking-option button{margin-top:auto}.booking-price{margin:0 0 20px}.booking-price div{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin:6px 0}.booking-price dt,.booking-price dd{margin:0}.booking-price .booking-total{border-top:1px solid #D2C3B1;padding-top:10px;margin-top:12px;font-weight:bold;font-size:17px}.booking-option .booking-small{margin:0 0 16px}.booking-small{font-size:13px;line-height:1.65;color:#52423B}.booking-small a{text-decoration:underline}.booking-aside{padding:30px;background:#E4D1C0}.booking-aside h2{margin-top:20px}.booking-aside h3{font-size:1.6rem;margin:20px 0 12px}.booking-aside-line{border-top:1px solid #AB9E8C;margin-top:24px}.booking-aside .detail-inline{white-space:normal}.booking-terms{max-height:300px;overflow:auto;padding:18px;background:#fffdf7;border:1px solid #AB9E8C;font-size:14px;white-space:pre-wrap}.booking-panel .booking-accept{display:flex;align-items:flex-start;gap:12px;margin:24px 0;font-weight:400}.booking-accept input{width:20px;height:20px;flex:none;accent-color:#531713}.booking-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.booking-details .detail-inline{display:inline-block;margin-top:24px}@media(max-width:1000px){.booking-layout{grid-template-columns:minmax(0,1fr)}.booking-aside{max-width:none}}@media(max-width:600px){.booking-panel{padding:24px 20px}.booking-fields,.booking-options{grid-template-columns:1fr}.booking-steps{gap:12px;font-size:11px;justify-content:space-between}.booking-steps span{display:block;margin:0 0 4px}.booking-option-body{padding:22px}.booking-panel .button{width:100%}.booking-price div{font-size:13px}.booking-intro>p{font-size:16px}}
/* Immediate availability invitation: booking takes place entirely at Reserva IN. */
.now-consult{max-width:620px;padding:32px;background:#F1EDE0;color:#3F332D;margin-top:36px;min-width:0}
.now-label{font-size:11px;letter-spacing:.16em;font-weight:700;color:#531713}
.now-consult h2{font:400 clamp(2rem,3vw,2.7rem)/1.12 DomOptima,Optima,Georgia,serif;margin:18px 0}
.now-consult p{font-size:16px;line-height:1.65;color:#52423B;max-width:none}
.now-consult .now-small{font-size:12px;line-height:1.6;margin-top:20px}
.now-consult .button{gap:18px;white-space:normal}
.now-consult [hidden]{display:none!important}
.now-refresh{display:block;background:none;border:0;border-bottom:1px solid #8A7A6D;padding:10px 0;margin-top:16px;color:#531713;font:600 12px Arial,sans-serif;cursor:pointer}
.now-refresh:disabled{opacity:.65;cursor:wait}
.now-consult[data-state=available] .now-label{color:#476039}
.reserve-highlight .now-consult{width:440px;max-width:100%;margin:0}
.reserve-highlight .now-consult h2{font-size:2.5rem;letter-spacing:-.03em}
.reserve-highlight .now-consult p{color:#52423B}
@media(max-width:760px){.now-consult{padding:26px 22px}.reserve-highlight .now-consult{width:100%}.now-consult .button{width:100%;font-size:12px}}
.now-categories{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:18px 0}
.now-categories li{padding:8px 12px;border:1px solid #AB9E8C;color:#3F332D;font-size:13px}
.now-consult #now-updated{font-size:12px;margin:14px 0;color:#476039}
.now-categories{flex-direction:column}
.now-categories li{display:flex;flex-direction:column;gap:5px}
.now-categories li span{font-size:12px}
.now-categories li em{font-style:normal;font-size:12px;font-weight:700;color:#8C402C}
