:root{--primary:#ec7dad;--primary-dark:#db5c97;--primary-soft:#ec7dad24;--green:#f7a6c8;--green-soft:#f7a6c824;--blue:#f39bc4;--blue-soft:#f39bc424;--text-main:#2b1721;--text-muted:#9a6b80;--bg-app:#fff7fb;--bg-light:#fff2f8;--white:#fff;--border-color:#e873a929;--border-strong:#e873a95c;--shadow-sm:0 4px 12px #a7406f1a;--shadow-md:0 8px 20px #a7406f24;--transition:.18s ease}img,svg{max-width:100%}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.reservation_page{background:var(--bg-app);width:100%;min-height:100dvh;color:var(--text-main);flex-direction:column;display:flex;overflow-x:hidden}.reservation_page.reservation_loading_page{background:radial-gradient(circle at 0 0,#ec7dad29,#0000 32%),radial-gradient(circle at 100% 0,#ffb9d724,#0000 30%),linear-gradient(#fff7fb 0%,#fff1f7 50%,#fff 100%);justify-content:center;align-items:center;min-height:100dvh;padding:24px}.reservation_page .reservation_minimal_loader{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;min-height:calc(100dvh - 48px);display:flex}.reservation_page .reservation_loader_ring{width:58px;height:58px;color:var(--primary-dark);background:#ffffffbd;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 10px 24px #a7406f1a}.reservation_page .reservation_loader_ring:before{content:"";border:2px solid #ec7dad2e;border-top-color:var(--primary);border-radius:inherit;border-right-color:#db5c979e;animation:.85s linear infinite reservationLoaderSpin;position:absolute;inset:0}.reservation_page .reservation_loader_ring:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #ec7dad1f;position:absolute;inset:7px}.reservation_page .reservation_loader_ring svg{z-index:1;position:relative}.reservation_page .reservation_loader_copy{flex-direction:column;align-items:center;gap:4px;display:flex}.reservation_page .reservation_loader_copy strong{color:var(--text-main);letter-spacing:-.02em;font-size:.96rem;font-weight:900}.reservation_page .reservation_loader_copy span{color:var(--text-muted);font-size:.78rem;font-weight:650}.reservation_page .header{flex-shrink:0;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:8px;width:100%;min-height:56px;margin-bottom:12px;display:grid}.reservation_page .header .back_btn{background-color:var(--white);border:1px solid var(--border-color);cursor:pointer;width:38px;height:38px;color:var(--text-main);box-shadow:var(--shadow-sm);transition:background-color var(--transition), border-color var(--transition), color var(--transition), opacity var(--transition);border-radius:13px;place-items:center;display:grid}.reservation_page .header .back_btn:active{border-color:var(--primary);color:var(--primary);background-color:var(--primary-soft);opacity:.9}.reservation_page .header .title{min-width:0;color:var(--text-main);letter-spacing:-.04em;text-align:center;overflow-wrap:anywhere;margin:0;padding-inline:6px;font-size:clamp(1rem,5vw,1.35rem);font-weight:900;line-height:1.1}.reservation_page .header .header_icon{width:38px;height:38px;color:var(--text-muted);flex-shrink:0;place-items:center;display:grid}.reservation_page .progress_section{flex-direction:column;flex-shrink:0;gap:8px;width:100%;margin-bottom:16px;display:flex}.reservation_page .progress_section .progress_info{justify-content:space-between;align-items:center;gap:12px;display:flex}.reservation_page .progress_section .progress_info .step{color:var(--primary);font-size:clamp(.72rem,3.2vw,.86rem);font-weight:900}.reservation_page .progress_section .progress_info .percentage{color:var(--text-muted);flex:none;font-size:clamp(.68rem,3vw,.78rem);font-weight:700}.reservation_page .progress_section .progress_bar_track{background-color:#e873a91f;border-radius:999px;width:100%;height:7px;overflow:hidden}.reservation_page .progress_section .progress_bar_track .progress_bar_fill{background:linear-gradient(90deg, var(--primary-dark), var(--primary));border-radius:inherit;height:100%;transition:width var(--transition)}.reservation_page .form_container{flex-direction:column;flex:1;gap:14px;width:100%;min-height:0;display:flex}.reservation_page .form_container .input_group{flex-direction:column;gap:8px;min-width:0;display:flex}.reservation_page .form_container .input_group label{color:var(--primary);font-size:clamp(.76rem,3.2vw,.9rem);font-weight:900}.reservation_page .form_container .input_group input{border:1px solid var(--border-color);width:100%;min-height:48px;box-shadow:var(--shadow-sm);background-color:var(--white);color:var(--text-main);transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition);border-radius:16px;outline:none;padding:13px 15px;font-size:clamp(.88rem,3.6vw,1rem)}.reservation_page .form_container .input_group input::placeholder{color:var(--text-muted)}.reservation_page .form_container .input_group input:focus{border-color:var(--primary);background-color:var(--bg-light);box-shadow:0 0 0 3px #ec7dad24}.reservation_page .form_container .input_group .phone_container{grid-template-columns:minmax(92px,.36fr) minmax(0,1fr);gap:10px;display:grid}.reservation_page .form_container .input_group .phone_container .select_box{align-items:center;width:100%;min-width:0;display:flex;position:relative}.reservation_page .form_container .input_group .phone_container .select_box select{border:1px solid var(--border-color);width:100%;min-height:48px;box-shadow:var(--shadow-sm);background-color:var(--white);color:var(--text-main);appearance:none;transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition);border-radius:16px;outline:none;padding:13px 34px 13px 12px;font-size:clamp(.82rem,3.4vw,1rem)}.reservation_page .form_container .input_group .phone_container .select_box select:focus{border-color:var(--primary);background-color:var(--bg-light);box-shadow:0 0 0 3px #ec7dad24}.reservation_page .form_container .input_group .phone_container .select_box .chevron{pointer-events:none;color:var(--text-muted);position:absolute;right:12px}.reservation_page .form_container .input_group .phone_container .phone_input{width:100%;min-width:0}.reservation_page .form_container .checkbox_container{align-items:flex-start;gap:10px;margin-top:6px;display:flex}.reservation_page .form_container .checkbox_container input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);border-radius:6px;flex-shrink:0;margin-top:1px}.reservation_page .form_container .checkbox_container label{color:var(--text-muted);font-size:clamp(.76rem,3.2vw,.86rem);line-height:1.45}.reservation_page .form_container .checkbox_container label span{color:var(--primary);text-underline-offset:3px;font-weight:800;text-decoration:underline}.reservation_page .step_two_container{flex-direction:column;flex:1;gap:18px;width:100%;min-height:0;display:flex}.reservation_page .step_two_container .section_block{flex-direction:column;gap:12px;min-width:0;display:flex}.reservation_page .step_two_container .section_title{color:var(--text-main);letter-spacing:-.03em;margin:0;font-size:clamp(1rem,4vw,1.15rem);font-weight:900;line-height:1.15}.reservation_page .step_two_container .services_selection_grid{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.reservation_page .step_two_container .service_select_card{background-color:var(--white);border:1px solid var(--border-color);min-width:0;box-shadow:var(--shadow-sm);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), opacity var(--transition);border-radius:18px;grid-template-columns:64px minmax(0,1fr);gap:10px;padding:10px;display:grid;position:relative;overflow:hidden}.reservation_page .step_two_container .service_select_card:active{border-color:var(--border-strong);background-color:var(--bg-light);opacity:.94}.reservation_page .step_two_container .service_select_card.selected_item{background-color:var(--primary-soft);border-color:#ec7dad42}.reservation_page .step_two_container .service_select_card.focused_item{border-color:var(--primary);background-color:var(--primary-soft)}.reservation_page .step_two_container .service_select_card .service_card_img{background-color:var(--bg-light);border:1px solid var(--border-color);border-radius:14px;flex-shrink:0;width:64px;height:64px;overflow:hidden}.reservation_page .step_two_container .service_select_card .service_card_img img{object-fit:cover;width:100%;height:100%;display:block}.reservation_page .step_two_container .service_select_card .service_card_content{flex-direction:column;justify-content:center;min-width:0;display:flex}.reservation_page .step_two_container .service_select_card .service_card_content .service_header_row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.reservation_page .step_two_container .service_select_card .service_card_content .service_header_row .service_category{min-width:0;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:900;overflow:hidden}.reservation_page .step_two_container .service_select_card .service_card_content .service_header_row .service_duration{color:var(--primary-dark);background-color:var(--green-soft);border-radius:999px;flex-shrink:0;padding:3px 6px;font-size:.62rem;font-weight:900}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_title{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(.84rem,3.6vw,.96rem);font-weight:900;line-height:1.18;overflow:hidden}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 6px;font-size:clamp(.7rem,3vw,.76rem);line-height:1.32;display:-webkit-box;overflow:hidden}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_price_box{flex-wrap:wrap;align-items:center;gap:7px;margin-top:auto;display:flex}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_price_box .regular_price{color:var(--text-main);font-size:clamp(.84rem,3.6vw,.95rem);font-weight:900}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_price_box .old_price{color:var(--text-muted);font-size:.74rem;font-weight:750;text-decoration:line-through}.reservation_page .step_two_container .service_select_card .service_card_content .service_card_price_box .new_price{color:var(--primary);font-size:clamp(.84rem,3.6vw,.95rem);font-weight:950}.reservation_page .step_two_container .service_select_card .selection_indicator{background-color:var(--primary);color:#fff;border-radius:999px;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:8px;right:8px}.reservation_page .step_two_container .calendar_header{justify-content:space-between;align-items:center;gap:10px;display:flex}.reservation_page .step_two_container .calendar_header .month_label{color:var(--primary);align-items:center;gap:5px;min-width:0;font-size:clamp(.82rem,3.4vw,.95rem);font-weight:900;display:flex}.reservation_page .step_two_container .calendar_wrapper{background-color:var(--white);width:100%;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);border-radius:18px;padding:12px}.reservation_page .step_two_container .calendar_wrapper .week_days{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:10px;display:grid}.reservation_page .step_two_container .calendar_wrapper .week_days span{text-align:center;color:var(--text-muted);font-size:.66rem;font-weight:800}.reservation_page .step_two_container .calendar_wrapper .days_grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num{min-height:34px;color:var(--text-main);cursor:pointer;transition:background-color var(--transition), color var(--transition), opacity var(--transition);border-radius:11px;place-items:center;font-size:.78rem;font-weight:800;display:grid}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num:active:not(.disabled_day):not(.selected_day){background-color:var(--primary-soft)}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num.disabled_day{color:#9a6b8059;cursor:not-allowed;pointer-events:none;background:0 0}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num.selected_day.active_blue{background:linear-gradient(135deg, var(--primary), var(--blue));color:#fff;border-radius:999px;font-weight:950}.reservation_page .step_two_container .time_grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.reservation_page .step_two_container .time_grid .time_chip{background-color:var(--white);border:1px solid var(--border-color);min-width:0;min-height:42px;color:var(--text-main);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--transition), border-color var(--transition), color var(--transition), opacity var(--transition);border-radius:15px;padding:10px 8px;font-size:.82rem;font-weight:850}.reservation_page .step_two_container .time_grid .time_chip:active:not(.taken_time){border-color:var(--primary);color:var(--primary);background-color:var(--primary-soft)}.reservation_page .step_two_container .time_grid .time_chip.active_outline{color:#fff;background:linear-gradient(135deg, var(--primary), var(--blue));border-color:#0000;font-weight:950}.reservation_page .step_two_container .time_grid .time_chip.taken_time{cursor:not-allowed;color:#9a6b8073;box-shadow:none;border-color:#0000;text-decoration:line-through;background-color:#e873a914!important}.reservation_page .step_three_container{flex-direction:column;flex:1;gap:16px;width:100%;min-height:0;display:flex}.reservation_page .step_three_container .main_section_title{color:var(--text-main);letter-spacing:-.03em;margin:0 0 2px;font-size:clamp(1rem,4vw,1.2rem);font-weight:900;line-height:1.15}.reservation_page .step_three_container .payment_options_list{flex-direction:column;gap:10px;display:flex}.reservation_page .step_three_container .payment_options_list .payment_card{background-color:var(--white);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), opacity var(--transition);border-radius:18px;grid-template-columns:42px minmax(0,1fr) 22px;align-items:start;gap:10px;padding:12px;display:grid;position:relative}.reservation_page .step_three_container .payment_options_list .payment_card:active{background-color:var(--bg-light);border-color:var(--border-strong);opacity:.94}.reservation_page .step_three_container .payment_options_list .payment_card.selected_card{border-color:var(--primary);background-color:var(--primary-soft)}.reservation_page .step_three_container .payment_options_list .payment_card .card_icon_wrapper{border-radius:13px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.reservation_page .step_three_container .payment_options_list .payment_card .card_icon_wrapper.pink_bg{background-color:var(--primary-soft);color:var(--primary)}.reservation_page .step_three_container .payment_options_list .payment_card .card_icon_wrapper.blue_bg{background-color:var(--blue-soft);color:var(--blue)}.reservation_page .step_three_container .payment_options_list .payment_card .card_content{flex-direction:column;gap:5px;min-width:0;display:flex}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header .card_title{min-width:0;color:var(--text-main);overflow-wrap:anywhere;font-size:clamp(.86rem,3.6vw,.96rem);font-weight:900;line-height:1.2}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header .card_price{color:var(--primary);flex-shrink:0;font-size:clamp(.95rem,4vw,1.1rem);font-weight:950}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header .card_price.blue_text{color:var(--blue)}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_desc{width:100%;color:var(--text-muted);margin:0;font-size:clamp(.72rem,3vw,.82rem);line-height:1.38}.reservation_page .step_three_container .payment_options_list .payment_card .radio_circle{background-color:var(--white);border:2px solid #e873a947;border-radius:999px;place-self:center end;width:20px;height:20px}.reservation_page .step_three_container .payment_options_list .payment_card .radio_circle.active_radio{border-color:var(--primary);position:relative}.reservation_page .step_three_container .payment_options_list .payment_card .radio_circle.active_radio:after{content:"";background-color:var(--primary);border-radius:999px;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reservation_page .step_three_container .summary_card{background-color:#ec7dad1a;border:1px solid #ec7dad2e;border-radius:18px;width:100%;margin-top:2px;padding:14px}.reservation_page .step_three_container .summary_card .summary_title{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px;font-size:.74rem;font-weight:900}.reservation_page .step_three_container .summary_card .summary_row{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:clamp(.78rem,3.3vw,.9rem);display:flex}.reservation_page .step_three_container .summary_card .summary_row .summary_item_main{flex-direction:column;min-width:0;display:flex}.reservation_page .step_three_container .summary_card .summary_row .summary_item_main span{color:var(--text-main);overflow-wrap:anywhere;font-size:clamp(.86rem,3.6vw,1rem);font-weight:850}.reservation_page .step_three_container .summary_card .summary_row .summary_item_main small{color:var(--text-muted);margin-top:2px;font-size:.74rem}.reservation_page .step_three_container .summary_card .summary_row .summary_price{color:var(--text-main);flex-shrink:0;font-size:clamp(.86rem,3.6vw,1rem);font-weight:900}.reservation_page .step_three_container .summary_card .summary_row .pink_text{color:var(--primary);font-weight:900}.reservation_page .step_three_container .summary_card .summary_row .large_text{font-size:clamp(1.15rem,5vw,1.4rem)}.reservation_page .step_three_container .summary_card .summary_row.bg_highlight{color:var(--text-main);background-color:#ffffffb8;border-radius:12px;margin:5px 0;padding:10px;font-weight:800}.reservation_page .step_three_container .summary_card .summary_row.total_row{margin-top:5px;margin-bottom:0}.reservation_page .step_three_container .summary_card .summary_row.total_row span:first-child{color:var(--text-main);font-size:clamp(.96rem,4vw,1.1rem);font-weight:900}.reservation_page .step_three_container .summary_card .divider{background-color:#ec7dad2e;height:1px;margin:12px 0}.reservation_page .footer{flex-shrink:0;justify-content:center;margin-top:auto;padding-top:16px;display:flex}.reservation_page .footer .next_button{background:linear-gradient(135deg, var(--primary-dark), var(--primary));color:#fff;cursor:pointer;width:100%;min-height:50px;transition:opacity var(--transition), filter var(--transition);border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:14px 18px;font-size:clamp(.9rem,3.8vw,1rem);font-weight:950;display:inline-flex}.reservation_page .footer .next_button:active:not(:disabled){opacity:.86}.reservation_page .footer .next_button:disabled{cursor:not-allowed;opacity:.48;filter:grayscale(.35)}@keyframes reservationLoaderSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.reservation_page *,.reservation_page :before,.reservation_page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reservation_page .reservation_loader_ring:before{border-color:#ec7dad47;border-top-color:var(--primary);animation:none}}@media (max-width:360px){.reservation_page .header{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.reservation_page .header .back_btn,.reservation_page .header .header_icon{border-radius:12px;width:36px;height:36px}.reservation_page .header .title{font-size:.96rem}.reservation_page .form_container .input_group .phone_container{grid-template-columns:1fr}.reservation_page .step_two_container .service_select_card{grid-template-columns:56px minmax(0,1fr)}.reservation_page .step_two_container .service_select_card .service_card_img{border-radius:13px;width:56px;height:56px}.reservation_page .step_two_container .calendar_wrapper{padding:10px}.reservation_page .step_two_container .calendar_wrapper .days_grid{gap:5px}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num{min-height:31px;font-size:.72rem}.reservation_page .step_two_container .time_grid{gap:7px}.reservation_page .step_two_container .time_grid .time_chip{min-height:39px;font-size:.76rem}.reservation_page .step_three_container .payment_options_list .payment_card{grid-template-columns:38px minmax(0,1fr) 20px;padding:10px}.reservation_page .step_three_container .payment_options_list .payment_card .card_icon_wrapper{width:38px;height:38px}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header{flex-direction:column;gap:4px}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_header .card_price{align-self:flex-start}.reservation_page .step_three_container .summary_card{padding:12px}}@media (min-width:480px){.reservation_page .step_two_container .services_selection_grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation_page .step_two_container .time_grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (hover:hover) and (pointer:fine){.reservation_page .header .back_btn:hover{border-color:var(--primary);color:var(--primary);background-color:var(--primary-soft)}.reservation_page .step_two_container .service_select_card:hover{border-color:var(--border-strong);background-color:var(--bg-light)}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num:hover:not(.disabled_day):not(.selected_day){background-color:var(--primary-soft)}.reservation_page .step_two_container .time_grid .time_chip:hover:not(.taken_time){border-color:var(--primary);color:var(--primary);background-color:var(--primary-soft)}.reservation_page .step_three_container .payment_options_list .payment_card:hover{border-color:var(--border-strong);background-color:var(--bg-light)}.reservation_page .footer .next_button:hover:not(:disabled){opacity:.9}}@media (min-width:768px){.reservation_page{background:radial-gradient(circle at 0 0,#ec7dad24,#0000 32%),radial-gradient(circle at 100% 0,#ffb9d724,#0000 30%),radial-gradient(circle at 0 100%,#f48fbe1f,#0000 34%),linear-gradient(#fff7fb 0%,#fff1f7 48%,#fff 100%)}.reservation_page .header{grid-template-columns:44px minmax(0,1fr) 44px;min-height:70px;margin-bottom:20px}.reservation_page .header .back_btn,.reservation_page .header .header_icon{border-radius:16px;width:44px;height:44px}.reservation_page .header .title{font-size:clamp(1.35rem,3vw,1.6rem)}.reservation_page .progress_section{margin-bottom:22px}.reservation_page .form_container{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:18px 24px;display:grid}.reservation_page .form_container .input_group{gap:10px}.reservation_page .form_container .input_group input{border-radius:18px;min-height:52px;padding:15px 18px}.reservation_page .form_container .input_group .phone_container{grid-template-columns:minmax(120px,.34fr) minmax(0,1fr);gap:12px}.reservation_page .form_container .input_group .phone_container .select_box select{border-radius:18px;min-height:52px;padding:15px 38px 15px 14px}.reservation_page .form_container .checkbox_container{grid-column:1/-1;margin-top:10px}.reservation_page .step_two_container{gap:22px}.reservation_page .step_two_container .section_block{gap:14px}.reservation_page .step_two_container .services_selection_grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reservation_page .step_two_container .service_select_card{border-radius:20px;grid-template-columns:72px minmax(0,1fr);padding:12px}.reservation_page .step_two_container .service_select_card .service_card_img{border-radius:15px;width:72px;height:72px}.reservation_page .step_two_container .calendar_wrapper{border-radius:22px;padding:16px}.reservation_page .step_two_container .calendar_wrapper .days_grid{gap:8px}.reservation_page .step_two_container .calendar_wrapper .days_grid .day_num{border-radius:13px;min-height:38px;font-size:.86rem}.reservation_page .step_two_container .time_grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.reservation_page .step_two_container .time_grid .time_chip{border-radius:16px;min-height:44px;font-size:.86rem}.reservation_page .step_three_container{gap:20px}.reservation_page .step_three_container .payment_options_list{gap:14px}.reservation_page .step_three_container .payment_options_list .payment_card{border-radius:22px;grid-template-columns:48px minmax(0,1fr) 22px;gap:14px;padding:18px}.reservation_page .step_three_container .payment_options_list .payment_card .card_icon_wrapper{border-radius:15px;width:48px;height:48px}.reservation_page .step_three_container .payment_options_list .payment_card .card_content .card_desc{width:92%}.reservation_page .step_three_container .summary_card{border-radius:22px;padding:20px}.reservation_page .footer{padding-top:20px}.reservation_page .footer .next_button{border-radius:18px;width:min(360px,100%);min-height:54px;margin-left:auto}}@media (min-width:1024px){.reservation_page{height:100dvh;min-height:100dvh;overflow:hidden}.reservation_page .form_container{gap:22px 36px}.reservation_page .step_two_container{overflow:hidden}.reservation_page .step_two_container .services_selection_grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.reservation_page .step_two_container .section_block:has(.calendar_wrapper){grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px;min-height:0;display:grid}.reservation_page .step_two_container .section_block:has(.calendar_wrapper) .calendar_wrapper,.reservation_page .step_two_container .section_block:has(.calendar_wrapper) .time_grid{min-width:0}.reservation_page .step_two_container .section_block:has(.calendar_wrapper) .time_grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px}.reservation_page .step_three_container{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;gap:28px;min-height:0;display:grid}.reservation_page .step_three_container .payment_options_list{grid-column:1;min-width:0}.reservation_page .step_three_container .summary_card{grid-column:2;margin-top:0;position:sticky;top:0}}@media (min-width:1280px){.reservation_page .form_container{column-gap:40px}.reservation_page .step_two_container .services_selection_grid{gap:20px}.reservation_page .step_two_container .section_block:has(.calendar_wrapper){gap:40px}.reservation_page .step_two_container .section_block:has(.calendar_wrapper) .time_grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px}.reservation_page .step_three_container{grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:40px}}
