/* Isolated mobile catalogue layer. Desktop styles stay in custom.css unchanged. */
@media (max-width: 767px) {
	:root { --k24-blue: #174b5a; --k24-link: #0087c7; --k24-orange: #ff3d0a; }
	/* The production Bootstrap build has no .hidden-xs utility. */
	.site-header.hidden-xs { display: none !important; }
	.mobile-site-header { background: #fff; color: var(--k24-blue); padding: 8px 14px 12px; }
	.mobile-site-header__promo { background: #f5f7f8; border-bottom: 1px solid #dae5ea; font-size: 13px; line-height: 1.35; margin-bottom: 8px; padding: 5px; text-align: center; }
	.mobile-site-header__promo strong { color: var(--k24-orange); }
	.mobile-site-header__top { align-items: center; display: grid; gap: 7px; grid-template-columns: 54px minmax(0, 1fr) auto; min-width: 0; }
	.mobile-site-header__logo { display: block; height: 58px; object-fit: contain; width: 54px; }
	.mobile-site-header__contact { align-items: center; display: flex; font-size: 14px; font-weight: 700; min-width: 0; white-space: nowrap; }
	.mobile-site-header__contact > a { color: var(--k24-blue); text-decoration: none; }
	.mobile-site-header__phone-more { margin-left: 5px; position: relative; }
	.mobile-site-header__phone-more summary { cursor: pointer; display: block; list-style: none; padding: 8px 3px; }
	.mobile-site-header__phone-more summary::-webkit-details-marker { display: none; }
	.mobile-site-header__phone-more[open] .glyphicon { transform: rotate(180deg); }
	.mobile-site-header__phone-more > div { background: #fff; border: 1px solid #dce5e9; border-radius: 8px; box-shadow: 0 8px 18px rgba(0,0,0,.15); padding: 6px 9px; position: absolute; right: 0; top: 36px; width: 162px; z-index: 101; }
	.mobile-site-header__phone-more > div a { color: var(--k24-blue); display: block; line-height: 2; text-decoration: none; }
	.mobile-site-header__actions { align-items: center; display: flex; gap: 5px; }
	.mobile-language-switch { border: 1px solid #d9e2e7; border-radius: 7px; display: flex; overflow: hidden; }
	.mobile-language-switch__item { color: #31434b; font-size: 12px; font-weight: 700; padding: 8px 7px; text-decoration: none; }
	.mobile-language-switch__item.is-active { background: var(--k24-orange); color: #fff; }
	.mobile-site-header__cart { align-items: center; color: var(--k24-blue); display: flex; font-size: 22px; height: 40px; justify-content: center; position: relative; text-decoration: none; width: 40px; }
	.mobile-site-header__cart-count { align-items: center; background: var(--k24-orange); border: 2px solid #fff; border-radius: 50%; color: #fff; display: flex; font-size: 11px; height: 20px; justify-content: center; min-width: 20px; position: absolute; right: 0; top: 0; }
	.mobile-site-header__search { display: grid; gap: 0; grid-template-columns: 108px minmax(0, 1fr) 48px; margin-top: 8px; }
	.mobile-site-header__search input { border: 1px solid #cbd5db; border-radius: 0; font-size: 15px; height: 48px; min-width: 0; padding: 8px; }
	.mobile-site-header__catalog-button, .mobile-site-header__search-submit { border: 0; color: #fff; font-size: 18px; height: 48px; }
	.mobile-site-header__catalog-button { align-items: center; background: var(--k24-blue); border-radius: 8px 0 0 8px; display: flex; justify-content: center; padding: 0 8px; white-space: nowrap; }
	.mobile-site-header__catalog-label { font-size: 14px; font-weight: 700; margin-left: 6px; }
	.mobile-site-header__search-submit { background: var(--k24-orange); border-radius: 0 8px 8px 0; }
	.mobile-category-drawer[hidden] { display: none !important; }
	.mobile-category-drawer { bottom: 0; left: 0; position: fixed; right: 0; top: 0; z-index: 10050; }
	.mobile-category-drawer__backdrop { background: rgba(18,32,39,.48); bottom: 0; left: 0; position: absolute; right: 0; top: 0; }
	.mobile-category-drawer__panel { background: #fff; bottom: 0; max-width: 430px; overflow-y: auto; position: absolute; right: 0; top: 0; width: 88%; }
	.mobile-category-drawer__heading { align-items: center; border-bottom: 1px solid #e5e7eb; display: flex; font-size: 18px; justify-content: space-between; padding: 13px 16px; }
	.mobile-category-drawer__heading button { background: transparent; border: 0; color: var(--k24-blue); font-size: 32px; line-height: 1; min-height: 44px; min-width: 44px; }
	.mobile-category-drawer__list, .mobile-category-drawer__branch { list-style: none; margin: 0; padding: 0; }
	.mobile-category-drawer__list > li > a, .mobile-category-drawer__row > a { color: #22343b; display: block; font-size: 16px; font-weight: 600; line-height: 1.3; padding: 14px 16px; text-decoration: none; }
	.mobile-category-drawer__row { align-items: stretch; border-bottom: 1px solid #edf0f2; display: flex; }
	.mobile-category-drawer__row > a { flex: 1; }
	.mobile-category-drawer__row button { background: #fff; border: 0; color: var(--k24-link); min-height: 48px; min-width: 48px; }
	.mobile-category-drawer__row button[aria-expanded="true"] .glyphicon { transform: rotate(180deg); }
	.mobile-category-drawer__branch { background: #f7fafb; }
	.mobile-category-drawer__branch .mobile-category-drawer__row > a { font-size: 14px; padding-left: 30px; }
	.mobile-category-drawer__branch .mobile-category-drawer__branch .mobile-category-drawer__row > a { padding-left: 44px; }
	.mobile-category-drawer.is-open { animation: k24Fade .16s ease-out; }
	body.mobile-catalog-open { overflow: hidden; }
	.breadcrumb { -webkit-overflow-scrolling: touch; display: flex; margin: 8px 0 12px; overflow-x: auto; white-space: nowrap; }
	.breadcrumb > li { flex: 0 0 auto; font-size: 14px; }
	.breadcrumb > li:only-child { display: none; }
	.breadcrumb__home a { align-items: center; display: inline-flex; font-size: 19px; min-height: 34px; }
	.breadcrumb:has(> li:only-child) { display: none; }
	.catalog-page-layout h1, .site-main h1 { font-size: 22px; line-height: 1.2; margin: 14px 0; }
	.catalog-brand-picker, .catalog-top-brand-filter { margin: 10px 0 16px; }
	.catalog-brand-picker__grid, .catalog-top-brand-filter__options { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.catalog-brand-picker__item, .catalog-top-brand-filter__item { align-items: center; background: #fff; border: 1px solid #e5e7eb !important; border-radius: 8px !important; display: flex !important; height: 52px; justify-content: center; margin: 0 !important; min-width: 0; padding: 6px !important; }
	.catalog-brand-picker__item img, .catalog-top-brand-filter__item img { height: auto; max-height: 26px; max-width: 85%; object-fit: contain; width: auto; }
	.js .catalog-brand-picker__item:nth-child(n+7), .js .catalog-top-brand-filter__item:nth-child(n+7) { display: none !important; }
	.js .catalog-brand-picker.is-expanded .catalog-brand-picker__item:nth-child(n+7), .js .catalog-top-brand-filter.is-expanded .catalog-top-brand-filter__item:nth-child(n+7) { animation: k24Fade .18s ease-out; display: flex !important; }
	.btn-toggle-catalog-brands { background: #f1f5f9; border: 1px solid #e2e8f0; border-radius: 8px; color: #1e293b; font-size: 13px; font-weight: 600; height: 40px; margin-top: 8px; width: 100%; }
	.btn-toggle-catalog-brands .glyphicon { margin-left: 5px; transition: transform .18s ease; }
	.btn-toggle-catalog-brands[aria-expanded="true"] .glyphicon { transform: rotate(180deg); }
	.catalog-sidebar__toggle { align-items: center; background: #f5fbfd; border: 1px solid #a9dff2; border-radius: 10px; color: var(--k24-link); display: flex; font-size: 17px; font-weight: 700; justify-content: space-between; margin: 5px 0 12px; min-height: 52px; padding: 8px 15px; width: 100%; }
	.catalog-sidebar__toggle::after { content: '\e114'; font-family: 'Glyphicons Halflings'; font-size: 14px; }
	.catalog-sidebar__toggle[aria-expanded="true"]::after { transform: rotate(180deg); }
	.catalog-subcategory-list[hidden] { display: none; }
	.catalog-subcategory-list .list-group-item { font-size: 16px; line-height: 1.3; min-height: 50px; padding: 14px 15px; }
	.catalog-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 768px) {
	/* Do not rely on the partial Bootstrap responsive utility set in production. */
	.mobile-site-header,
	.mobile-category-drawer,
	.catalog-sidebar__toggle[data-catalog-subcategory-toggle] { display: none !important; }
	/* The same list is collapsed only on mobile; keep it visible in the desktop sidebar. */
	.catalog-sidebar .catalog-subcategory-list[hidden] { display: block !important; }
	/* Brand disclosure is a mobile control; desktop shows the complete logo row. */
	.btn-toggle-catalog-brands { display: none !important; }
}
.home-sidebar .panel-heading[role="tab"] { align-items: center; display: flex; }
.home-category-accordion__title { flex: 1; margin: 0; }
.home-category-accordion__title a { display: block; }
.home-category-branch-toggle { background: transparent; border: 0; color: inherit; flex: 0 0 44px; min-height: 44px; padding: 8px; }
.home-category-branch-toggle .glyphicon { transition: transform .18s ease; }
.home-category-branch-toggle[aria-expanded="true"] .glyphicon { transform: rotate(180deg); }
@media (max-width: 767px) {
	/* Keep the compact mobile breadcrumb unchanged after restoring its desktop label. */
	.breadcrumb__home-label { display: none; }
	.product-page-layout { display: flex; flex-direction: column; }
	.product-page-layout > .product-gallery { margin-bottom: 10px; order: -1; }
	.product-gallery > .zoom { background: #fff; border: 1px solid #e3edf1; border-radius: 8px; display: block; padding: 5px; }
	.product-gallery .featurette-image { max-height: 320px; object-fit: contain; width: 100%; }
	.product-buy-card__code { background: transparent; border: 0; color: #60727d; display: block; font-size: 14px; font-weight: 600; margin-top: 3px; padding: 0; }
	.product-buy-card__availability { align-items: center; color: #54705c; display: flex; font-size: 13px; gap: 6px; line-height: 1.3; margin: 0 0 14px; }
	.product-buy-card__availability .glyphicon { color: #16853a; }
}
@keyframes k24Fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
