.service-menu{max-width:480px}
.service-menu[data-step=categories] #room-services{grid-template-columns:1fr 1fr}
.service-menu[data-step=categories] .service-option{padding:14px 12px;min-height:64px}
.service-menu[data-step=categories] .service-option strong{font-size:20px}
.service-menu[data-step=categories] .service-option:last-child:nth-child(odd){grid-column:1/-1}
.service-option i{flex-shrink:0}
.service-menu[data-step=services] #room-services,.service-menu[data-step=variants] #room-services{max-height:min(46svh,450px);overflow-y:auto;overscroll-behavior:contain;padding:2px 4px 4px 2px;scrollbar-width:thin;scrollbar-color:#b99888 transparent}
.service-option .option-copy{min-width:0;display:flex;flex-direction:column;gap:8px}
.service-option .option-copy strong{font-size:18px;line-height:1.22}
.service-option .option-meta{font:11px/1.5 Arial,sans-serif;white-space:normal;margin:0;color:#79565e}
.service-option .option-meta span{display:inline-block}
.service-option .option-meta span+span::before{content:' · ';white-space:pre}
.service-menu[data-step=selected] #service-choice{margin:0;padding:0;border:0}
.service-menu[data-step=selected] .menu-hint{margin-bottom:18px}
.service-menu[data-step=selected] .choice-check{top:0;font-size:22px}
#selected-service{font:26px/1.15 Georgia,serif;letter-spacing:-.03em;padding-right:27px;margin:0 0 16px;overflow-wrap:anywhere}
.choice-facts{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:baseline;border-bottom:1px solid #b58c7045;padding:0 0 17px;margin-bottom:14px}
#selected-price{font:17px/1.5 Arial,sans-serif;font-weight:600;margin:0;color:#683449;max-width:100%}
#selected-duration{font:12px Arial,sans-serif;white-space:nowrap;color:#79565e}
#choice-note{font:11px/1.6 Arial,sans-serif;color:#79565e;margin:0 0 14px}
#service-details{font:11px/1.7 Arial,sans-serif;margin-bottom:18px}
#service-details summary{cursor:pointer;font-size:11px;padding:8px 0;color:#683449;text-decoration:underline;text-underline-offset:4px}
#service-description{white-space:pre-line;margin-top:8px}
#service-extras{padding-left:18px}
#service-conditions:empty,#service-extras:empty{display:none}
#add-to-basket{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:49px;padding:13px 18px;border-radius:30px;background:#683449;color:#fffaf3;text-decoration:none;font:12px/1.4 Arial,sans-serif}
#add-to-basket:hover{background:#512539}
.request-note{font:10px/1.6 Arial,sans-serif;color:#79565e;margin:10px 0 0}
.choice-directions{margin-top:10px;font-size:11px}
.visit-phone{display:inline-block;font:11px Arial,sans-serif;color:#683449;text-underline-offset:4px;margin-top:11px}
#service-note{font-size:11px}
#service-back{min-height:32px;font-size:11px;max-width:100%;text-align:left;line-height:1.4}
@media(min-width:701px){.room-content{align-items:start;padding-top:150px}.service-menu{align-self:center;max-height:calc(100svh - 180px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b99888 transparent}#avatar-stage{position:sticky;top:0}}
@media(max-width:700px){
 .service-menu{padding:22px 20px}
 .service-menu[data-step=categories] .service-option{padding:11px 10px;min-height:57px;gap:7px}
 .service-menu[data-step=categories] .service-option strong{font-size:18px}
 .service-menu[data-step=services] #room-services,.service-menu[data-step=variants] #room-services{max-height:420px}
 .service-option .option-copy strong{font-size:18px}
 #selected-service{font-size:24px}
 .service-menu[data-step=selected] h2{font-size:31px}
}
@media(max-width:370px){.service-menu{padding:19px 17px}.service-menu[data-step=categories] .service-option strong{font-size:16px}}

.visit-hours{font:12px/1.7 Arial,sans-serif;margin:10px 0 0;color:#683449}.visit-hours small{font-size:9px;color:#79565e}
