/* Catalogue list V12. Scoped to .catalog-v12 so legacy pages remain untouched. */
.catalog-v12{padding:18px 0 44px;background:#f7f6f2;color:var(--color-text,#1b2431)}
.catalog-v12>.container{max-width:1280px}
.catalog-filter-open{overflow:hidden}
.catalog-v12 *{box-sizing:border-box}
.catalog-v12__heading{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(430px,1.55fr);align-items:center;gap:28px;margin-bottom:16px}
.catalog-v12__heading h1{margin:0 0 7px;font-family:var(--font-heading);font-size:28px;line-height:1.15;color:var(--color-primary-dark,#163255)}
.catalog-v12__heading>div>p{margin:0;color:var(--color-text-muted);font-size:12px}
.catalog-promo{position:relative;display:grid;min-height:106px;grid-template-columns:minmax(180px,.72fr) 1fr;align-items:center;overflow:hidden;border:1px solid var(--color-border);border-radius:14px;background:#eee9e2;color:var(--color-text);box-shadow:0 7px 22px rgba(24,38,60,.05)}
.catalog-promo:hover{border-color:#d7dde7;color:var(--color-text)}
.catalog-promo:after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,241,235,.98) 0%,rgba(245,241,235,.88) 35%,rgba(245,241,235,.08) 72%);content:""}
.catalog-promo__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;padding:16px 0 16px 22px}
.catalog-promo__copy strong{font:800 13px/1.35 var(--font-heading)}
.catalog-promo__copy small{display:-webkit-box;max-width:250px;margin-top:3px;overflow:hidden;color:var(--color-text-muted);font-size:9.5px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-promo__copy em{margin-top:9px;padding:6px 12px;border:1px solid #cfd6df;border-radius:7px;background:rgba(255,255,255,.52);font-size:9.5px;font-style:normal;font-weight:700}
.catalog-promo img{position:absolute;right:0;top:0;width:62%;height:100%;object-fit:cover}
.catalog-v12__layout{display:grid;grid-template-columns:258px minmax(0,1fr);align-items:start;gap:16px}
.catalog-v12__mobile-actions{display:none}
.catalog-filter{position:sticky;top:12px;z-index:10;overflow:visible;border:1px solid var(--color-border);border-radius:13px;background:#fff}
.catalog-filter form{position:relative;padding:18px}
.catalog-filter__title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:13px}
.catalog-filter__title strong{font-family:var(--font-heading);font-size:14px}
.catalog-filter__title a{color:var(--color-primary);font-size:9.5px}
.catalog-filter__mobile-head{display:none}
.catalog-filter__sale{display:flex;align-items:center;gap:8px;margin:0 0 9px;padding:10px;border-radius:8px;background:#fff6f1;color:#a85033;cursor:pointer;font-size:10px;font-weight:700}.catalog-filter__sale input{width:14px;height:14px;accent-color:var(--color-primary)}
.catalog-filter__group{border-top:1px solid var(--color-border)}
.catalog-filter__group summary{position:relative;padding:13px 20px 11px 0;cursor:pointer;list-style:none;font-size:11px;font-weight:800}
.catalog-filter__group summary::-webkit-details-marker{display:none}
.catalog-filter__group summary:after{position:absolute;right:2px;top:15px;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .15s ease;content:""}
.catalog-filter__group:not([open]) summary:after{top:17px;transform:rotate(-135deg)}
.catalog-filter__range{display:grid;grid-template-columns:1fr 12px 1fr;align-items:center;gap:6px;padding:1px 0 13px}
.catalog-filter__range input{width:100%;height:34px;padding:0 8px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font-size:10px}
.catalog-filter__range span{text-align:center;color:var(--color-text-faint)}
.catalog-filter__range-control{padding-bottom:13px}
.catalog-filter__range-control .catalog-filter__range{padding-bottom:0}
.catalog-filter__slider{position:relative;height:22px;margin:8px 7px 0}
.catalog-filter__slider:before,.catalog-filter__slider-fill{position:absolute;left:0;right:0;top:9px;height:4px;border-radius:999px;content:""}
.catalog-filter__slider:before{background:#dfe6ef}
.catalog-filter__slider-fill{right:auto;background:var(--color-primary);pointer-events:none}
.catalog-filter__slider input[type=range]{position:absolute;left:0;top:0;width:100%;height:22px;margin:0;padding:0;border:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none}
.catalog-filter__slider input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent}
.catalog-filter__slider input[type=range]::-webkit-slider-thumb{width:16px;height:16px;margin-top:-6px;border:3px solid #fff;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 2px 5px rgba(21,92,176,.24);cursor:pointer;pointer-events:auto;-webkit-appearance:none}
.catalog-filter__slider input[type=range]::-moz-range-track{height:4px;background:transparent}
.catalog-filter__slider input[type=range]::-moz-range-thumb{width:11px;height:11px;border:3px solid #fff;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 2px 5px rgba(21,92,176,.24);cursor:pointer;pointer-events:auto}
.catalog-filter__checks{display:grid;gap:7px;padding:2px 0 13px}
.catalog-filter__checks label{position:relative;display:grid;grid-template-columns:15px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:18px;cursor:pointer;color:var(--color-text-muted);font-size:10px;line-height:1.25}
.catalog-filter__checks input{position:absolute;opacity:0}
.catalog-filter__checks label:before{display:block;width:14px;height:14px;grid-column:1;grid-row:1;align-self:center;justify-self:start;border:1px solid #cbd3df;border-radius:3px;background:#fff;content:""}
.catalog-filter__checks label:after{display:block;position:relative;grid-column:1;grid-row:1;align-self:center;justify-self:center;width:7px;height:4px;margin-top:-1px;border-left:2px solid #fff;border-bottom:2px solid #fff;opacity:0;transform:rotate(-45deg);content:""}
.catalog-filter__checks label:has(input:checked):before{border-color:var(--color-primary);background:var(--color-primary)}
.catalog-filter__checks label:has(input:checked):after{opacity:1}
.catalog-filter__checks input:focus+span{color:var(--color-primary)}
.catalog-filter__checks small{color:var(--color-text-faint);font-size:9px}
.catalog-filter__checks em{color:#b66d34;font-size:8.5px;font-style:normal;font-weight:800}
.catalog-filter__checks--producers{gap:2px}
.catalog-filter__producer{border-radius:7px;transition:background .15s ease}
.catalog-filter__producer.is-open{margin:1px -5px 3px;padding:4px 5px 6px;background:#f7f9fc}
.catalog-filter__producer-row{display:flex;align-items:center;gap:3px}
.catalog-filter__producer-row>label{min-width:0;flex:1}
.catalog-filter__producer-row>button{display:flex;width:24px;height:24px;flex:0 0 24px;align-items:center;justify-content:center;padding:0;border:0;border-radius:5px;background:transparent;color:#8595a8;cursor:pointer}
.catalog-filter__producer-row>button:hover{background:#e7eef8;color:var(--color-primary)}
.catalog-filter__producer-row>button .icon{width:12px;height:12px;transition:transform .18s ease}
.catalog-filter__producer.is-open .catalog-filter__producer-row>button .icon{transform:rotate(180deg)}
.catalog-filter__lines{display:none;gap:6px;margin:5px 0 1px 18px;padding:7px 0 1px 9px;border-left:1px solid #dce4ef}
.catalog-filter__producer.is-open .catalog-filter__lines{display:grid}
.catalog-filter__lines label{font-size:9.5px}
.catalog-filter__lines label:after{top:4px}
.catalog-filter__extra{display:none!important}
.catalog-filter__group.is-expanded .catalog-filter__extra{display:grid!important}
.catalog-filter__more{margin:-2px 0 13px;padding:0;border:0;border-bottom:1px dashed currentColor;background:none;color:var(--color-primary);font-size:9.5px}
.catalog-filter__submit{width:100%;min-height:40px;margin-top:15px;font-size:11px}
.catalog-filter__result{position:absolute;right:-204px;z-index:12;width:188px;padding:12px;border-radius:10px;background:#24364d;color:#fff;box-shadow:0 10px 28px rgba(20,37,58,.22);font-size:10px;line-height:1.35}
.catalog-filter__result[hidden]{display:none}
.catalog-filter__result:before{position:absolute;left:-7px;top:16px;border-top:7px solid transparent;border-right:7px solid #24364d;border-bottom:7px solid transparent;content:""}
.catalog-filter__result span{display:block;margin-bottom:8px;font-weight:700}
.catalog-filter__result button{width:100%;height:32px;border:0;border-radius:6px;background:var(--color-primary);color:#fff;cursor:pointer;font-size:10px;font-weight:800}
.catalog-filter__result button:hover{background:var(--color-primary-dark)}
.catalog-filter__result.is-loading button{opacity:.55;pointer-events:none}
.catalog-filter__result.is-zero button{background:#748195;cursor:default}
.catalog-filter__backdrop{display:none}
.catalog-results{min-width:0}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.catalog-toolbar .select-native{width:200px;height:38px;padding:0 34px 0 12px;border-radius:9px;background-color:#fff;font-size:10.5px}
.catalog-view{display:flex;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:#fff}
.catalog-view button{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border:0;border-right:1px solid var(--color-border);background:#fff;color:var(--color-text-faint)}
.catalog-view button:last-child{border-right:0}.catalog-view button.is-active{background:var(--color-primary-light);color:var(--color-primary)}
.catalog-view .icon{width:15px;height:15px}
.catalog-chips{display:flex;align-items:center;gap:7px;margin-bottom:12px;overflow-x:auto;padding-bottom:2px}
.catalog-chips span{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#eef3f9;color:#60728a;font-size:9.5px}
.catalog-chips a{flex:0 0 auto;margin-left:3px;color:var(--color-primary);font-size:9.5px;font-weight:700}
.catalog-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.catalog-product{position:relative;display:flex;min-width:0;min-height:358px;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.catalog-product:hover{border-color:#ced7e5;box-shadow:0 9px 24px rgba(24,38,60,.08);transform:translateY(-2px)}
.catalog-product__media{position:relative;display:flex;height:168px;align-items:center;justify-content:center;overflow:hidden;background:#fafafa}
.catalog-product__media img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .25s ease}
.catalog-product:hover .catalog-product__media img{transform:scale(1.025)}
.catalog-product__media>span{color:var(--color-text-faint);font-size:10px}
.catalog-product__badge{position:absolute;left:10px;top:10px;padding:5px 8px;border-radius:6px;background:#ff5c43;color:#fff;font-size:9px}
.catalog-product__photo-firmness{position:absolute;left:14px;top:14px;z-index:2;display:flex;min-width:54px;flex-direction:column;align-items:flex-start;gap:3px;padding:4px 5px;border-radius:5px;background:rgba(255,255,255,.78);box-shadow:0 1px 5px rgba(24,49,78,.06);backdrop-filter:blur(2px)}
.catalog-product__photo-firmness--with-discount{top:48px}
.catalog-product__photo-firmness small{color:#66758b;font-size:6.5px;font-weight:700;line-height:1;letter-spacing:.035em}
.catalog-product__photo-firmness-scale{display:flex;gap:2px}
.catalog-product__photo-firmness-scale i{display:block;width:8px;height:4px;border-radius:1px;background:#d8e1ed}
.catalog-product__photo-firmness-scale i.is-active{background:var(--color-primary)}
.catalog-product__photo-meta{position:absolute;left:14px;bottom:10px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:132px}.catalog-product__photo-meta--with-discount{top:auto;bottom:10px}.catalog-product__photo-meta>span{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 8px;border-radius:6px;background:rgba(255,255,255,.92);box-shadow:0 1px 6px rgba(24,49,78,.08);backdrop-filter:blur(2px);color:#66758b}.catalog-product__photo-meta .icon{width:12px;height:12px;color:#66758b;fill:none;stroke:currentColor;overflow:visible}.catalog-product__photo-meta b{font-size:8.6px;font-weight:700;line-height:1;white-space:nowrap}
.catalog-product__photo-labels{position:absolute;left:14px;bottom:14px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:calc(100% - 28px)}.catalog-product__photo-label{display:inline-flex;align-items:center;min-height:24px;padding:4px 10px;border-radius:999px;box-shadow:0 1px 6px rgba(24,49,78,.09);font-size:11px;font-weight:700;line-height:1.15;letter-spacing:.01em}.catalog-product__photo-label--accent{background:#f0c691;color:#5d4530}.catalog-product__photo-label--sale{background:#ffd2c8;color:#9a4b3e}.catalog-product__photo-label--premium{background:#3e4d67;color:#fff}.catalog-product__photo-label--price{background:#f6d8b6;color:#6b4b27}.catalog-product__photo-label--eco{background:#d7efd9;color:#2f6a3d}.catalog-product__photo-label--eco:before{display:inline-block;width:9px;height:13px;margin-right:6px;border-radius:9px 1px 9px 1px;background:#58a866;content:"";transform:rotate(-28deg);box-shadow:inset -2px -1px 0 rgba(26,92,45,.16)}.catalog-product__photo-label--soft-blue{background:#dce7f8;color:#35507b}.catalog-product__photo-label--dark{background:#616f82;color:#fff}.catalog-product__photo-label--beige{background:#e7dcc8;color:#685744}
.catalog-product__quick-actions{position:absolute;right:9px;top:9px;z-index:2;display:flex;gap:5px}
.catalog-product__quick-action{display:flex;width:29px;height:29px;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#96a2b2;box-shadow:0 2px 8px rgba(22,38,61,.08);cursor:pointer;transition:color .18s ease,transform .18s ease}
.catalog-product__quick-action .icon{width:16px;height:16px;overflow:visible;fill:none;stroke:currentColor}
.catalog-product__quick-action:hover,.catalog-product__quick-action.is-active{color:var(--color-primary);transform:translateY(-1px)}
.catalog-product__quick-action--favorite:hover,.catalog-product__quick-action--favorite.is-active{color:#e14a5b}.catalog-product__quick-action--favorite.is-active .icon{fill:currentColor}
.catalog-product__quick-action.is-loading{opacity:.55;cursor:wait}.catalog-product__quick-action.is-error{color:#d73535}
.catalog-product__body{display:flex;min-height:188px;flex:1;flex-direction:column;padding:12px}
.catalog-product__body h2{display:-webkit-box;min-height:34px;margin:0 0 5px;overflow:hidden;font:800 11.5px/1.45 var(--font-heading);-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-product__body h2 a{color:var(--color-text)}
.catalog-product__specs{display:-webkit-box;min-height:27px;margin:0 0 6px;overflow:hidden;color:var(--color-text-muted);font-size:8.5px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-product__specs span+span:before{margin:0 4px;color:#c6ced8;content:"·"}
.catalog-product__rating{display:flex;align-items:center;gap:4px;margin:0 0 8px;color:var(--color-star);font-size:9px;font-weight:700}
.catalog-product__rating .icon{width:11px;height:11px;fill:currentColor;stroke:currentColor}
.catalog-product__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto}
.catalog-product__price{display:flex;min-width:0;flex-direction:column}.catalog-product__price del{height:14px;color:var(--color-text-faint);font-size:8.5px}.catalog-product__price strong{white-space:nowrap;font:800 14px/1.2 var(--font-heading);color:var(--color-primary-dark)}
.catalog-product__foot .btn{min-width:0;min-height:34px;padding:0 10px;gap:5px;flex:0 1 auto;border-radius:7px;font-size:8.5px}
.catalog-product__foot .btn .icon{width:12px;height:12px}
.catalog-products--list{grid-template-columns:1fr}
.catalog-products--list .catalog-product{display:grid;min-height:190px;grid-template-columns:250px minmax(0,1fr)}
.catalog-products--list .catalog-product__media{height:100%;min-height:190px}.catalog-products--list .catalog-product__body{min-height:190px;padding:20px}.catalog-products--list .catalog-product__body h2{min-height:0;font-size:15px}.catalog-products--list .catalog-product__specs{min-height:0}.catalog-products--list .catalog-product__construction{min-height:32px;font-size:11px;-webkit-line-clamp:2}.catalog-products--list .catalog-product__meta b{font-size:10px}.catalog-products--list .catalog-product__foot{justify-content:flex-start}.catalog-products--list .catalog-product__foot .btn{min-width:150px}
.catalog-products--list .catalog-product__photo-meta{left:auto;right:14px;align-items:flex-end}.catalog-products--list .catalog-product__photo-labels{left:14px;bottom:14px;max-width:calc(100% - 70px)}
.catalog-empty{padding:70px 25px;border:1px solid var(--color-border);border-radius:12px;background:#fff;text-align:center}.catalog-empty h2{margin-bottom:7px;font-size:20px}.catalog-empty p{margin-bottom:18px;color:var(--color-text-muted)}
.catalog-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:22px 0 16px}
.catalog-pagination{display:flex;grid-column:2;align-items:center;justify-content:center;gap:6px;margin:0}
.catalog-pagination__page,.catalog-pagination__arrow{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:9px;background:#fff;color:var(--color-text-muted);font-size:11px;font-weight:700;text-decoration:none;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}
.catalog-pagination__arrow{font-size:20px;font-weight:500}
.catalog-pagination__page:hover,.catalog-pagination__arrow:hover{border-color:#b8d2ef;color:var(--color-primary);box-shadow:0 3px 10px rgba(21,91,165,.08)}
.catalog-pagination__page.is-active{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 4px 12px rgba(0,105,210,.18)}
.catalog-pagination__dots{display:inline-flex;width:22px;height:36px;align-items:center;justify-content:center;color:var(--color-text-faint);font-size:14px}
.catalog-count-note{grid-column:1;grid-row:1;margin:0;color:var(--color-text-faint);font-size:9.5px;text-align:left}
.catalog-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.catalog-section-head h2{margin:0;font-size:15px}.catalog-section-head a{color:var(--color-primary);font-size:9.5px;font-weight:700}
.catalog-brands{margin:0 0 16px;padding:17px 20px;border:1px solid var(--color-border);border-radius:12px;background:#fff}
.catalog-brands__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:10px}
.catalog-brands__list>a{display:flex;height:74px;align-items:center;justify-content:center;overflow:hidden;color:var(--color-text-muted);font:800 11px var(--font-heading)}
.catalog-brands__list>a>span{position:relative;display:block;width:110px;height:70px;overflow:hidden}
.catalog-brands__list img{position:absolute;left:50%;top:-70px;width:auto;height:140px;max-width:none;max-height:none;transform:translateX(-50%);transition:top .18s ease}
.catalog-brands__list a:hover img{top:0}
.catalog-consult{display:grid;min-height:144px;grid-template-columns:220px minmax(220px,1fr) minmax(330px,1.2fr);align-items:stretch;overflow:hidden;border:1px solid var(--color-border);border-radius:13px;background:#fff}
.catalog-consult__media{overflow:hidden;background:#efece7}.catalog-consult__media img{width:100%;height:100%;object-fit:cover}
.catalog-consult__copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:24px 22px}.catalog-consult__copy h2{margin:0 0 8px;color:var(--color-primary-dark);font:800 18px/1.3 var(--font-heading)}.catalog-consult__copy p{margin:0 0 16px;color:var(--color-text-muted);font-size:12.5px;line-height:1.55}.catalog-consult__copy .btn{min-height:40px;padding:0 18px;font-size:11px}
.catalog-consult__benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}.catalog-consult__benefits span{display:flex;height:72px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-left:1px solid var(--color-border);color:var(--color-text-muted);font-size:10.5px;line-height:1.4;text-align:center}.catalog-consult__benefits .icon{width:30px;height:30px;padding:5px;border-radius:50%;background:#f4efe7;color:#aa8955}
.catalog-description{margin-top:18px;padding:24px;border:1px solid var(--color-border);border-radius:13px;background:#fff;color:var(--color-text-muted);font-size:12px;line-height:1.65}.catalog-description>*:first-child{margin-top:0}.catalog-description>*:last-child{margin-bottom:0}.catalog-description img{max-width:100%;height:auto}
@media(max-width:1180px){.catalog-products{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-v12__layout{grid-template-columns:238px minmax(0,1fr)}.catalog-consult{grid-template-columns:180px 1fr}.catalog-consult__benefits{grid-column:1/-1;border-top:1px solid var(--color-border)}.catalog-consult__benefits span:first-child{border-left:0}}
@media(max-width:900px){.catalog-v12__heading{grid-template-columns:1fr}.catalog-v12__heading h1{font-size:25px}.catalog-v12__mobile-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.catalog-v12__mobile-actions .btn{min-height:38px;padding:0 14px;gap:7px}.catalog-v12__mobile-actions .icon{width:15px;height:15px}.catalog-v12__mobile-actions span{color:var(--color-text-muted);font-size:10px}.catalog-v12__layout{grid-template-columns:1fr}.catalog-filter{position:fixed;left:0;top:0;bottom:0;z-index:100002;width:min(340px,90vw);overflow-y:auto;border:0;border-radius:0;box-shadow:12px 0 40px rgba(22,38,61,.18);transform:translateX(-105%);transition:transform .2s ease}.catalog-filter.is-open{transform:translateX(0)}.catalog-filter__mobile-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--color-border);background:#fff}.catalog-filter__mobile-head button{width:32px;height:32px;border:0;border-radius:50%;background:var(--color-bg-muted);font-size:22px}.catalog-filter__title{display:none}.catalog-filter__result{position:sticky;right:auto;top:auto!important;bottom:10px;width:100%;margin-top:10px}.catalog-filter__result:before{display:none}.catalog-filter__backdrop{position:fixed;inset:0;z-index:100001;border:0;background:rgba(18,30,48,.35);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.catalog-filter.is-open+.catalog-filter__backdrop{display:block;opacity:1;visibility:visible}.catalog-products{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-product__foot{align-items:stretch;flex-direction:column}.catalog-product__foot .btn{width:100%}.catalog-product__price{min-height:34px}.catalog-products--list .catalog-product__foot{flex-direction:row}.catalog-brands__list{grid-template-columns:repeat(5,120px);overflow-x:auto}.catalog-consult{grid-template-columns:170px 1fr}}
@media(max-width:680px){.catalog-v12{padding-top:12px}.catalog-v12>.container{padding:0 12px}.catalog-promo{grid-template-columns:1fr;min-height:130px}.catalog-promo__copy{max-width:62%;padding-left:16px}.catalog-promo img{width:68%}.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.catalog-product{min-height:338px}.catalog-product__media{height:145px}.catalog-product__body{min-height:193px;padding:10px}.catalog-product__foot .btn span{display:none}.catalog-product__foot .btn{width:34px;align-self:flex-end}.catalog-product__foot{flex-direction:row;align-items:flex-end}.catalog-products--list .catalog-product{grid-template-columns:125px minmax(0,1fr);min-height:170px}.catalog-products--list .catalog-product__media{min-height:170px}.catalog-products--list .catalog-product__body{min-height:170px;padding:12px}.catalog-products--list .catalog-product__foot .btn{width:auto;min-width:34px}.catalog-consult{grid-template-columns:1fr}.catalog-consult__media{display:none}.catalog-consult__copy{padding:22px 18px}.catalog-consult__copy h2{font-size:17px}.catalog-consult__copy p{font-size:11.5px}.catalog-consult__copy .btn{font-size:10.5px}.catalog-consult__benefits{grid-template-columns:1fr}.catalog-consult__benefits span{height:auto;min-height:54px;flex-direction:row;justify-content:flex-start;gap:10px;padding:14px 18px;border-top:1px solid var(--color-border);border-left:0;font-size:10px;text-align:left}.catalog-description{padding:18px}}
@media(max-width:420px){.catalog-products{grid-template-columns:1fr}.catalog-product{min-height:0}.catalog-product__media{height:210px}.catalog-product__foot .btn{width:auto}.catalog-product__foot .btn span{display:inline}.catalog-toolbar .select-native{width:175px}.catalog-view{display:none}}

/* V14 — catalogue requirements from the revised brief. */
.catalog-v12__heading{display:block;margin-bottom:14px}
.catalog-intro{display:grid;grid-template-columns:190px minmax(0,1fr);gap:22px;align-items:center;margin-bottom:13px;padding:17px;border:1px solid var(--color-border);border-radius:13px;background:#fff}
.catalog-intro--text-only{grid-template-columns:minmax(0,1fr)}
.catalog-intro__media{height:118px;overflow:hidden;border-radius:10px;background:var(--color-bg-muted)}
.catalog-intro__media img{width:100%;height:100%;object-fit:contain}
.catalog-intro__body{min-width:0}.catalog-intro__body p{margin:0 0 8px}.catalog-intro__body>*:last-child{margin-bottom:0}
.catalog-intro [data-collapsible-content]{position:relative;overflow:hidden;color:var(--color-text-muted);font-size:11px;line-height:1.6;transition:max-height .24s ease}
.catalog-intro.is-collapsed [data-collapsible-content]{max-height:102px}
.catalog-intro.is-collapsed [data-collapsible-content]:after,.catalog-description.is-collapsed [data-collapsible-content]:after{position:absolute;right:0;bottom:0;left:0;height:42px;background:linear-gradient(transparent,#fff);content:""}
.catalog-intro [data-collapsible-toggle],.catalog-description__toggle{margin-top:8px;padding:0;border:0;border-bottom:1px dashed currentColor;background:none;color:var(--color-primary);cursor:pointer;font-size:10px;font-weight:700}
.catalog-quick-links{display:flex;gap:7px;margin:0 0 14px;overflow-x:auto;padding:2px 0 5px;scrollbar-width:thin}
.catalog-quick-links a{flex:0 0 auto;padding:7px 11px;border:1px solid #dbe3ed;border-radius:999px;background:#fff;color:var(--color-primary-dark);font-size:9.5px;font-weight:650;transition:border-color .15s ease,background .15s ease,color .15s ease}
.catalog-quick-links a:hover{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}
.catalog-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.catalog-product{min-height:500px}
.catalog-product__media{height:208px}
.catalog-product__body{min-height:290px;padding:14px}
.catalog-product__body h2{min-height:38px;font-size:12.5px}
.catalog-product__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:3px 0 9px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:#fbfcfe}
.catalog-product__construction{display:-webkit-box;min-height:28px;margin:2px 0 8px;overflow:hidden;color:var(--color-text-muted);font-size:9.3px;line-height:1.38;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-product__meta{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 10px}
.catalog-product__meta>span{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 8px;border-radius:6px;background:#f2f5f9;color:var(--color-text-muted)}
.catalog-product__meta .icon{width:12px;height:12px;color:var(--color-text-muted);fill:none;stroke:currentColor;overflow:visible}
.catalog-product__meta b{font-size:8.8px;font-weight:700;line-height:1.2;white-space:nowrap}
.catalog-product__facts--without-firmness{grid-template-columns:repeat(3,minmax(0,1fr))}
.catalog-product__facts>span{display:flex;min-width:0;min-height:62px;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;border-right:1px solid var(--color-border);text-align:center}
.catalog-product__facts>span:last-child{border-right:0}
.catalog-product__facts .icon{width:17px;height:17px;margin-bottom:3px;color:var(--color-primary);fill:none;stroke:currentColor}
.catalog-product__facts small{color:var(--color-text-faint);font-size:7px;line-height:1.2}
.catalog-product__facts b{display:-webkit-box;max-width:100%;margin-top:2px;overflow:hidden;color:var(--color-text-muted);font-size:7.7px;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-product__description{display:none;margin:1px 0 10px;color:var(--color-text-muted);font-size:9.5px;line-height:1.55}
.catalog-product__rating{justify-content:flex-start;gap:6px;margin-bottom:8px}.catalog-product__rating b{color:var(--color-text-muted);font-size:9px;line-height:1}
.catalog-product__stars{overflow:hidden;color:var(--color-star);font-size:11px;letter-spacing:1px;white-space:nowrap}
.catalog-product__size{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin:0 0 10px;color:var(--color-text-muted);font-size:9px;font-weight:700}
.catalog-product__size select{width:100%;height:32px;padding:0 28px 0 9px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text);font-size:10px}
.catalog-product__foot .btn{min-width:104px}.catalog-product__foot .btn.is-loading{opacity:.62;pointer-events:none}.catalog-product__foot .btn.is-added{background:#188b57}
.catalog-products--list .catalog-product{grid-template-columns:260px minmax(0,1fr);min-height:272px}
.catalog-products--list .catalog-product__media{min-height:272px}.catalog-products--list .catalog-product__body{min-height:272px}
.catalog-products--list .catalog-product__facts{max-width:590px}.catalog-products--list .catalog-product__description{display:block;max-width:690px}
.catalog-products--list .catalog-product__size{max-width:280px}.catalog-products--list .catalog-product__foot{max-width:420px}
.catalog-load-more{display:flex;justify-content:center;margin:-1px 0 22px}.catalog-load-more .btn{width:min(420px,100%);min-height:42px}.catalog-load-more .btn.is-loading{opacity:.65}
.catalog-pagination{margin-bottom:0}.catalog-count-note{text-align:left}
.catalog-carousel{position:relative;padding:0 35px}.catalog-carousel__arrow{position:absolute;top:50%;z-index:2;width:30px;height:30px;margin-top:-15px;border:1px solid var(--color-border);border-radius:50%;background:#fff;color:var(--color-primary-dark);box-shadow:0 4px 12px rgba(20,37,58,.08);cursor:pointer;font-size:20px}.catalog-carousel__arrow--prev{left:0}.catalog-carousel__arrow--next{right:0}
.catalog-brands__list{display:flex;gap:12px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}.catalog-brands__list::-webkit-scrollbar{display:none}.catalog-brands__list>a{min-width:150px;flex:0 0 150px}
.catalog-description{position:relative}.catalog-description [data-collapsible-content]{position:relative;overflow:hidden;transition:max-height .24s ease}.catalog-description.is-collapsed [data-collapsible-content]{max-height:220px}
.catalog-description ol{margin:16px 0 20px;padding-left:28px;list-style-type:decimal}.catalog-description ol>li{margin:8px 0;padding-left:5px;line-height:1.65}.catalog-description ol>li::marker{color:var(--color-primary);font-weight:800}.catalog-description ol ol{margin:8px 0 12px;list-style-type:lower-alpha}
.catalog-popular{margin-top:18px;padding:18px 20px;border:1px solid var(--color-border);border-radius:13px;background:#fff}
.catalog-popular__carousel{padding:0 35px}
.catalog-popular__track{display:flex;gap:12px;overflow-x:auto;padding:1px 1px 7px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}
.catalog-popular__track::-webkit-scrollbar{display:none}
.catalog-popular__item{min-width:0;flex:0 0 calc((100% - 48px)/5);scroll-snap-align:start;padding:10px;border:1px solid #ececf0;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(20,30,50,.035)}
.catalog-popular__item .product-card__quick-actions{top:17px;right:17px}
.catalog-popular__item .product-card__media{display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1.2/1;margin-bottom:8px;border-radius:8px;background:#f8f8f6}
.catalog-popular__item .product-card__media img{width:100%;height:100%;object-fit:contain}
.catalog-popular__item .product-card__title{min-height:36px;margin-bottom:0;font-size:12.5px;line-height:1.4}
.catalog-popular__item .product-card__firmness{display:flex;min-height:32px;align-items:flex-start;justify-content:space-between;gap:8px;margin:7px 0 6px;padding:7px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-size:10.5px;line-height:1.35}
.catalog-popular__item .product-card__firmness span{color:var(--color-text-faint);font-size:10px}
.catalog-popular__item .product-card__firmness b{color:var(--color-text);font-weight:700;text-align:right}
.catalog-popular__item .product-card__foot{display:flex;width:100%;min-height:38px;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto}
.catalog-popular__item .product-card__stars{min-width:0;margin:0 0 2px;flex:1;font-size:10px;white-space:nowrap}
.catalog-popular__item .product-card__price{min-height:0;flex:0 0 auto;align-items:flex-end;margin-bottom:0;text-align:right}
.catalog-popular__item .product-card__price-new{font-size:14px}
@media(max-width:1180px){.catalog-popular__item{flex-basis:calc((100% - 24px)/3)}}
@media(max-width:680px){.catalog-popular{padding:15px 12px}.catalog-popular__carousel{padding:0}.catalog-popular__carousel>.catalog-carousel__arrow{display:none}.catalog-popular__item{flex-basis:68%}}
@media(max-width:1180px){.catalog-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-intro{grid-template-columns:150px 1fr}}
@media(max-width:680px){.catalog-intro{grid-template-columns:1fr}.catalog-intro__media{height:150px}.catalog-product{min-height:455px}.catalog-product__media{height:155px}.catalog-product__body{min-height:300px}.catalog-product__facts>span{min-height:57px}.catalog-product__facts small{display:none}.catalog-product__facts b{font-size:7px}.catalog-product__construction{min-height:25px;margin-bottom:7px;font-size:8.7px}.catalog-product__photo-meta{top:auto;bottom:8px;max-width:126px;gap:4px}.catalog-product__photo-meta--with-discount{top:auto;bottom:8px}.catalog-product__photo-meta>span{min-height:20px;padding:0 7px}.catalog-product__photo-meta .icon{width:11px;height:11px}.catalog-product__photo-meta b{font-size:8px}.catalog-product__photo-labels{left:8px;bottom:8px;gap:4px;max-width:calc(100% - 16px)}.catalog-product__photo-label{min-height:21px;padding:3px 8px;font-size:9px}.catalog-product__meta{gap:5px;margin-bottom:9px}.catalog-product__meta>span{min-height:20px;padding:0 6px}.catalog-product__meta b{font-size:8px}.catalog-product__foot{align-items:flex-end}.catalog-product__foot .btn{width:auto;min-width:92px}.catalog-product__foot .btn span{display:inline}.catalog-products--list .catalog-product{grid-template-columns:130px minmax(0,1fr)}.catalog-products--list .catalog-product__photo-meta{left:auto;right:8px;align-items:flex-end}.catalog-products--list .catalog-product__photo-labels{left:8px;bottom:8px;max-width:calc(100% - 48px)}.catalog-products--list .catalog-product__facts{grid-template-columns:repeat(2,1fr)}.catalog-products--list .catalog-product__description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.catalog-carousel{padding:0 29px}.catalog-brands__list>a{min-width:130px;flex-basis:130px}.catalog-description{padding:18px}}
@media(max-width:430px){.catalog-products{grid-template-columns:1fr}.catalog-product__facts{grid-template-columns:repeat(2,1fr)}.catalog-product__facts>span:nth-child(2){border-right:0}.catalog-product__facts>span:nth-child(-n+2){border-bottom:1px solid var(--color-border)}}
@media(max-width:680px){.catalog-navigation{display:flex;flex-direction:column;gap:10px;margin:18px 0 14px}.catalog-pagination{max-width:100%;gap:4px;overflow-x:auto;padding:2px}.catalog-pagination__page,.catalog-pagination__arrow{width:34px;height:34px;flex:0 0 34px}.catalog-count-note{order:2;text-align:center}}

/* Product-list editorial content follows the compact inline reference. */
.catalog-intro{display:block;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.catalog-intro:not(.catalog-intro--text-only){display:grid;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:14px}
.catalog-intro__media{height:78px}
.catalog-intro__body{display:block;line-height:1.6}
.catalog-intro [data-collapsible-content]{max-height:none;overflow:visible;color:var(--color-text);font-size:14px;line-height:1.6;transition:none}
.catalog-intro [data-collapsible-content][hidden],.catalog-intro [data-collapsible-preview][hidden],.catalog-intro [data-collapsible-toggle][hidden]{display:none}
.catalog-intro__preview{color:var(--color-text);font-size:14px;line-height:1.6}
.catalog-intro.is-collapsed [data-collapsible-content]{max-height:none}
.catalog-intro.is-collapsed [data-collapsible-content]:after{content:none}
.catalog-intro [data-collapsible-toggle]{display:inline;margin:0 0 0 6px;border:0;background:none;color:var(--color-primary);font-size:14px;font-weight:600;line-height:1.6;vertical-align:baseline}
.catalog-description{font-size:14px;line-height:1.7}
.catalog-description [data-collapsible-content]{color:var(--color-text-muted)}
.catalog-description__toggle{font-size:13px}
@media(max-width:680px){.catalog-intro:not(.catalog-intro--text-only){grid-template-columns:88px minmax(0,1fr);gap:10px}.catalog-intro__media{height:70px}.catalog-intro__preview,.catalog-intro [data-collapsible-content],.catalog-intro [data-collapsible-toggle]{font-size:13px}.catalog-description{font-size:13px}}

/* The horizontal view must override every grid breakpoint, including V14. */
.catalog-products.catalog-products--list{grid-template-columns:minmax(0,1fr)}
.catalog-products--list .catalog-product__description{display:-webkit-box;max-width:700px;overflow:hidden;color:var(--color-text-muted);font-size:12.5px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}
@media(min-width:901px){
  .catalog-product__body h2{font-size:14px;line-height:1.4}
  .catalog-product__price strong{font-size:17px}
  .catalog-product__price del{height:17px;font-size:11px}
  .catalog-product__size{font-size:12px}
  .catalog-product__size select{height:36px;font-size:12px}
  .catalog-product__foot .btn{min-height:38px;padding:0 10px;font-size:11px}
  .catalog-product__foot .btn .icon{width:14px;height:14px}
  .catalog-filter__title strong{font-size:16px}
  .catalog-filter__title a,.catalog-filter__more{font-size:12px}
  .catalog-filter__group summary{font-size:13px}
  .catalog-filter__sale,.catalog-filter__checks label,.catalog-filter__lines label{font-size:12px}
  .catalog-filter__checks small{font-size:10.5px}
  .catalog-filter__checks em{font-size:10px}
  .catalog-filter__range input,.catalog-filter__submit,.catalog-filter__result,.catalog-filter__result button{font-size:12px}
  .catalog-products--list .catalog-product__body h2{font-size:16px}
  .catalog-products--list .catalog-product__description{font-size:13px}
}
@media(min-width:1181px){
  .catalog-products:not(.catalog-products--list) .catalog-product__foot{flex-direction:column;align-items:stretch}
  .catalog-products:not(.catalog-products--list) .catalog-product__foot .btn{width:100%;justify-content:center}
}
@media(max-width:680px){.catalog-products--list .catalog-product__description{font-size:11px;line-height:1.4;-webkit-line-clamp:2}}

/* V18: filter typography is intentionally larger for readability on desktop and mobile. */
.catalog-filter__title strong{font-size:17px}
.catalog-filter__title a{font-size:12.5px}
.catalog-filter__sale{font-size:13px}
.catalog-filter__group summary{font-size:14px}
.catalog-filter__range input{font-size:13px}
.catalog-filter__checks label,.catalog-filter__lines label{font-size:13px}
.catalog-filter__checks small{font-size:11px}
.catalog-filter__checks em{font-size:10.5px}
.catalog-filter__more{font-size:12.5px}
.catalog-filter__submit,.catalog-filter__result,.catalog-filter__result button{font-size:12.5px}


/* Mattress text parameters in the 4-column grid view */
.catalog-product__table-meta{display:none}
.catalog-products:not(.catalog-products--list) .catalog-product__photo-firmness,
.catalog-products:not(.catalog-products--list) .catalog-product__photo-meta{display:none}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta{display:block;margin:6px 0 10px}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta-item{margin-bottom:7px}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta-item:last-child{margin-bottom:0}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta-label{display:block;margin-bottom:2px;color:#9b8c73;font-size:10px;line-height:1.25}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value{display:flex;flex-direction:column;gap:2px;color:var(--color-text);font-size:12px;font-weight:500;line-height:1.25}
.catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value>span{display:block}
.catalog-products:not(.catalog-products--list) .catalog-product__construction{min-height:32px;-webkit-line-clamp:2}
.catalog-products:not(.catalog-products--list) .catalog-product__description{display:none}
@media(max-width:900px){
  .catalog-products:not(.catalog-products--list) .catalog-product__table-meta{margin:5px 0 9px}
  .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-label{font-size:9.3px}
  .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value{font-size:11px}
}
@media(max-width:680px){
  .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-label{font-size:9px}
  .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value{font-size:10.5px;line-height:1.22}
}

/* V19: bottom SEO text uses the same editorial card and typography as the top catalogue intro. */
.catalog-description{
  margin-top:18px;
  padding:24px;
  border:1px solid var(--color-border);
  border-radius:13px;
  background:#fff;
  color:var(--color-text);
  font-size:14px;
  line-height:1.7;
}
.catalog-description [data-collapsible-content]{
  color:var(--color-text);
}
.catalog-description p,
.catalog-description li{
  color:var(--color-text);
}
.catalog-description h1,
.catalog-description h2,
.catalog-description h3,
.catalog-description h4,
.catalog-description h5,
.catalog-description h6{
  margin:22px 0 10px;
  color:var(--color-primary-dark);
  font-family:var(--font-heading);
  font-weight:800;
  line-height:1.3;
}
.catalog-description h1:first-child,
.catalog-description h2:first-child,
.catalog-description h3:first-child,
.catalog-description h4:first-child{
  margin-top:0;
}
.catalog-description h2{font-size:22px}
.catalog-description h3{font-size:17px}
.catalog-description h4{font-size:15px}
.catalog-description strong,
.catalog-description b{color:var(--color-text);font-weight:700}
.catalog-description ul{margin:12px 0 18px;padding-left:26px;list-style:disc}
.catalog-description ul li{margin:6px 0;padding-left:2px}
.catalog-description ul li::marker{color:var(--color-primary)}
.catalog-description a{color:var(--color-primary)}
.catalog-description__toggle{color:var(--color-primary);font-weight:700}
@media(max-width:680px){
  .catalog-description{padding:18px;font-size:13px;line-height:1.65}
  .catalog-description h2{font-size:19px}
  .catalog-description h3{font-size:16px}
  .catalog-description h4{font-size:14px}
}

/* V20: unify top and bottom catalogue text blocks as white bordered editorial cards. */
.catalog-intro,
.catalog-intro.catalog-intro--text-only,
.catalog-description{
  padding:24px;
  border:1px solid var(--color-border);
  border-radius:13px;
  background:#fff;
  box-shadow:none;
}
.catalog-intro{
  margin-bottom:14px;
}
.catalog-intro:not(.catalog-intro--text-only){
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.catalog-intro__media{
  height:118px;
  overflow:hidden;
  border-radius:10px;
  background:var(--color-bg-muted);
}
.catalog-intro__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.catalog-intro__body,
.catalog-intro [data-collapsible-content],
.catalog-intro__preview,
.catalog-description,
.catalog-description [data-collapsible-content],
.catalog-description p,
.catalog-description li{
  color:var(--color-text-muted);
}
.catalog-intro h1,
.catalog-intro h2,
.catalog-intro h3,
.catalog-intro h4,
.catalog-description h1,
.catalog-description h2,
.catalog-description h3,
.catalog-description h4{
  color:var(--color-primary-dark);
}
@media(max-width:680px){
  .catalog-intro,
  .catalog-intro.catalog-intro--text-only,
  .catalog-description{
    padding:16px;
    border-radius:12px;
  }
  .catalog-intro:not(.catalog-intro--text-only){
    grid-template-columns:1fr;
    gap:14px;
  }
  .catalog-intro__media{
    width:100%;
    height:180px;
  }
  .catalog-intro__body,
  .catalog-intro [data-collapsible-content],
  .catalog-intro__preview,
  .catalog-description{
    font-size:13px;
    line-height:1.65;
  }
}

/* V21: restore list-view fixes after later catalogue CSS overrides.
   Keep quick actions attached to the photo and align basket with size selector. */
@media (min-width:681px){
  .catalog-products--list .catalog-product__quick-actions{
    top:12px;
    left:185px;
    right:auto;
  }
  .catalog-products--list .catalog-product__foot{
    width:100%;
    max-width:280px;
    align-items:center;
  }
  .catalog-products--list .catalog-product__foot .btn{
    margin-left:auto;
  }
}
@media (max-width:680px){
  .catalog-products--list .catalog-product__quick-actions{
    top:8px;
    left:55px;
    right:auto;
  }
}

/* V23 cumulative guard: preserve all catalogue fixes added after V20. */

/* Mobile catalogue intro: keep expanded text inside the card without breaking size tokens. */
@media(max-width:680px){
  .catalog-intro,
  .catalog-intro__body,
  .catalog-intro__text,
  .catalog-intro__preview{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .catalog-intro__body,
  .catalog-intro__text{
    overflow-x:hidden;
  }
  .catalog-intro__text,
  .catalog-intro__text p,
  .catalog-intro__text div,
  .catalog-intro__text li{
    white-space:normal!important;
    overflow-wrap:break-word;
    word-break:normal;
  }
  .catalog-intro__text span,
  .catalog-intro__text a{
    word-break:normal;
    overflow-wrap:normal;
  }
  .catalog-intro__text img,
  .catalog-intro__text table,
  .catalog-intro__text iframe{
    max-width:100%!important;
  }
  .catalog-intro__text [class*="size"],
  .catalog-intro__text [class*="razmer"]{
    white-space:nowrap!important;
  }
}

/* List view: quick actions must sit in the image's top-right corner. */
@media(min-width:681px){
  .catalog-products--list .catalog-product__quick-actions{
    top:12px;
    left:185px;
    right:auto;
  }
  /* Basket right edge follows the size selector block. */
  .catalog-products--list .catalog-product__foot{
    width:100%;
    max-width:280px;
    align-items:center;
  }
  .catalog-products--list .catalog-product__foot .btn{
    margin-left:auto;
  }
}
@media(max-width:680px){
  .catalog-products--list .catalog-product__quick-actions{
    top:8px;
    left:55px;
    right:auto;
  }
}

/* List view: one continuous white card, including the full media area. */
.catalog-products--list .catalog-product,
.catalog-products--list .catalog-product__media,
.catalog-products--list .catalog-product__media > a,
.catalog-products--list .catalog-product__media > div,
.catalog-products--list .catalog-product__body{
  background:#fff!important;
}
.catalog-products--list .catalog-product__media > a{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
}

/* Grid view too: no grey gutters around product photos. */
.catalog-v12 .catalog-product,
.catalog-v12 .catalog-product__media,
.catalog-v12 .catalog-product__body,
.catalog-v12 .catalog-product__media > a,
.catalog-v12 .catalog-product__media > div{
  background:#fff!important;
}
.catalog-v12 .catalog-product__media{
  box-shadow:none;
}


/* V24 cumulative: keep height and load in one row.
   Stable property classes are emitted by c_razdel.php, so this does not
   depend on item order and does not affect firmness or category-specific rows. */
.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p7,
.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p8{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-width:0;
  margin-bottom:7px;
  white-space:nowrap;
}

.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p7 .catalog-product__table-meta-label,
.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p8 .catalog-product__table-meta-label{
  display:inline;
  flex:0 0 auto;
  margin:0;
}

.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p7 .catalog-product__table-meta-value,
.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p8 .catalog-product__table-meta-value{
  display:inline-flex;
  min-width:0;
  flex:0 1 auto;
  flex-direction:row;
  gap:0;
  white-space:nowrap;
}

.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p7 .catalog-product__table-meta-value > span,
.catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item--p8 .catalog-product__table-meta-value > span{
  display:inline;
  white-space:nowrap;
}


/* V25 - category-specific catalogue requirements from the current Son City specification. */
.catalog-filter__reset.btn{display:flex;width:100%;min-height:36px;align-items:center;justify-content:center;margin:0 0 12px;padding:0 12px;font-size:12px;text-decoration:none}

/* Beds and bedroom furniture are image-led categories: two large cards on desktop. */
@media(min-width:901px){
  .catalog-v12--wide-visual .catalog-products:not(.catalog-products--list){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .catalog-v12--wide-visual .catalog-product__media{height:330px}
  .catalog-v12--wide-visual .catalog-product__body{min-height:250px}
  .catalog-v12--wide-visual .catalog-product__body h2{font-size:16px;line-height:1.35}
}
@media(max-width:680px){
  .catalog-v12--wide-visual .catalog-products,
  .catalog-v12--wide-visual .catalog-products:not(.catalog-products--list),
  .catalog-v12--wide-visual .catalog-products--list{grid-template-columns:1fr!important}
  .catalog-v12--wide-visual .catalog-product{grid-template-columns:1fr!important;min-height:0}
  .catalog-v12--wide-visual .catalog-product__media{height:245px;min-height:245px}
  .catalog-v12--wide-visual .catalog-product__body{min-height:0}
}

/* Mattress grid remains two cards per row on phones. */
@media(max-width:680px){
  .catalog-v12--mattress .catalog-products:not(.catalog-products--list){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .catalog-v12--mattress .catalog-products:not(.catalog-products--list) .catalog-product{min-width:0}
}

/* Announcement/SEO lists follow the same editorial styling as the rest of the new catalogue. */
.catalog-intro__text ul,.catalog-intro__text ol{margin:10px 0 12px;padding-left:22px}
.catalog-intro__text ul{list-style:disc outside}.catalog-intro__text ol{list-style:decimal outside}
.catalog-intro__text li{margin:5px 0;line-height:1.55}
.catalog-intro__text li::marker{color:var(--color-primary);font-weight:700}


/* V26: foundations only — keep label and value on one line in grid cards. */
.catalog-v12--foundations .catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-item{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-width:0;
  margin-bottom:7px;
  white-space:nowrap;
}
.catalog-v12--foundations .catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-label{
  display:inline!important;
  flex:0 0 auto;
  margin:0!important;
  white-space:nowrap;
}
.catalog-v12--foundations .catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-value{
  display:inline-flex!important;
  min-width:0;
  flex:0 1 auto;
  flex-direction:row!important;
  gap:0;
  white-space:nowrap;
}
.catalog-v12--foundations .catalog-products:not(.catalog-products--list)
.catalog-product__table-meta-value>span{
  display:inline!important;
  white-space:nowrap;
}

/* TZ4 2026-09-22: mattress mobile width and bed/furniture list cleanup. */
@media(max-width:680px){
  .catalog-v12--mattress>.container{padding-left:5px;padding-right:5px}
  .catalog-v12--mattress .catalog-products:not(.catalog-products--list){gap:6px}
  .catalog-v12--mattress .catalog-products:not(.catalog-products--list) .catalog-product__body{padding-left:8px;padding-right:8px}
  .catalog-v12--mattress .catalog-products:not(.catalog-products--list) .catalog-product__foot{gap:5px}
}

/* Beds and bedroom furniture: list view contains only the requested height line. */
.catalog-v12--beds .catalog-products--list .catalog-product__photo-meta,
.catalog-v12--furniture .catalog-products--list .catalog-product__photo-meta{display:none!important}
.catalog-v12--beds .catalog-products--list .catalog-product__table-meta,
.catalog-v12--furniture .catalog-products--list .catalog-product__table-meta{display:block;width:100%;max-width:520px;margin:7px auto 10px;text-align:center}
.catalog-v12--beds .catalog-products--list .catalog-product__table-meta-item,
.catalog-v12--furniture .catalog-products--list .catalog-product__table-meta-item{display:flex;align-items:baseline;justify-content:center;gap:5px;margin:0;white-space:nowrap}
.catalog-v12--beds .catalog-products--list .catalog-product__table-meta-label,
.catalog-v12--furniture .catalog-products--list .catalog-product__table-meta-label{display:inline;margin:0;color:#9b8c73;font-size:11px}
.catalog-v12--beds .catalog-products--list .catalog-product__table-meta-value,
.catalog-v12--furniture .catalog-products--list .catalog-product__table-meta-value{display:inline;color:var(--color-text);font-size:12px;font-weight:600}
.catalog-v12--beds .catalog-products--list .catalog-product__table-meta-value>span,
.catalog-v12--furniture .catalog-products--list .catalog-product__table-meta-value>span{display:inline}
.catalog-v12--beds .catalog-products--list .catalog-product__body h2,
.catalog-v12--furniture .catalog-products--list .catalog-product__body h2{text-align:center}
.catalog-v12--beds .catalog-products--list .catalog-product__rating,
.catalog-v12--furniture .catalog-products--list .catalog-product__rating{justify-content:center}
.catalog-v12--beds .catalog-products--list .catalog-product__size,
.catalog-v12--furniture .catalog-products--list .catalog-product__size{width:min(100%,300px);margin-left:auto;margin-right:auto;text-align:center}
.catalog-v12--beds .catalog-products--list .catalog-product__size>span,
.catalog-v12--furniture .catalog-products--list .catalog-product__size>span{display:block;text-align:center}
.catalog-v12--beds .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-item,
.catalog-v12--furniture .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-item{display:flex;align-items:baseline;gap:5px;white-space:nowrap}
.catalog-v12--beds .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-label,
.catalog-v12--furniture .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-label{display:inline;margin:0}
.catalog-v12--beds .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value,
.catalog-v12--furniture .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value{display:inline}
.catalog-v12--beds .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value>span,
.catalog-v12--furniture .catalog-products:not(.catalog-products--list) .catalog-product__table-meta-value>span{display:inline}


/* 2026-09-23: beds list view — center price and cart button as one purchase row. */
.catalog-v12--beds .catalog-products--list .catalog-product__foot{
  width:100%;
  max-width:380px;
  margin-top:auto;
  margin-left:auto;
  margin-right:auto;
  align-items:center;
  justify-content:center;
  gap:22px;
}
.catalog-v12--beds .catalog-products--list .catalog-product__price{
  align-items:center;
  text-align:center;
}
.catalog-v12--beds .catalog-products--list .catalog-product__foot .btn{
  flex:0 0 auto;
}


/* 2026-09-23: beds + furniture list view — keep price and cart button compact and centered. */
.catalog-v12--beds .catalog-products--list .catalog-product__foot,
.catalog-v12--furniture .catalog-products--list .catalog-product__foot{
  width:auto;
  max-width:none;
  margin-top:auto;
  margin-left:auto;
  margin-right:auto;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:12px;
}

.catalog-v12--beds .catalog-products--list .catalog-product__price,
.catalog-v12--furniture .catalog-products--list .catalog-product__price{
  flex:0 0 auto;
  min-width:0;
  align-items:center;
  text-align:center;
}

.catalog-v12--beds .catalog-products--list .catalog-product__foot .btn,
.catalog-v12--furniture .catalog-products--list .catalog-product__foot .btn{
  flex:0 0 auto;
  width:auto;
  min-width:150px;
  margin:0;
}

@media(max-width:760px){
  .catalog-v12--beds .catalog-products--list .catalog-product__foot,
  .catalog-v12--furniture .catalog-products--list .catalog-product__foot{
    gap:10px;
  }
  .catalog-v12--beds .catalog-products--list .catalog-product__foot .btn,
  .catalog-v12--furniture .catalog-products--list .catalog-product__foot .btn{
    min-width:140px;
  }
}


/* TZ5 2026-09-23: compact two-column mobile catalogue purchase block. */
@media(max-width:680px){
  .catalog-v12__mobile-actions{width:100%;gap:10px}
  .catalog-v12__mobile-actions .btn{width:auto;min-width:0;flex:1 1 auto;justify-content:center}
  .catalog-v12__mobile-actions>span{flex:0 0 auto;white-space:nowrap}

  .catalog-products:not(.catalog-products--list) .catalog-product__size{display:block;width:100%;margin:4px 0 8px}
  .catalog-products:not(.catalog-products--list) .catalog-product__size>span{display:none!important}
  .catalog-products:not(.catalog-products--list) .catalog-product__size select{display:block;width:100%;max-width:none;height:38px;margin:0}
  .catalog-products:not(.catalog-products--list) .catalog-product__foot{display:flex;flex-direction:column!important;align-items:stretch!important;gap:7px;width:100%}
  .catalog-products:not(.catalog-products--list) .catalog-product__price{display:flex;min-height:0;flex-direction:row;align-items:baseline;gap:5px;white-space:nowrap}
  .catalog-products:not(.catalog-products--list) .catalog-product__price del,.catalog-products:not(.catalog-products--list) .catalog-product__price strong{white-space:nowrap}
  .catalog-products:not(.catalog-products--list) .catalog-product__foot .btn{display:flex!important;width:100%!important;min-width:0!important;align-self:stretch!important;justify-content:center!important}
  .catalog-products:not(.catalog-products--list) .catalog-product__foot .btn span{display:inline!important}

  .catalog-v12--foundations .catalog-products:not(.catalog-products--list),
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .catalog-v12--foundations .catalog-products:not(.catalog-products--list) .catalog-product,
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list) .catalog-product{min-width:0!important;min-height:0}
  .catalog-v12--foundations .catalog-products:not(.catalog-products--list) .catalog-product__media,
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list) .catalog-product__media{height:145px}
  .catalog-v12--foundations .catalog-products:not(.catalog-products--list) .catalog-product__body,
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list) .catalog-product__body{min-height:0;padding:9px 8px}
}
@media(max-width:420px){
  .catalog-v12--foundations .catalog-products:not(.catalog-products--list),
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .catalog-v12--foundations .catalog-products:not(.catalog-products--list) .catalog-product__media,
  .catalog-v12--accessories .catalog-products:not(.catalog-products--list) .catalog-product__media{height:132px}
}


/* 2026-09-23: mobile filter full width + product count next to catalogue title. */
.catalog-v12__product-count{display:none}

@media(max-width:900px){
  .catalog-v12__title-row{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:10px;
    width:100%;
  }
  .catalog-v12__title-row h1{
    min-width:0;
    margin-bottom:7px;
  }
  .catalog-v12__product-count{
    display:inline-block;
    flex:0 0 auto;
    color:var(--color-text-muted);
    font-size:10px;
    font-weight:500;
    line-height:1.2;
    white-space:nowrap;
  }
  .catalog-v12__mobile-actions{
    display:block;
    width:100%;
  }
  .catalog-v12__mobile-actions .btn{
    display:flex;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    justify-content:center!important;
  }
}

@media(max-width:480px){
  .catalog-v12__title-row{
    gap:7px;
  }
  .catalog-v12__product-count{
    font-size:9.5px;
  }
}


/* 2026-09-23: all catalogue product lists — larger cart label and SVG icon. */
.catalog-v12 .catalog-product__foot .btn{
  min-height:40px;
  gap:7px;
  font-size:11.5px;
  font-weight:700;
  line-height:1.2;
}
.catalog-v12 .catalog-product__foot .btn .icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
}

/* Keep compact two-column mobile cards readable without hiding the label. */
@media(max-width:680px){
  .catalog-v12 .catalog-product__foot .btn{
    min-height:38px;
    gap:6px;
    font-size:10.5px;
  }
  .catalog-v12 .catalog-product__foot .btn .icon{
    width:15px;
    height:15px;
    flex-basis:15px;
  }
  .catalog-v12 .catalog-product__foot .btn span{
    display:inline!important;
  }
}


/* 2026-09-23: stronger cart button typography in all catalogue lists. */
.catalog-v12 .catalog-product__foot .btn{
  min-height:44px!important;
  gap:8px!important;
  font-size:13.5px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
.catalog-v12 .catalog-product__foot .btn .icon{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
}

@media(max-width:680px){
  .catalog-v12 .catalog-product__foot .btn{
    min-height:42px!important;
    gap:7px!important;
    font-size:12px!important;
    font-weight:800!important;
  }
  .catalog-v12 .catalog-product__foot .btn .icon{
    width:18px!important;
    height:18px!important;
    flex-basis:18px!important;
  }
}


/* 2026-09-24: larger mobile size selector in catalogue cards. */
@media(max-width:680px){
  .catalog-v12 .catalog-product__size select{height:44px!important;padding-left:12px!important;padding-right:34px!important;font-size:13px!important;font-weight:700!important;}
}

/* Beds/furniture: emphasize retained key dimension in catalogue cards. */
.catalog-v12--beds .catalog-product__table-meta-item--p5 .catalog-product__table-meta-label,
.catalog-v12--furniture .catalog-product__table-meta-item--p7 .catalog-product__table-meta-label{font-size:12px!important;font-weight:600!important;}
.catalog-v12--beds .catalog-product__table-meta-item--p5 .catalog-product__table-meta-value,
.catalog-v12--furniture .catalog-product__table-meta-item--p7 .catalog-product__table-meta-value{font-size:13px!important;font-weight:700!important;}
@media(max-width:680px){
  .catalog-v12--beds .catalog-product__table-meta-item--p5 .catalog-product__table-meta-label,
  .catalog-v12--furniture .catalog-product__table-meta-item--p7 .catalog-product__table-meta-label{font-size:10.5px!important;}
  .catalog-v12--beds .catalog-product__table-meta-item--p5 .catalog-product__table-meta-value,
  .catalog-v12--furniture .catalog-product__table-meta-item--p7 .catalog-product__table-meta-value{font-size:12px!important;}
}


/* 2026-09-24: furniture catalogue — make retained Height characteristic clearly larger.
   Do not depend on Bitrix property code: furniture cards keep only this table-meta row. */
.catalog-v12--furniture .catalog-product__table-meta-item .catalog-product__table-meta-label{
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.3!important;
}
.catalog-v12--furniture .catalog-product__table-meta-item .catalog-product__table-meta-value{
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.3!important;
}
.catalog-v12--furniture .catalog-product__table-meta-item{
  gap:7px!important;
}

@media(max-width:680px){
  .catalog-v12--furniture .catalog-product__table-meta-item .catalog-product__table-meta-label{
    font-size:11.5px!important;
  }
  .catalog-v12--furniture .catalog-product__table-meta-item .catalog-product__table-meta-value{
    font-size:13.5px!important;
  }
}


/* Producer/category intro artwork must be fully visible, never cropped. */
.catalog-v12 .catalog-intro__media img{
  object-fit:contain;
}


/* Brand carousels use the dedicated single mobile logo file, not old two-state sprites. */
.catalog-v12 .catalog-brands__list>a>span{
  display:flex;
  width:132px;
  height:64px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.catalog-v12 .catalog-brands__list img{
  position:static;
  display:block;
  width:auto;
  height:auto;
  max-width:124px;
  max-height:52px;
  object-fit:contain;
  transform:none;
  transition:transform .18s ease,opacity .18s ease;
}
.catalog-v12 .catalog-brands__list a:hover img{
  transform:scale(1.04);
}


/* Desktop filter must participate in normal page scrolling.
   Sticky positioning hid the lower filter groups and submit button when the
   sidebar was taller than the viewport. Mobile keeps its fixed drawer below. */
@media (min-width:901px){
  .catalog-v12 .catalog-filter{
    position:static;
    top:auto;
    max-height:none;
    overflow:visible;
  }
}
