@font-face{font-family:Brava DM Sans;src:url(/fonts/dm-sans.ttf)format("truetype");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:Brava Libre Baskerville;src:url(/fonts/libre-baskerville.ttf)format("truetype");font-weight:400 700;font-style:normal;font-display:swap}.location-dialog-layer.reservation-create-layer{--ink:#022029;--muted:#596467;--paper:#fffaf3;--canvas:#f7f2ea;--line:#dfd5ca;--teal-soft:#e4efed;font-family:var(--brava-font-body);color:var(--ink)}.reservation-create-layer .location-dialog{flex-direction:column;width:min(100%,64rem);height:min(96dvh,60rem);max-height:96dvh;padding:0;display:flex;overflow:hidden}.reservation-create-layer .location-dialog-fields{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.reservation-create-layer .location-dialog>.brava-discard-prompt{flex:none;margin:1rem}.reservation-create-heading{background:var(--paper);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.reservation-create-heading h2{color:var(--ink);font-family:var(--brava-font-editorial);margin:0;font-size:clamp(1.3rem,5vw,1.7rem);font-weight:400}.reservation-create-heading h2:focus{outline:none}.reservation-create-heading .eyebrow{color:var(--brava-burgundy);margin:0 0 .65rem;font-size:.65rem}.reservation-form.reservation-create-form{flex:1;grid-template-rows:minmax(0,1fr) auto;gap:0;min-height:0;margin:0;display:grid;overflow:hidden}.reservation-create-body{background:var(--canvas);overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:1.25rem;overflow-y:auto}.reservation-create-body>section{gap:1rem;display:grid}.reservation-create-body>section[hidden]{display:none}.reservation-create-layer button,.reservation-create-layer input,.reservation-create-layer select{font:inherit;min-width:0}.reservation-create-layer button{touch-action:manipulation}.reservation-create-layer :is(button,input,select):focus-visible{outline:3px solid var(--brava-burgundy);outline-offset:3px}.reservation-create-layer .reservation-create-form label,.reservation-create-layer .reservation-create-form legend{color:var(--ink);font-size:.875rem;font-weight:600}.reservation-create-layer .reservation-create-form :is(input,select){background:#fff;min-height:3rem;font-size:1rem}.reservation-create-location{color:var(--muted);margin-bottom:1rem;font-size:.8125rem}.reservation-create-location label{gap:.25rem}.reservation-create-location .reservation-fixed-value{color:var(--muted);background:0 0;border:0;min-height:auto;padding:0;font-size:.875rem}.reservation-create-back{color:var(--brava-burgundy);cursor:pointer;text-align:left;background:0 0;border:0;min-height:2.75rem;padding:0 0 .75rem}.reservation-create-cards{gap:1rem;display:grid}.reservation-create-card,.reservation-customer-result{color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #0000;border-radius:1rem;gap:.5rem;width:100%;padding:1rem;display:grid}.reservation-create-card:hover,.reservation-customer-result:hover{border-color:var(--teal-line)}.reservation-create-card>strong,.reservation-customer-result>strong{overflow-wrap:anywhere;font-size:1rem;font-weight:650;line-height:1.4}.reservation-create-card>span,.reservation-customer-result>span{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem;line-height:1.5}.reservation-create-card small,.reservation-customer-result small{color:var(--brava-burgundy);margin-top:.25rem;font-size:.8125rem;font-weight:600}.reservation-create-options{color:var(--brava-burgundy);cursor:pointer;text-align:left;background:0 0;border:0;min-height:2.75rem;padding:.6rem 0;line-height:1.5;font-size:.875rem!important}.reservation-create-notice,.reservation-create-date-status{background:var(--teal-soft);color:var(--ink);border-radius:.75rem;margin:0;padding:.875rem 1rem;font-size:.875rem;line-height:1.5}.reservation-create-empty{background:#fff;border-radius:1rem;gap:.875rem;padding:1rem;font-size:.875rem;line-height:1.5;display:grid}.reservation-create-empty>span{color:var(--muted)}.reservation-create-form .reservation-field-heading .text-button{min-height:2.75rem;font-size:.875rem}.reservation-customer-results,.reservation-service-results{gap:.75rem;display:grid}.reservation-customer-current,.reservation-create-form [role=status]{color:var(--muted);margin:.25rem 0;font-size:.875rem;line-height:1.5}.reservation-service-results{overscroll-behavior:contain;max-height:18rem;padding:.25rem;overflow-y:auto}.reservation-service-results button{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;padding:.875rem;display:flex}.reservation-service-results strong{overflow-wrap:anywhere;font-size:.9375rem;font-weight:600}.reservation-service-results button>span{flex:none;font-size:.875rem}.reservation-create-layer [aria-pressed=true]{background:var(--teal-soft);border-color:var(--teal-line)}.reservation-create-calendar{gap:.75rem;display:grid}.reservation-create-calendar .calendar-month-navigation{margin:0}.reservation-create-calendar .calendar-month-day{min-height:2.75rem}.reservation-create-calendar .calendar-month-day:disabled{cursor:not-allowed;opacity:.35}.reservation-create-times{grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem;display:grid}.reservation-create-times button{border:1px solid var(--line);color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;background:#fff;border-radius:.75rem;min-height:3rem}.reservation-create-times [aria-pressed=true]{background:var(--brava-burgundy);border-color:var(--brava-burgundy);color:#fff}.reservation-create-layer .reservation-assignment-picker{background:#fff}.reservation-create-layer .reservation-deposit-choice{background:#fff;gap:1rem;padding:1rem}.reservation-create-layer .reservation-deposit-choice label{min-height:2.75rem;font-size:1rem;font-weight:400;line-height:1.5}.reservation-create-layer .reservation-create-form :is(input[type=checkbox],input[type=radio]){accent-color:var(--brava-burgundy);flex:none;width:1.25rem;height:1.25rem;min-height:1.25rem;padding:0}.reservation-create-review{margin-top:1rem}.reservation-create-summary{background:var(--paper);border-top:1px solid var(--line);min-width:0}.reservation-create-summary-details{display:none}.reservation-create-footer{padding:1rem 1.25rem max(1rem, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(8rem,1fr);align-items:center;gap:.75rem;display:grid}.reservation-create-total{gap:.3rem;min-width:0;display:grid}.reservation-create-total>strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.25rem}.reservation-create-total>span{color:var(--muted);font-size:.75rem;line-height:1.4}.reservation-create-layer .primary-button{background:var(--brava-burgundy);border-color:var(--brava-burgundy);color:#fff;border-radius:.75rem;min-height:3rem;padding:.75rem 1rem;font-size:1rem;font-weight:600}.reservation-create-layer .primary-button:disabled{opacity:.5}.reservation-create-skeleton{gap:.75rem;display:grid}.reservation-create-skeleton span{background:var(--line);border-radius:.75rem;height:3rem;animation:1.5s ease-in-out infinite alternate reservation-create-pulse}@keyframes reservation-create-pulse{to{opacity:.45}}@media (prefers-reduced-motion:reduce){.reservation-create-skeleton span{animation:none}}body:has(.reservation-create-layer[open]) .customer-dialog-layer{--paper:#fffaf3;--ink:#022029;font-family:var(--brava-font-body)}body:has(.reservation-create-layer[open]) .customer-dialog-layer h2{font-family:var(--brava-font-editorial);font-weight:400}@media (min-width:768px){.location-dialog-layer.reservation-create-layer{justify-content:center;align-items:center;padding:1rem}.reservation-create-layer .location-dialog{border-radius:1.25rem;height:min(92dvh,58rem);max-height:92dvh}.reservation-form.reservation-create-form{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 19rem}.reservation-create-summary{border-left:1px solid var(--line);border-top:0;flex-direction:column;min-height:0;display:flex}.reservation-create-summary-details{gap:1rem;padding:1.5rem;display:grid;overflow-y:auto}.reservation-create-summary-details h3{font-family:var(--brava-font-editorial);margin:0;font-size:1.25rem;font-weight:400}.reservation-create-summary-details button{color:var(--ink);cursor:pointer;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;gap:.5rem;min-height:2.75rem;padding:0;font-size:.875rem;line-height:1.5;display:grid}.reservation-create-summary-details :is(button>span,p){color:var(--muted);margin:0;font-size:.8125rem}.reservation-create-footer{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);margin-top:auto;padding:1.5rem}}
.location-dialog-layer.reservation-edit-layer{--ink:#022029;--muted:#596467;--paper:#fffaf3;--canvas:#f7f2ea;--line:#dfd5ca;font-family:var(--brava-font-body);color:var(--ink)}.reservation-edit-layer .location-dialog{background:var(--canvas);flex-direction:column;width:min(100%,64rem);height:min(94dvh,58rem);max-height:94dvh;padding:0;display:flex;overflow:hidden}.reservation-edit-layer .location-dialog-fields{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.reservation-edit-heading{background:var(--paper);border-bottom:1px solid var(--line);flex:none;gap:.75rem;margin:0;padding:1.25rem}.reservation-edit-heading .eyebrow{color:#5b1d2d;margin:0 0 .6rem;font-size:.65rem}.reservation-edit-heading h2{font-family:var(--brava-font-editorial);overflow-wrap:anywhere;margin:0;font-size:clamp(1.2rem,5vw,1.65rem);font-weight:400}.reservation-edit-heading h2:focus{outline:none}.reservation-edit-heading .reservation-customer-name{font:inherit;text-align:left}.reservation-edit-body,.reservation-visit-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:1.25rem;overflow-y:auto}.reservation-edit-layer button,.reservation-edit-layer input,.reservation-edit-layer select,.reservation-edit-layer textarea{font-family:inherit}.reservation-edit-layer button{min-height:44px}.reservation-edit-layer .reservation-disclosure{border-color:var(--line);background:#fff}.reservation-edit-layer .reservation-disclosure summary{padding:1rem}.reservation-edit-layer .reservation-disclosure summary small{font-size:.75rem}.reservation-edit-layer .reservation-details-summary{border-color:var(--line);background:#fff;margin:.75rem 0}.reservation-edit-layer .reservation-details-summary>strong{font-family:var(--brava-font-editorial);font-size:1.15rem}.reservation-edit-layer .reservation-details-summary>p{text-transform:none}.reservation-edit-layer .reservation-overview-actions{margin:1rem 0}.reservation-edit-layer .reservation-overview-actions button{background:#fff;min-height:56px}.reservation-edit-navigation{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.reservation-edit-navigation:empty{display:none}.reservation-edit-navigation>button{text-align:left}.reservation-edit-notice{color:#022029;background:#e4efed;border-radius:.75rem;padding:.85rem}.reservation-edit-contact{text-align:left;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:1rem;gap:.5rem;padding:1rem;display:grid}.reservation-edit-contact span{color:var(--muted);font-size:.85rem}.reservation-visit-date{text-transform:none;margin:1.25rem 0;font-weight:600}.reservation-visit-date:first-letter,.reservation-edit-layer .reservation-details-summary>p:first-letter{text-transform:uppercase}.reservation-edit-body:not([data-section=resumen])>.reservation-details-summary,.reservation-edit-body:not([data-section=resumen])>.reservation-payment-overview,.reservation-edit-body:not([data-section=resumen])>.reservation-overview-actions,.reservation-edit-body:not([data-section=resumen])>.reservation-sections-intro,.reservation-edit-body:not([data-section=resumen])>.reservation-payment-request,.reservation-edit-body:not([data-section=resumen])>.reservation-settlement-summary,.reservation-edit-body:not([data-section=resumen])>details{display:none}.reservation-edit-body[data-section=servicio]>[data-reservation-section=servicio],.reservation-edit-body[data-section=horario]>[data-reservation-section=horario],.reservation-edit-body[data-section=fotos]>[data-reservation-section=fotos],.reservation-edit-body[data-section=notas]>[data-reservation-section=notas],.reservation-edit-body[data-section=actividad]>[data-reservation-section=actividad],.reservation-edit-body[data-section=correos]>[data-reservation-section=correos],.reservation-edit-body[data-section=rentabilidad]>[data-reservation-section=rentabilidad]{display:block}.reservation-edit-inline-reason{display:none!important}.reservation-edit-body[data-section=servicio]>[data-reservation-section=servicio]>summary,.reservation-edit-body[data-section=horario]>[data-reservation-section=horario]>summary,.reservation-edit-body[data-review=true]>.reservation-edit-navigation,.reservation-edit-body[data-review=true]>:not(.reservation-change-review):not(.reservation-edit-navigation){display:none}.reservation-edit-layer .reservation-form{max-width:none}.reservation-edit-layer .reservation-form input,.reservation-edit-layer .reservation-form select,.reservation-edit-layer textarea{border-radius:.7rem;min-height:48px}.reservation-change-review{color:var(--ink)}.reservation-change-review h3{font-family:var(--brava-font-editorial);margin:1rem 0 1.5rem;font-size:1.4rem;font-weight:400}.reservation-change-review h3:focus{outline:none}.reservation-change-values{margin:0}.reservation-change-values>div{border-bottom:1px solid var(--line);padding:1rem 0}.reservation-change-values dt{color:var(--muted);margin-bottom:.75rem;font-size:.8rem}.reservation-change-values dd{overflow-wrap:anywhere;grid-template-columns:1fr 1fr;gap:1rem;margin:0;font-size:.95rem;display:grid}.reservation-change-values dd small{color:var(--muted);margin-bottom:.5rem;font-size:.7rem;display:block}.reservation-change-confirmation{margin-top:1.5rem}.reservation-change-confirmation label{gap:.6rem;font-size:.85rem;font-weight:600;display:grid}.reservation-change-confirmation textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;padding:.9rem;font-size:1rem}.reservation-change-confirmation p{color:var(--muted);font-size:.85rem;line-height:1.5}.reservation-change-confirmation .error-text{color:#98263a}.reservation-change-footer{padding:1rem 0 calc(1rem + env(safe-area-inset-bottom));background:var(--canvas);grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem;display:grid;position:sticky;bottom:-1.25rem}.reservation-change-footer button{min-height:48px}@media (min-width:760px){.reservation-change-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:2rem;display:grid}.reservation-change-confirmation{background:var(--paper);border-radius:1rem;margin:0;padding:1.25rem}.reservation-change-footer{background:0 0;padding-bottom:0;position:static}}@media (max-width:600px){.reservation-edit-layer .location-dialog{height:96dvh;max-height:96dvh}.reservation-edit-heading,.reservation-edit-body,.reservation-visit-body{padding:1rem}.reservation-edit-navigation{flex-direction:column}.reservation-change-footer{bottom:-1rem}}
.location-dialog-layer:is(.reservation-create-layer,.reservation-edit-layer){--ink:#022029;--muted:#596467;--paper:#fffaf3;--canvas:#f7f2ea;--line:#dfd5ca;--teal-soft:#e4efed;color:var(--ink);font-family:var(--brava-font-body)}.reservation-form-heading{background:var(--paper);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.reservation-form-heading>div{min-width:0}.reservation-form-heading .eyebrow{color:#5b1d2d;margin:0 0 .65rem;font-size:.65rem}.reservation-form-heading h2{font:400 clamp(1.3rem, 5vw, 1.7rem) var(--brava-font-editorial);color:var(--ink);overflow-wrap:anywhere;margin:0}.reservation-form-heading h2:focus{outline:none}.reservation-form-heading .reservation-customer-name{font:inherit;text-align:left}.reservation-form-heading .tray-close{flex:none}.reservation-section-card{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;box-sizing:border-box;background:#fff;border-radius:1rem;gap:.5rem;width:100%;min-width:0;padding:1rem;display:grid}.reservation-section-card:hover{border-color:#75938e}.reservation-section-card.brava-button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:1rem;justify-content:stretch;justify-items:start;padding:1rem;font-size:1rem;font-weight:400;display:grid}.reservation-section-card.brava-button:hover{border-color:#75938e}.reservation-section-card>strong{overflow-wrap:anywhere;font-size:1rem;font-weight:650;line-height:1.4}.reservation-section-card>span{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem;line-height:1.5}.reservation-section-card small{color:#5b1d2d;margin-top:.35rem;font-size:.8125rem;font-weight:600}.reservation-shared-field{color:var(--ink);gap:.6rem;min-width:0;font-size:.875rem;font-weight:600;display:grid}.reservation-shared-field :is(input,select,textarea){box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:3rem;color:var(--ink);font:400 1rem var(--brava-font-body);background:#fff;border-radius:.75rem;padding:.85rem}.reservation-review-values{min-width:0;margin:0}.reservation-review-values>div{border-bottom:1px solid var(--line);padding:1rem 0}.reservation-review-values dt{color:var(--muted);margin-bottom:.65rem;font-size:.8rem}.reservation-review-values dd{overflow-wrap:anywhere;gap:1rem;margin:0;font-size:.95rem;display:grid}.reservation-review-values dd[data-comparison=true]{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-review-values dd small{color:var(--muted);margin-bottom:.5rem;font-size:.7rem;display:block}.reservation-reason p{color:var(--muted);font-size:.8125rem;line-height:1.5}.reservation-action-footer{background:var(--paper);border-top:1px solid var(--line);padding:1rem 1.25rem max(1rem, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(8rem,1fr);align-items:center;gap:.75rem;display:grid}.reservation-action-footer>button{border-radius:.75rem;min-height:3rem;font-size:1rem}.reservation-action-footer .primary-button{color:#fff;background:#5b1d2d;border-color:#5b1d2d}.reservation-action-footer .primary-button:disabled{opacity:.5}.reservation-action-footer>.primary-button.brava-button{border-radius:.75rem;min-height:3rem;font-size:1rem}.reservation-form-total,.reservation-edit-summary-total{gap:.3rem;min-width:0;display:grid}.reservation-form-total strong,.reservation-edit-summary-total strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.reservation-form-total>span,.reservation-edit-summary-total>span{color:var(--muted);font-size:.75rem;line-height:1.4}.reservation-form-summary-details{min-width:0;padding:1.5rem;display:none;overflow-y:auto}.reservation-form-summary-details h3{font:400 1.25rem var(--brava-font-editorial);margin:0}.reservation-form-summary-details p{color:var(--muted);font-size:.8125rem;line-height:1.5}.reservation-summary-link{text-align:left;color:var(--ink);overflow-wrap:anywhere;padding:0;font-weight:600;line-height:1.5}.reservation-review-values .reservation-summary-link.brava-button{min-height:0;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;padding:0;font-weight:600;display:inline}.reservation-create-summary>.reservation-action-footer{margin-top:auto}.reservation-edit-body{min-width:0}.reservation-edit-summary{display:none}.reservation-edit-layer .reservation-overview-actions{grid-template-columns:minmax(0,1fr);display:grid}.reservation-edit-layer .reservation-overview-actions .reservation-section-card{align-items:start}.reservation-edit-layer .reservation-overview-actions .reservation-section-card>span{font-size:.875rem}.reservation-edit-body[data-section=servicio]>[data-reservation-section=servicio],.reservation-edit-body[data-section=horario]>[data-reservation-section=horario]{background:0 0;border:0}.reservation-edit-body:is([data-section=servicio],[data-section=horario]) .reservation-disclosure-body{padding:0}.reservation-edit-body .reservation-detail-fieldset>.reservation-action-footer{margin:1rem -1.25rem -1.25rem;position:sticky;bottom:-1.25rem}.reservation-change-confirmation .reservation-action-footer{background:0 0;margin-top:1rem;padding:1rem 0 0}.reservation-change-review .reservation-change-layout{gap:1.5rem}.reservation-edit-layer .reservation-create-calendar{margin-bottom:1rem}.reservation-edit-body:is([data-section=servicio],[data-section=horario]) .reservation-detail-fieldset,.reservation-edit-body[data-section=servicio] [data-reservation-section=servicio] fieldset{border:0;gap:1rem;min-width:0;padding:0;display:grid}.reservation-edit-body .reservation-detail-fieldset>legend,.reservation-edit-body [data-reservation-section=servicio] legend{margin-bottom:1rem}.reservation-edit-body .reservation-form>.reservation-action-footer{margin:1rem -1.25rem -1.25rem;position:sticky;bottom:-1.25rem}.reservation-edit-layer .reservation-create-calendar .calendar-month-day{min-height:2.75rem}.reservation-edit-layer :is(button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #5b1d2d}@media (min-width:768px){.location-dialog-layer:is(.reservation-create-layer,.reservation-edit-layer){justify-content:center;align-items:center;padding:1rem}:is(.reservation-create-layer,.reservation-edit-layer) .location-dialog{border-radius:1.25rem;height:min(92dvh,58rem);max-height:92dvh}.reservation-form-summary-details{display:block}.reservation-create-summary>.reservation-action-footer{grid-template-columns:minmax(0,1fr);padding:1.5rem}.reservation-edit-layer:not(.reservation-visit-layer) .location-dialog-fields{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 19rem;display:grid}.reservation-edit-layer .reservation-form-heading,.reservation-edit-body[data-review=true]{grid-column:1/-1}.reservation-edit-summary{background:var(--paper);border-left:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.reservation-edit-summary-total{border-top:1px solid var(--line);margin-top:auto;padding:1.5rem}}@media (max-width:767px){.reservation-edit-body .reservation-form>.reservation-action-footer{margin:1rem -1rem -1rem;bottom:-1rem}.reservation-form-heading{padding:1rem}.reservation-change-layout{display:block}.reservation-change-confirmation .reservation-action-footer{background:var(--canvas);padding-bottom:max(1rem, env(safe-area-inset-bottom));position:sticky;bottom:-1rem}}
