.field-reservation-page{margin-bottom:30px}.field-reservation-toolbar{display:flex;align-items:flex-start;gap:.5rem;margin:20px}.field-reservation-back{color:inherit;text-decoration:none;flex-shrink:0}.field-reservation-back:hover{color:#0059a0}.field-reservation-toolbar-center{flex:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem}.field-reservation-dropdown{max-width:550px;width:100%;text-align:left;box-shadow:none!important}.field-reservation-instructions-link{color:#c00;font-weight:700;background:none;border:none;cursor:pointer;animation:field-reservation-blink 1s ease-in-out infinite}@keyframes field-reservation-blink{0%,to{opacity:1}50%{opacity:.2}}.field-reservation-fieldset{padding:10px;border-radius:4px}.field-reservation-fieldset-grid{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.field-reservation-fieldset-icon{width:10%;min-width:60px;display:flex;align-items:center;justify-content:center}.field-reservation-fieldset-info{width:30%;min-width:200px;flex:1}.field-reservation-fieldset-side{width:60%;min-width:280px;display:flex;align-items:center;gap:1rem}.field-reservation-map-col{width:38%;min-width:120px}.field-reservation-meta-col{flex:1;border-left:2px solid #ccc;padding-left:20px}.field-reservation-price-row,.field-reservation-timings{display:flex;gap:.35rem;margin-bottom:.5rem}.field-reservation-price-row>.strong,.field-reservation-timings>.strong{flex-shrink:0;white-space:nowrap}.field-reservation-price-row>div,.field-reservation-timings>div{min-width:0}.field-reservation-timings .complex-show-operates-hours{display:block;margin-left:0}.field-reservation-timings .complex-show-operates-hours:before{content:"("}.field-reservation-timings .complex-show-operates-hours:after{content:")"}.field-reservation-more-toggle{background:none;border:none;cursor:pointer;margin-top:1rem;text-align:left}.field-reservation-coach-link{display:block;text-align:right;margin-bottom:.5rem}.map-container{width:100%;height:150px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:20px}.field-image-width{max-width:95%;max-height:95%}.field-reservation-mobile-image{text-align:center;padding:10px;border:1px solid #ddd;margin-top:.5rem}.field-reservation-calendar-wrap{position:relative;padding:15px}.field-reservation-calendar-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:8px 4px;background:#cccccc}.field-reservation-calendar-header-chunk{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.field-reservation-calendar-header-chunk.frc-nav-right{justify-content:flex-end}.field-reservation-calendar-header-chunk.frc-title{font-size:16px;font-weight:600;justify-content:center;text-align:center;color:#383838}.frc-btn{border:none;background:#ffffff;border-radius:6px;padding:6px 14px;font-size:13px;line-height:1.4;cursor:pointer;color:#1f2733}.frc-btn:hover{background:#eef0f2}.frc-btn-group{display:flex;align-items:stretch;border-radius:6px;overflow:hidden;background:#ffffff}.frc-btn-group .frc-btn-group-item{border-radius:0}.frc-btn-group .frc-btn-group-item:first-child{border-right:1px solid #e1e4e8}.frc-btn-group .frc-btn-group-item:hover{background:#eef0f2}.frc-icon-btn{justify-content:center;width:32px;height:32px;padding:0;font-size:15px}.frc-icon-btn,.frc-view-switch{display:flex;align-items:center}.frc-view-switch{gap:2px;padding:2px;border-radius:6px;background:rgba(0,0,0,.08)}.frc-view-switch .frc-view-btn{border:none;background:transparent;border-radius:4px;padding:5px 12px;font-size:13px;line-height:1.4;cursor:pointer;color:#383838}.frc-view-switch .frc-view-btn:hover{background:rgba(0,0,0,.06)}.frc-view-switch .frc-view-btn--active{background:#ffffff;color:#1f2733;box-shadow:0 1px 2px rgba(0,0,0,.15)}.frc-view-switch .frc-view-btn--active:hover{background:#ffffff}.frc-view-header-sticky{position:static!important;top:auto!important}.frc-outside-month-cell{background-color:hsl(var(--cal-background))!important;color:rgba(100,116,139,.55)}.field-reservation-calendar [data-disabled=true]{cursor:pointer!important}.frc-non-business-cell{background:rgba(204,204,204,.3)!important}.field-reservation-event{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;padding:2px 6px;overflow:hidden;box-sizing:border-box;border-radius:4px;color:#ffffff;font-size:11px;line-height:1.35;background-color:#0059a0}.field-reservation-event--timegrid{border:1px solid #000;margin:1px}.field-reservation-event.tiny-margin-top{margin-top:4px}.field-reservation-event.black .field-reservation-event-time,.field-reservation-event.black .field-reservation-event-title{color:inherit!important}.field-reservation-event-time-row{display:flex;align-items:center;gap:4px;overflow:hidden}.field-reservation-event-time-row.align-center{justify-content:center}.field-reservation-event-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}.field-reservation-event-time,.field-reservation-event-title{overflow:hidden;text-overflow:clip;white-space:nowrap}.field-reservation-event-title{font-weight:700}.field-reservation-event-time.align-center,.field-reservation-event-title.align-center{text-align:center}.field-reservation-event-title.disabled{opacity:.6}.field-reservation-event--blockout{background:#000;color:#fff;border-radius:5px;pointer-events:none;padding:2px 6px;overflow:hidden}.field-reservation-event--schedule{padding:2px 6px;overflow:hidden}.field-reservation-event.blue-bg{background-color:#0059a0}.field-reservation-event.green-bg{background-color:#99c624}.field-reservation-event.orange-bg{background-color:#ffae00}.field-reservation-event.black-bg{background-color:#000000}.field-reservation-event.gray-bg,.field-reservation-event.grey-bg{background-color:#b4b4b4}.field-reservation-event.red-bg{background-color:#dd380d}.field-reservation-event.white-bg{background-color:#ffffff;border:1px solid #ddd}.field-reservation-event.black{color:#000000}.field-reservation-event.disabled{opacity:.6}.field-reservation-event.with-tooltip{cursor:pointer}.field-reservation-day-popover-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:11000;display:flex;align-items:flex-start;justify-content:center;padding:10vh 1rem 1rem}.field-reservation-day-popover{background:#fff;width:min(320px,100%);max-height:70vh;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 16px rgba(0,0,0,.25)}.field-reservation-day-popover-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:linear-gradient(180deg,#eee,#ccc);font-weight:700;color:#383838}.field-reservation-day-popover-list{overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.field-reservation-day-popover-row{cursor:pointer;border-radius:4px;min-height:34px}.field-reservation-day-popover-row .field-reservation-event{border-radius:4px}.field-reservation-calendar-wrap.on-page-calendar-loading,.field-reservation-page.on-page-calendar-loading{pointer-events:none}.field-reservation-legend{margin-top:8px}.field-reserve-calendar-bottom{color:white;font-weight:700;padding:2px 6px;font-size:12px;display:inline-block;margin:2px}.label-waiting{background:#0059a0}.label-conform{background:#99c624}.label-cancellation-requested,.label-cancellationRequested{background:#ffae00}.label-not-available{background:#a5a5a5}.field-reservation-alert-overlay,.field-reservation-instructions-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:11000;display:flex;align-items:center;justify-content:center;padding:1rem}.field-reservation-alert-box,.field-reservation-instructions-modal-inner{background:#fff;padding:1.5rem;border-radius:4px;max-width:670px;width:100%;max-height:80vh;overflow:auto}.instruction-scroll{overflow-y:auto;max-height:55vh}.field-reservation-msg-close{float:right;background:none;border:none;font-size:1.25rem;cursor:pointer;line-height:1}@media (max-width:768px){.field-reservation-dropdown{max-width:265px}.field-reservation-fieldset-side{flex-direction:column}.field-reservation-meta-col{border-left:none;padding-left:0}.field-reservation-calendar-wrap{overflow-x:auto}.field-reservation-calendar{min-width:900px}}.field-reservation-calendar .fc-timegrid-event{border:1px solid #000;margin:1px}.field-reservation-calendar .fc-timegrid-event.black .fc-event-main{color:inherit!important;border-color:inherit!important}.field-reservation-calendar .fc-today{font-weight:900}.field-reservation-calendar .strikethrough{position:relative}.field-reservation-calendar .strikethrough:before{border-bottom:2px solid red;content:"";height:40%;position:absolute;width:100%}.field-reservation-print-group{margin-left:5px}.field-reservation-print-btn{border-radius:4px;padding-left:0;padding-right:0;background:#cccccc}.field-reservation-cancel-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:11000;display:flex;align-items:flex-start;justify-content:center;padding:10vh 1rem 1rem}.field-reservation-cancel-modal-inner{background:#fff;width:min(500px,100%);border-radius:4px;overflow:hidden}.field-reservation-cancel-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:linear-gradient(180deg,#eee,#ccc)}.field-reservation-cancel-iframe{width:100%;height:420px;border:0}@media print{.field-reservation-back,.field-reservation-coach-link,.field-reservation-instructions-link,.field-reservation-more-toggle,.field-reservation-print-btn,.field-reservation-toolbar{display:none!important}.field-reservation-calendar-wrap{overflow:visible;padding:0}.field-reservation-calendar{min-width:0;width:100%}.default-layout>:not(.main-content){display:none!important}}