.booking-shell{width:min(1080px,100%);margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid #e3e3e3;border-radius:20px;overflow:hidden;background:white;box-shadow:0 12px 45px #00000004}.booking-story{padding:42px;background:linear-gradient(160deg,#f9f9f9,#f5f3fb);border-right:1px solid #e6e4eb}.booking-story>img{margin-bottom:36px}.booking-story h2{font-size:34px;letter-spacing:-1.3px;line-height:1.2}.booking-story>p:not(.m-kicker){font-size:14px;line-height:1.85;color:#6b6b6b}.booking-story>.m-kicker{margin-bottom:18px}.booking-facts{display:grid;gap:16px;margin:30px 0;font-size:13px;color:#4e4e4e}.booking-story .m-check-list{padding-left:18px;font-size:13px;color:#777;line-height:1.85}.booking-story .m-check-list li+li{margin-top:11px}.booking-help{font-size:12px!important;line-height:1.8!important;margin-top:35px!important}.booking-help a{color:#333;text-decoration:underline;text-underline-offset:3px}.booking-panel{padding:40px;min-height:650px;min-width:0}.booking-calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.booking-calendar-heading h3{font-size:23px;margin:7px 0 0;line-height:1.3;letter-spacing:-.65px}.calendar-nav{display:flex;gap:6px}.calendar-nav button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #e4e4e4;border-radius:8px;background:#fff;font:inherit;font-size:16px}.calendar-nav button:disabled{opacity:.3;cursor:not-allowed}.timezone-label{display:block;font-size:12px;color:#777;margin-bottom:7px}.timezone-select{width:100%;max-width:100%;border:1px solid #dedede;background:#fff;color:#454545;border-radius:8px;padding:10px 11px;font:inherit;font-size:13px;margin-bottom:24px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-week{font-size:10px;color:#777;text-align:center;margin-bottom:11px;letter-spacing:.2px}.calendar-day{height:43px;min-width:0;border:1px solid #dce6f6;border-radius:9px;background:#f2f6fd;color:#285daa;font:inherit;font-size:13px;font-weight:500;position:relative}.calendar-day:disabled{background:transparent;border-color:transparent;color:#b8b8b8;cursor:default;font-weight:400}.calendar-day[aria-current=date]:after{content:'';height:3px;width:3px;background:currentColor;border-radius:50%;position:absolute;left:calc(50% - 1.5px);bottom:6px}.calendar-day[aria-pressed=true]{color:#fff;background:#303030;border-color:#303030}.calendar-day:not(:disabled):hover{border-color:#7ca4df}.booking-panel .m-status{font-size:11px;line-height:1.6!important;margin-top:16px!important;min-height:35px}.booking-times{border-top:1px solid #e8e8e8;margin-top:23px;padding-top:20px}.booking-times h4{font-size:13px;font-weight:500;margin:0 0 14px;line-height:1.5}.time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-slot{background:#fff;border:1px solid #d9d9d9;border-radius:7px;font:inherit;font-size:12px;padding:10px 6px;min-height:39px;line-height:1.4}.time-slot:hover{border-color:#7a7a7a;background:#fafafa}.booking-retry,.booking-back{border:0;padding:0;background:none;color:#315eaa;text-decoration:underline;text-underline-offset:3px;font:inherit;font-size:12px;cursor:pointer}.booking-back{margin:0 0 27px}.booking-back:disabled{color:#999;cursor:not-allowed}.booking-panel .m-form h3{font-size:20px;line-height:1.55;letter-spacing:-.5px;margin:8px 0 24px}.booking-panel .m-grid{gap:16px}.booking-panel .m-form label{font-size:12px}.booking-panel .m-form input,.booking-panel .m-form select{font-size:13px;min-width:0}.booking-panel .m-form label span{font-weight:400;color:#777}.booking-panel .m-form .m-checkbox{font-size:11px;margin-top:25px}.booking-panel .m-form .m-checkbox input{margin-top:2px}.booking-panel .m-form .m-checkbox span{color:#666;line-height:1.7}.booking-panel .m-form .button{font-size:13px}.booking-panel .m-form input:disabled,.booking-panel .m-form select:disabled{background:#f7f7f7;color:#777}.booking-panel button:disabled:not(.calendar-day){cursor:not-allowed}.booking-success{padding-top:30px;outline:none}.booking-success-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ded3f5;border-radius:13px;background:#f3edff;color:#7751ba;font-size:21px;margin-bottom:30px}.booking-success h3{font-size:30px;line-height:1.2;letter-spacing:-.9px;margin:12px 0 24px}.booking-success>p{font-size:13px;line-height:1.8}.booking-success #booking-confirmed-time{font-size:17px;line-height:1.6;color:#303030}.booking-success .m-actions{justify-content:flex-start;gap:10px}.booking-success .button{font-size:12px;padding-inline:14px}.booking-manage-card{max-width:760px;margin:auto;padding:38px;background:#fff}.booking-manage-card>.m-actions{justify-content:flex-start}.booking-manage-card .button{font-size:13px}.booking-manage-card #manage-detail{font-size:19px;color:#303030;line-height:1.7}.booking-manage-card #manage-status{font-size:13px;margin-top:20px}.booking-manage-card .m-note{font-size:12px}.booking-reschedule,.booking-cancel-confirm{border-top:1px solid #e7e7e7;padding-top:28px;margin-top:30px}.booking-reschedule-calendar{max-width:470px;margin:auto}.booking-reschedule-confirm h3{font-size:23px;line-height:1.5}.booking-reschedule-confirm p{font-size:13px}.booking-reschedule .m-actions,.booking-cancel-confirm .m-actions{justify-content:flex-start}.booking-cancel-confirm h3{font-size:22px}.booking-cancel-confirm p{font-size:13px}.booking-button-cancel{background:#a73624;color:#fff;border:1px solid #a73624}.booking-button-cancel:hover{background:#8b2c1d}.booking-cancel-confirm .button:disabled,.booking-reschedule .button:disabled{opacity:.5;cursor:not-allowed}.booking-shell input:focus-visible,.booking-shell select:focus-visible,.booking-manage-card select:focus-visible{outline:2px solid #8b5cff;outline-offset:3px}.booking-shell button:focus-visible,.booking-manage-card button:focus-visible{outline:3px solid #92bdff;outline-offset:3px}
@media(max-width:900px){.booking-shell{grid-template-columns:.8fr 1.2fr}.booking-story{padding:30px}.booking-panel{padding:30px}.booking-story h2{font-size:29px}.booking-facts{font-size:12px}.calendar-week,.calendar-days{gap:5px}.calendar-day{height:39px}.time-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-panel .m-grid{grid-template-columns:1fr;gap:0}.booking-panel .m-form h3{font-size:18px}}
@media(max-width:680px){.booking-shell{grid-template-columns:1fr;border-radius:15px}.booking-story{padding:27px;border-right:0;border-bottom:1px solid #e6e4eb}.booking-story>img{margin-bottom:23px;width:27px;height:27px}.booking-story h2{font-size:29px}.booking-story>p:not(.m-kicker){font-size:13px}.booking-facts{gap:10px;margin:20px 0}.booking-story .m-check-list{display:none}.booking-story .booking-help{margin-top:17px!important}.booking-panel{padding:25px 22px;min-height:630px}.booking-calendar-heading h3{font-size:22px}.calendar-day{height:41px}.calendar-week,.calendar-days{gap:6px}.time-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-panel .m-form h3{font-size:20px}.booking-manage-card{padding:25px 22px}.booking-manage-card #manage-detail{font-size:16px}.booking-manage-card>.m-actions{align-items:stretch;flex-direction:column}.booking-manage-card>.m-actions .button{white-space:normal}.booking-reschedule-confirm h3{font-size:19px}.booking-cancel-confirm .m-actions,.booking-reschedule-confirm .m-actions{flex-direction:column;align-items:stretch}.booking-cancel-confirm .button{white-space:normal}.booking-success h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){.booking-shell *,.booking-manage-card *{scroll-behavior:auto}}
.booking-manage-card .m-actions .button{margin-top:0}
