/* Scoped corrections after mobile review, 03.10.2026. */
html body .ap-search-dialog .ap-search-back { color:#242424; -webkit-tap-highlight-color:transparent; outline:none; border-radius:6px; }
html body .ap-search-dialog .ap-search-back:focus-visible { outline:2px solid #444; outline-offset:-4px; }
html body .ap-search-dialog .ap-search-back[data-pointer-focus]:focus { outline:none; }
html body .salon-card--refined .salon-card__action svg { fill:none; stroke:currentColor; }
html body .salon-card--refined .salon-card__action--catalog svg { color:#fff; }
html body .ap-salon-description .ap-salon-more { color:#242424; -webkit-text-fill-color:#242424; -webkit-tap-highlight-color:transparent; }
html body .ap-service .floor-svg { fill:none; }
html body .ap-service .floor-svg path[stroke]:not([fill]) { fill:none; }
html body .ap-service .floor-svg[hidden] { display:none; }
html body .ap-service .map-stage { height:auto; aspect-ratio:800/240; overflow:auto; }
html body .ap-service .floor-svg { height:auto; min-width:100%; }
html body .ap-service .map-stage.is-focused { aspect-ratio:4/3; }
html body .ap-service .map-stage.is-focused .floor-svg { height:100%; }
html body .ap-service [data-floor-widget] button { color:#30352e; }
html body .ap-service [data-floor-widget] .btn,html body .ap-service .floor-tabs [aria-pressed="true"] { color:#fff; }
html body .schema-page>.ap-service { width:100%; max-width:none; margin:0; padding:0; }
@media(max-width:768px){
 html body .mobile-bottom-nav svg,html body .mobile-bottom-nav svg.ap-commerce-icon { width:28px; height:28px; flex:0 0 28px; }
}

html body .salons-main .salon-card--refined .salon-card__action--catalog span { color:inherit; }

/* Same visual stroke as the 42-unit navigation artwork: 2.29 / 42 * 512. */
@media(max-width:768px){
 html body .mobile-bottom-nav svg.ap-commerce-icon [data-commerce-body],
 html body .mobile-bottom-nav svg.ap-commerce-icon[data-commerce-icon="cart"]>path:not([data-commerce-body]) {
  stroke-width:27.9161904762; stroke-linecap:round; stroke-linejoin:round;
 }
}
/* Keep phone numbers atomic through disclosure reflow, including WebKit. */
html body .ap-salon-contacts { contain:layout paint; }
html body .ap-salon-contacts dd:has(> a[href^="tel:"]) { flex-shrink:0; min-width:max-content; }
html body .ap-salon-contacts dd a[href^="tel:"] {
 display:block; width:max-content; max-width:none; margin-inline-start:auto;
 white-space:nowrap; overflow-wrap:normal; word-break:normal; hyphens:none;
}

/* Three complete homepage categories on phones; preserve the 14px labels. */
@media(max-width:599px){
 html body .ap-home--figma .product-dock { --ap-category-count:3; --ap-category-gap:8px; width:100%!important; margin:0!important; padding:0!important; }
 html body .ap-home--figma .product-dock>a { aspect-ratio:auto; grid-template-rows:auto minmax(34px,auto)!important; padding:4px!important; }
 html body .ap-home--figma .product-dock>a>img { aspect-ratio:1; height:auto!important; }
 html body .ap-home--figma .product-dock>a>span { width:100%; height:auto; min-height:34px; padding:0; white-space:normal; overflow-wrap:normal; word-break:normal; text-align:center; }
}

/* Quiet hierarchy for groups inside the mobile catalogue. */
@media(max-width:1024px){
 html body .mobile-catalog__links .mobile-catalog__sublist>a.mobile-catalog__group-title { font-size:15px!important; font-weight:700!important; line-height:1.4!important; color:#242424; }
 html body .mobile-catalog__links .mobile-catalog__sublist>a.mobile-catalog__group-title:not(:first-child) { border-top:1px solid #e9e9e6!important; border-radius:0!important; margin-top:12px!important; padding-top:16px!important; padding-bottom:8px!important; min-height:46px!important; }
}
