/* ==========================================
   1. ПЕРЕМЕННЫЕ И БАЗОВЫЙ СБРОС
   ========================================== */
:root {
  --header-bg: #1a1a1a;
  --header-bg-solid: #1a1a1a;
  --header-border: rgba(255, 255, 255, 0.08);
  --header-text: #ffffff;
  --header-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
  --header-shadow-solid: 0 4px 16px rgba(0, 0, 0, 0.4);
  --accent-light: #efefef;
}

html, body {
  margin: 0 !important; padding: 0 !important;
  background-color: #ffffff !important;
  overflow-x: hidden !important; width: 100%;
  min-height: 100vh;
}

#allrecords { margin: 0 !important; padding: 0 !important; border: none !important; background-color: #ffffff !important; }
.t-records__wrapper { padding: 0 !important; margin: 0 !important; }

body { padding-top: 70px !important; }
@media (max-width: 959px) { body { padding-top: 72px !important; } }

/* ==========================================
   2. МОБИЛЬНОЕ МЕНЮ И НИЖНИЙ БАР
   ========================================== */
.mobile-menu { position: fixed !important; top: 0 !important; right: 0 !important; bottom: 0 !important; width: 85% !important; max-width: 320px !important; background: #1a1a1a !important; transform: translateX(100%) !important; transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; z-index: 10000 !important; padding: 20px !important; box-shadow: -4px 0 20px rgba(0,0,0,0.4) !important; }
.mobile-menu.open { transform: translateX(0) !important; }
.mobile-menu-header { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 24px !important; padding-bottom: 16px !important; border-bottom: 1px solid rgba(255,255,255,0.1) !important; }
.mobile-menu-title { font-family: 'TildaSans', sans-serif !important; font-size: 18px !important; font-weight: 600 !important; color: #ffffff !important; }
.mobile-menu-close { background: #ffffff !important; border-radius: 15px !important; width: 44px !important; height: 44px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: none !important; cursor: pointer !important; transition: transform 0.3s ease !important; }
.mobile-menu-close .icon-svg { fill: #1a1a1a !important; stroke: none !important; width: 22px !important; height: 22px !important; }
.mobile-menu-close:hover { transform: rotate(90deg) !important; background: #efefef !important; }
.mobile-menu-nav { display: flex !important; flex-direction: column !important; gap: 8px !important; }
.mobile-menu-nav a { font-family: 'TildaSans', sans-serif !important; font-size: 16px !important; color: #ffffff !important; text-decoration: none !important; padding: 10px 0 !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; transition: opacity 0.2s !important; }
.mobile-menu-nav a:hover { opacity: 0.8 !important; }
.mobile-menu-nav a.active { font-weight: 600 !important; border-bottom-color: rgba(255,255,255,0.3) !important; }
.mobile-btn { display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; margin-top: 12px !important; padding: 14px !important; border-radius: 15px !important; font-weight: 600 !important; text-decoration: none !important; transition: all 0.2s !important; }
.mobile-menu-nav a.mobile-phone { background: #ffffff !important; color: #000000 !important; }
.mobile-menu-nav a.mobile-phone:hover { background: var(--accent-light) !important; color: #000000 !important; }
.mobile-menu-nav a.mobile-phone, .mobile-menu-nav a.mobile-phone * { color: #000000 !important; }
.mobile-phone .btn-icon { fill: #000000 !important; stroke: none !important; }
.mobile-contacts { background: rgba(255,255,255,0.08) !important; color: #ffffff !important; border: 1px solid rgba(255,255,255,0.15) !important; border-radius: 15px !important; }
.mobile-contacts:hover { background: rgba(255,255,255,0.12) !important; }
.mobile-contacts .btn-icon { fill: #ffffff !important; stroke: none !important; }
.btn-icon { width: 18px !important; height: 18px !important; flex-shrink: 0 !important; fill: currentColor !important; stroke: none !important; }
.mobile-socials { display: flex !important; gap: 12px !important; margin-top: 24px !important; padding-top: 16px !important; border-top: 1px solid rgba(255,255,255,0.1) !important; justify-content: center !important; }
.mobile-socials .social-icon { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: rgba(255,255,255,0.08) !important; transition: all 0.2s ease !important; }
.mobile-socials .social-icon svg { width: 22px !important; height: 22px !important; fill: #ffffff !important; stroke: none !important; }
.mobile-socials .social-icon:hover { background: var(--accent-light) !important; }
.mobile-socials .social-icon:hover svg { fill: #1a1a1a !important; }
.menu-overlay { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important; background: rgba(0,0,0,0.6) !important; z-index: 9998 !important; opacity: 0 !important; pointer-events: none !important; transition: opacity 0.3s !important; }
.menu-overlay.open { opacity: 1 !important; pointer-events: auto !important; }

@media (max-width: 959px) {
  #bottom-nav { position: fixed !important; bottom: 0 !important; left: 0 !important; right: 0 !important; z-index: 9990 !important; display: flex !important; justify-content: space-around !important; align-items: center !important; height: 68px !important; background: #1a1a1a !important; border-top: 1px solid rgba(255,255,255,0.08) !important; padding-bottom: env(safe-area-inset-bottom) !important; -webkit-tap-highlight-color: transparent !important; }
  .bn-item { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-decoration: none !important; color: rgba(255,255,255,0.6) !important; font-family: 'TildaSans', 'Arial', sans-serif !important; font-size: 12px !important; font-weight: 500 !important; padding: 6px 0 !important; min-width: 48px !important; min-height: 48px !important; transition: all 0.2s ease !important; position: relative !important; }
  .bn-item svg { width: 22px !important; height: 22px !important; margin-bottom: 4px !important; fill: currentColor !important; stroke: none !important; }
  .bn-item.active { color: #ffffff !important; font-weight: 600 !important; }
  .bn-item.active::after { content: '' !important; position: absolute !important; bottom: 2px !important; left: 50% !important; transform: translateX(-50%) !important; width: 20px !important; height: 2px !important; background: #ffffff !important; border-radius: 1px !important; }
  .bn-item:active { color: rgba(255,255,255,0.9) !important; transform: scale(0.95) !important; }
  .cart-badge { position: absolute !important; top: 4px !important; right: 4px !important; min-width: 16px !important; height: 16px !important; padding: 0 4px !important; background: #ffffff !important; color: #1a1a1a !important; font-size: 9px !important; font-weight: 600 !important; border-radius: 8px !important; display: none !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; z-index: 2 !important; animation: pulse 0.4s ease !important; }
  @keyframes pulse { 0% { transform: scale(1) !important; } 50% { transform: scale(1.15) !important; } 100% { transform: scale(1) !important; } }
  .t-records { padding-bottom: calc(68px + env(safe-area-inset-bottom)) !important; }
}
@media (min-width: 960px) { #bottom-nav { display: none !important; } }

/* ==========================================
   3. ПЛАВАЮЩИЕ КНОПКИ
   ========================================== */
.scroll-top-btn { position: fixed !important; left: 16px !important; width: 42px !important; height: 42px !important; background: rgba(26,26,26, 0.75) !important; border: 1px solid rgba(255,255,255,0.15) !important; border-radius: 15px !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; z-index: 9989 !important; opacity: 0 !important; visibility: hidden !important; transform: translateY(10px) !important; transition: all 0.3s ease !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; -webkit-tap-highlight-color: transparent !important; }
@media (max-width: 959px) { .scroll-top-btn { bottom: calc(68px + env(safe-area-inset-bottom) + 12px) !important; } }
@media (min-width: 960px) { .scroll-top-btn { bottom: 24px !important; left: 24px !important; } }
.scroll-top-btn.visible { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; }
.scroll-top-btn svg { width: 22px !important; height: 22px !important; fill: #ffffff !important; stroke: none !important; }
.scroll-top-btn:active { transform: scale(0.95) !important; }

.custom-filter-btn { opacity: 0 !important; visibility: hidden !important; transform: translateX(-50%) translateY(10px) !important; transition: all 0.3s ease !important; pointer-events: none !important; display: flex !important; position: fixed !important; top: auto !important; bottom: calc(68px + env(safe-area-inset-bottom) + 12px) !important; left: 50% !important; right: auto !important; z-index: 9988 !important; background: rgba(26,26,26, 0.75) !important; color: #efefef !important; padding: 0 20px !important; border-radius: 15px !important; border: 1px solid rgba(255,255,255,0.15) !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; font-family: 'TildaSans', Arial, sans-serif !important; font-size: 13px !important; font-weight: 500 !important; height: 42px !important; width: auto !important; max-width: 90vw !important; align-items: center !important; justify-content: center !important; gap: 8px !important; cursor: pointer !important; }
@media (min-width: 960px) { .custom-filter-btn { display: none !important; } }
.custom-filter-btn.visible { opacity: 1 !important; visibility: visible !important; transform: translateX(-50%) translateY(0) !important; pointer-events: auto !important; }
.custom-filter-btn svg { width: 18px !important; height: 18px !important; fill: #efefef !important; flex-shrink: 0 !important; display: block !important; }
.custom-filter-btn:hover { background: rgba(40,40,40, 0.85) !important; }
.custom-filter-btn.has-filters { background: rgba(50,50,50, 0.85) !important; border-color: rgba(255,255,255,0.25) !important; }

.desktop-cart-float { display: none !important; }
@media (min-width: 960px) {
  .desktop-cart-float { display: flex !important; position: fixed !important; right: 24px !important; bottom: 24px !important; width: 50px !important; height: 50px !important; background: rgba(26,26,26, 0.75) !important; border: 1px solid rgba(255,255,255,0.15) !important; border-radius: 15px !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; z-index: 9989 !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; transition: all 0.3s ease !important; text-decoration: none !important; }
  .desktop-cart-float svg { width: 26px !important; height: 26px !important; fill: #ffffff !important; }
  .desktop-cart-float:hover { background: rgba(40,40,40, 0.85) !important; transform: translateY(-2px) !important; }
  .desktop-cart-float:active { transform: scale(0.95) !important; }
  .desktop-cart-badge { position: absolute !important; top: 4px !important; right: 4px !important; min-width: 16px !important; height: 16px !important; padding: 0 4px !important; background: #ffffff !important; color: #1a1a1a !important; font-size: 9px !important; font-weight: 600 !important; border-radius: 8px !important; display: none !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; animation: pulse 0.4s ease !important; }
}

.uc-back-wrapper { position: fixed !important; top: 82px !important; left: 16px !important; z-index: 9985 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: none !important; transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease, transform 0.3s ease !important; }
@media (min-width: 960px) { .uc-back-wrapper { top: 82px !important; left: 70px !important; } }
.uc-back-wrapper.header-sync-hidden { top: -60px !important; opacity: 0 !important; transform: translateY(-10px) !important; pointer-events: none !important; }
.uc-smart-back-btn { width: 42px !important; height: 42px !important; background: rgba(26, 26, 26, 0.75) !important; border: 1px solid rgba(255, 255, 255, 0.15) !important; border-radius: 15px !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: all 0.3s ease !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; pointer-events: auto !important; }
.uc-smart-back-btn svg { width: 22px !important; height: 22px !important; fill: #ffffff !important; stroke: none !important; display: block !important; transition: transform 0.2s ease !important; }
.uc-smart-back-btn:hover { background: rgba(40, 40, 40, 0.85) !important; transform: translateY(-2px) !important; }
.uc-smart-back-btn:hover svg { transform: translateX(-2px) !important; }
.uc-smart-back-btn:active { transform: scale(0.95) !important; }

.cookie-banner { position: fixed !important; z-index: 9997 !important; background: rgba(26, 26, 26, 0.75) !important; border: 1px solid rgba(255,255,255,0.15) !important; border-radius: 15px !important; padding: 12px 16px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.4) !important; transform: translateY(120%) !important; opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) !important; }
.cookie-banner.visible { transform: translateY(0) !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }
.cookie-content { display: flex !important; align-items: center !important; gap: 10px !important; flex: 1 !important; min-width: 0 !important; }
.cookie-icon { width: 24px !important; height: 24px !important; flex-shrink: 0 !important; }
.cookie-icon svg { width: 100% !important; height: 100% !important; fill: #ffffff !important; }
.cookie-text { color: rgba(255,255,255,0.85) !important; font-family: 'TildaSans', sans-serif !important; font-size: 13px !important; line-height: 1.3 !important; }
.cookie-text a { color: #ffffff !important; text-decoration: underline !important; }
.cookie-btn { background: #ffffff !important; color: #1a1a1a !important; border: none !important; padding: 8px 16px !important; border-radius: 15px !important; font-family: 'TildaSans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; transition: background 0.2s !important; flex-shrink: 0 !important; }
.cookie-btn:hover { background: #efefef !important; }

/* ==========================================
   4. ФУТЕР
   ========================================== */
.site-footer { background: #1a1a1a !important; color: #ffffff !important; padding: 80px 0 30px !important; margin-top: 0 !important; }
.footer-container { max-width: 1400px !important; margin: 0 auto !important; padding: 0 32px !important; }
.footer-top { display: grid !important; grid-template-columns: 1.5fr 1fr 1fr 1.5fr !important; gap: 60px !important; margin-bottom: 60px !important; }
.footer-brand .footer-logo-img { max-width: 200px !important; height: auto !important; margin-bottom: 20px !important; display: block !important; }
.footer-contacts { display: flex !important; flex-direction: column !important; gap: 15px !important; margin-bottom: 25px !important; }
.footer-contact-item { display: flex !important; align-items: center !important; gap: 12px !important; color: rgba(255, 255, 255, 0.8) !important; font-family: 'TildaSans', sans-serif !important; font-size: 14px !important; }
.footer-contact-item svg { width: 18px !important; height: 18px !important; fill: rgba(255, 255, 255, 0.6) !important; flex-shrink: 0 !important; }
.footer-contact-item a { color: rgba(255, 255, 255, 0.8) !important; text-decoration: none !important; transition: color 0.2s !important; }
.footer-contact-item a:hover { color: #ffffff !important; }
.footer-socials { display: flex !important; gap: 12px !important; margin-top: 10px !important; }
.footer-social-link { width: 44px !important; height: 44px !important; background: rgba(255, 255, 255, 0.1) !important; border-radius: 12px !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: all 0.2s ease !important; }
.footer-social-link:hover { background: rgba(255, 255, 255, 0.2) !important; transform: translateY(-3px) !important; }
.footer-social-link svg { width: 22px !important; height: 22px !important; fill: #ffffff !important; }
.footer-column h4 { font-family: 'TildaSans', sans-serif !important; font-size: 18px !important; font-weight: 600 !important; color: #ffffff !important; margin: 0 0 25px 0 !important; padding-bottom: 10px !important; border-bottom: 2px solid rgba(255, 255, 255, 0.1) !important; }
.footer-links { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 14px !important; }
.footer-links a { font-family: 'TildaSans', sans-serif !important; font-size: 14px !important; color: rgba(255, 255, 255, 0.7) !important; text-decoration: none !important; transition: all 0.2s !important; display: inline-block !important; }
.footer-links a:hover { color: #ffffff !important; transform: translateX(5px) !important; }
.footer-extras { display: flex !important; flex-direction: column !important; gap: 30px !important; }
.footer-rating-block { background: rgba(255, 255, 255, 0.05) !important; border-radius: 16px !important; padding: 25px !important; text-align: center !important; }
.footer-rating-block h5 { font-family: 'TildaSans', sans-serif !important; font-size: 16px !important; font-weight: 600 !important; margin: 0 0 15px 0 !important; color: #ffffff !important; }
.yandex-rating-badge iframe { border-radius: 10px !important; overflow: hidden !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important; }
.footer-features { display: flex !important; flex-direction: column !important; gap: 15px !important; }
.footer-feature { display: flex !important; align-items: flex-start !important; gap: 12px !important; }
.footer-feature-icon { width: 40px !important; height: 40px !important; background: rgba(255, 255, 255, 0.1) !important; border-radius: 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.footer-feature-icon svg { width: 22px !important; height: 22px !important; fill: #ffffff !important; }
.footer-feature-text { flex: 1 !important; }
.footer-feature-title { font-family: 'TildaSans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: #ffffff !important; margin-bottom: 3px !important; }
.footer-feature-desc { font-family: 'TildaSans', sans-serif !important; font-size: 13px !important; color: rgba(255, 255, 255, 0.6) !important; line-height: 1.3 !important; }
.footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.1) !important; padding-top: 30px !important; display: flex !important; justify-content: space-between !important; align-items: center !important; flex-wrap: wrap !important; gap: 20px !important; }
.footer-copyright { font-family: 'TildaSans', sans-serif !important; font-size: 13px !important; color: rgba(255, 255, 255, 0.6) !important; }
.footer-legal { display: flex !important; gap: 24px !important; }
.footer-legal a { font-family: 'TildaSans', sans-serif !important; font-size: 13px !important; color: rgba(255, 255, 255, 0.6) !important; text-decoration: none !important; transition: color 0.2s !important; }
.footer-legal a:hover { color: #ffffff !important; }

.rating-badge { background: rgba(255, 255, 255, 0.08) !important; border-radius: 15px !important; padding: 16px 24px !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 8px !important; font-family: 'TildaSans', Arial, sans-serif !important; border: 1px solid rgba(255, 255, 255, 0.1) !important; }
.rating-value { display: flex !important; align-items: center !important; gap: 10px !important; }
.rating-number { font-size: 32px !important; font-weight: 700 !important; color: #ffffff !important; line-height: 1 !important; font-family: 'TildaSans', Arial, sans-serif !important; }
.rating-stars { display: flex !important; gap: 3px !important; line-height: 1 !important; }
.rating-stars svg { width: 20px !important; height: 20px !important; fill: #FFD700 !important; flex-shrink: 0 !important; }
.rating-stars svg.empty { fill: transparent !important; stroke: #FFD700 !important; stroke-width: 1.5 !important; }
.rating-count { font-size: 13px !important; color: rgba(255, 255, 255, 0.7) !important; font-weight: 500 !important; font-family: 'TildaSans', Arial, sans-serif !important; }
.rating-badge.loaded { animation: fadeIn 0.3s ease !important; }
@keyframes fadeIn { from { opacity: 0 !important; transform: translateY(5px) !important; } to { opacity: 1 !important; transform: translateY(0) !important; } }
.footer-rating-block .yandex-rating-badge { display: block !important; margin: 15px auto 0 !important; text-align: center !important; line-height: 0 !important; }
.footer-rating-block .yandex-rating-badge iframe { display: block !important; margin: 0 auto !important; border: none !important; border-radius: 10px !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important; }

/* ==========================================
   5. КОНТЕНТНЫЕ БЛОКИ + ЛОКАЛЬНЫЕ ФИКСЫ ТЕКСТА
   ========================================== */
.treebed-about { font-family: 'TildaSans', Arial, sans-serif !important; color: #333 !important; line-height: 1.55 !important; max-width: 1200px !important; margin: 0 auto !important; padding: 40px 15px 0 !important; width: 100% !important; }
.treebed-about .intro { font-size: 18px !important; color: #555 !important; margin-bottom: 50px !important; max-width: 900px !important; }
.treebed-about .cards-grid { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 20px !important; margin-bottom: 60px !important; }
.treebed-about .card { background: #efefef !important; border-radius: 15px !important; padding: 30px !important; transition: transform 0.2s !important; }
.treebed-about .card:hover { transform: translateY(-3px) !important; }
.treebed-about .card h3 { display: flex !important; align-items: center !important; gap: 10px !important; font-size: 20px !important; font-weight: 600 !important; margin: 0 0 10px !important; color: #2c3e50 !important; line-height: 1.3 !important; }
.treebed-about .card-icon { width: 32px !important; height: 32px !important; flex-shrink: 0 !important; display: inline-block !important; fill: #1a1a1a !important; vertical-align: middle !important; }
.treebed-about .card p { font-size: 16px !important; color: #444 !important; margin: 0 !important; line-height: 1.5 !important; }
.treebed-about .section { margin: 60px 0 !important; }
.treebed-about .section h2 { font-size: 40px !important; font-weight: 600 !important; margin: 0 0 24px !important; color: #1a1a1a !important; line-height: 1.2 !important; }
.treebed-about .section-intro { font-size: 18px !important; color: #555 !important; margin-bottom: 30px !important; max-width: 900px !important; }
.treebed-about .process-block { display: flex !important; flex-wrap: wrap !important; gap: 40px !important; margin: 40px 0 !important; align-items: center !important; width: 100% !important; }
.treebed-about .process-text { flex: 1 !important; min-width: 300px !important; }
.treebed-about .process-text h3 { font-size: 20px !important; font-weight: 600 !important; margin: 0 0 12px !important; color: #2c3e50 !important; }
.treebed-about .process-text p { font-size: 16px !important; color: #444 !important; margin: 0 !important; line-height: 1.6 !important; }
.treebed-about .process-img { flex: 1 !important; min-width: 300px !important; height: 350px !important; border-radius: 15px !important; overflow: hidden !important; background: #f5f5f5 !important; width: 100% !important; max-width: 100% !important; }
.treebed-about .process-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 0.3s !important; display: block !important; }
.treebed-about .process-img img:hover { transform: scale(1.03) !important; }
.treebed-about .process-gallery { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; margin: 30px 0 !important; width: 100% !important; }
.treebed-about .process-item { aspect-ratio: 4/3 !important; border-radius: 12px !important; overflow: hidden !important; background: #f5f5f5 !important; position: relative !important; width: 100% !important; }
.treebed-about .process-item img { width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 0.2s !important; display: block !important; }
.treebed-about .process-item:hover img { transform: scale(1.05) !important; }
.treebed-about .process-item .caption { position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; background: linear-gradient(to top, rgba(0,0,0,0.6), transparent) !important; color: #fff !important; padding: 10px 12px !important; font-size: 13px !important; font-weight: 500 !important; }
.treebed-about .materials { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 20px !important; margin: 30px 0 !important; width: 100% !important; }
.treebed-about .material-card { text-align: center !important; padding: 24px !important; background: #fff !important; border-radius: 12px !important; border: 1px solid #e0e0e0 !important; width: 100% !important; box-sizing: border-box !important; }
.treebed-about .material-card img { width: 100% !important; height: 140px !important; object-fit: cover !important; border-radius: 8px !important; margin-bottom: 16px !important; display: block !important; }
.treebed-about .material-card span { font-weight: 600 !important; color: #2c3e50 !important; font-size: 16px !important; display: block !important; margin-bottom: 6px !important; }
.treebed-about .material-card small { color: #777 !important; font-size: 13px !important; line-height: 1.4 !important; }

.treebed-delivery-wrapper { max-width: 1200px !important; margin: 0 auto !important; padding: 0 15px !important; }
.treebed-delivery { font-family: 'TildaSans', Arial, sans-serif !important; color: #333 !important; line-height: 1.55 !important; width: 100% !important; padding: 20px 0 60px !important; }
.treebed-delivery .card { background: #efefef !important; border-radius: 15px !important; padding: 40px !important; margin-bottom: 30px !important; }
.treebed-delivery h2 { font-size: 40px !important; font-weight: 600 !important; margin: 0 0 24px !important; color: #1a1a1a !important; line-height: 1.2 !important; }
.treebed-delivery h3 { font-size: 20px !important; font-weight: 600 !important; margin: 32px 0 12px !important; color: #444 !important; }
.treebed-delivery h3:first-child { margin-top: 0 !important; }
.treebed-delivery p, .treebed-delivery li, .treebed-delivery td, .treebed-delivery th { font-size: 16px !important; margin: 0 !important; }
.treebed-delivery .table-wrap { overflow-x: auto !important; margin: 16px 0 0 !important; border-radius: 12px !important; background: #fff !important; box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important; }
.treebed-delivery table { width: 100% !important; border-collapse: collapse !important; min-width: 480px !important; }
.treebed-delivery th, .treebed-delivery td { padding: 14px 16px !important; text-align: left !important; border-bottom: 1px solid #e8e8e8 !important; vertical-align: top !important; }
.treebed-delivery th { background: #fafafa !important; font-weight: 600 !important; color: #555 !important; white-space: nowrap !important; }
.treebed-delivery tr:last-child td { border-bottom: none !important; }
.treebed-delivery ul { padding-left: 20px !important; margin: 12px 0 0 !important; }
.treebed-delivery li { margin-bottom: 8px !important; }
.treebed-delivery .note { font-size: 14px !important; color: #777 !important; margin-top: 16px !important; font-style: italic !important; }
.treebed-delivery .highlight { background: #fff !important; padding: 12px 16px !important; border-radius: 8px !important; display: inline-block !important; margin-top: 8px !important; font-weight: 500 !important; }

.treebed-contacts-section { font-family: 'TildaSans', Arial, sans-serif !important; color: #333 !important; line-height: 1.55 !important; max-width: 960px !important; margin: 0 auto !important; padding: 20px 20px 60px !important; }
.treebed-contacts-section .card { background: #efefef !important; border-radius: 15px !important; padding: 48px 40px !important; text-align: center !important; }
.treebed-contacts-section h2 { font-size: 40px !important; font-weight: 600 !important; margin: 0 0 16px !important; color: #1a1a1a !important; line-height: 1.2 !important; }
.treebed-contacts-section .subtitle { font-size: 18px !important; margin-bottom: 36px !important; color: #555 !important; }
.icon-row { display: flex !important; justify-content: center !important; gap: 16px !important; margin-bottom: 40px !important; flex-wrap: wrap !important; }
.icon-btn { display: flex !important; align-items: center !important; justify-content: center !important; width: 52px !important; height: 52px !important; background-color: #1a1a1a !important; border-radius: 50% !important; transition: all 0.3s ease !important; text-decoration: none !important; box-shadow: 0 4px 10px rgba(44, 62, 80, 0.2) !important; }
.icon-btn:hover { transform: translateY(-3px) scale(1.05) !important; box-shadow: 0 6px 15px rgba(44, 62, 80, 0.3) !important; background-color: #333333 !important; }
.icon-btn svg { fill: #ffffff !important; width: 22px !important; height: 22px !important; }
.icon-btn.vk:hover { background-color: #0077FF !important; }
.icon-btn.tg:hover { background-color: #0088cc !important; }
.icon-btn.max:hover { background-color: #6c5ce7 !important; }
.treebed-contacts-section .requisites { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px !important; text-align: left !important; margin-top: 10px !important; padding-top: 30px !important; border-top: 1px solid #dcdde1 !important; }
.treebed-contacts-section .requisites p { margin: 6px 0 !important; font-size: 14px !important; color: #666 !important; line-height: 1.5 !important; }
.treebed-contacts-section .requisites a { color: #555 !important; text-decoration: underline !important; text-decoration-color: #aaa !important; text-underline-offset: 3px !important; transition: color 0.2s !important; }
.treebed-contacts-section .requisites a:hover { color: #2c3e50 !important; }
.treebed-contacts-section .offer-link { font-weight: 500 !important; }

.tb-cta-black { font-family: 'TildaSans', Arial, sans-serif !important; padding: 80px 0 !important; background: #fff !important; text-align: center !important; width: 100% !important; }
.tb-cta-black .container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 15px !important; width: 100% !important; }
.tb-cta-black h2 { font-size: 40px !important; font-weight: 600 !important; margin: 0 0 16px !important; color: #1a1a1a !important; line-height: 1.2 !important; }
.tb-cta-black .subtitle { font-size: 18px !important; color: #555 !important; margin-bottom: 32px !important; }
.tb-cta-black .buttons { display: flex !important; gap: 16px !important; justify-content: center !important; flex-wrap: wrap !important; width: 100% !important; }
.tb-cta-black .btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; padding: 16px 32px !important; border-radius: 10px !important; text-decoration: none !important; font-weight: 600 !important; font-size: 16px !important; transition: all 0.2s !important; border: none !important; cursor: pointer !important; }
.tb-cta-black .btn-primary { background: #000 !important; color: #fff !important; }
.tb-cta-black .btn-primary:hover { background: #222 !important; transform: translateY(-2px) !important; }
.tb-cta-black .btn-outline { background: transparent !important; border: 2px solid #000 !important; color: #000 !important; }
.tb-cta-black .btn-outline:hover { background: #000 !important; color: #fff !important; border-color: #000 !important; }

.tb-advantages-box { font-family: 'TildaSans', Arial, sans-serif !important; padding: 80px 0 !important; background: #fff !important; }
.tb-advantages-box .container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 15px !important; }
.tb-advantages-box .title { font-size: 40px !important; font-weight: 600 !important; margin-bottom: 50px !important; color: #1a1a1a !important; text-align: left !important; line-height: 1.2 !important; }
.tb-advantages-box .grid { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; }
.tb-advantages-box .card { background: #efefef !important; border-radius: 15px !important; padding: 30px !important; transition: transform 0.2s !important; }
.tb-advantages-box .card:hover { transform: translateY(-3px) !important; }
.tb-advantages-box .card-icon { width: 48px !important; height: 48px !important; margin-bottom: 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; color: #1a1a1a !important; }
.tb-advantages-box .card-icon svg { width: 100% !important; height: 100% !important; fill: currentColor !important; display: block !important; }
.tb-advantages-box .card-title { font-size: 20px !important; font-weight: 600 !important; margin: 0 0 10px !important; color: #2c3e50 !important; line-height: 1.3 !important; }
.tb-advantages-box .card-text { font-size: 16px !important; color: #444 !important; margin: 0 !important; line-height: 1.5 !important; }

/* ЛОКАЛЬНЫЙ ФИКС СЕРЫХ ИНЛАЙН-СТИЛЕЙ ТОЛЬКО ВНУТРИ КАСТОМНЫХ БЛОКОВ */
.treebed-about [style*="color: #777"], .treebed-about [style*="color: #999"], .treebed-about [style*="color: #888"], .treebed-about [style*="color: #666"],
.treebed-delivery [style*="color: #777"], .treebed-delivery [style*="color: #999"], .treebed-delivery [style*="color: #888"], .treebed-delivery [style*="color: #666"],
.treebed-contacts-section [style*="color: #777"], .treebed-contacts-section [style*="color: #999"], .treebed-contacts-section [style*="color: #888"], .treebed-contacts-section [style*="color: #666"],
.tb-cta-black [style*="color: #777"], .tb-cta-black [style*="color: #999"], .tb-cta-black [style*="color: #888"], .tb-cta-black [style*="color: #666"],
.tb-advantages-box [style*="color: #777"], .tb-advantages-box [style*="color: #999"], .tb-advantages-box [style*="color: #888"], .tb-advantages-box [style*="color: #666"] {
  color: #232323 !important;
}

/* ==========================================
   6. СИСТЕМА ОТЗЫВОВ (ТЕКСТ ТОЛЬКО ВНУТРИ БЛОКОВ)
   ========================================== */
.tb-reviews, .tb-reviews-home, .tb-cat-reviews { font-family: 'TildaSans', 'Tilda Sans', Arial, sans-serif !important; width: 100% !important; margin: 0 !important; display: block !important; position: relative !important; }
.tb-reviews *, .tb-reviews-home *, .tb-cat-reviews * { box-sizing: border-box !important; font-family: inherit !important; }
.tb-reviews input, .tb-reviews textarea, .tb-reviews select, .tb-reviews button,
.tb-reviews-home input, .tb-reviews-home textarea, .tb-reviews-home select, .tb-reviews-home button,
.tb-cat-reviews input, .tb-cat-reviews textarea, .tb-cat-reviews select, .tb-cat-reviews button { font: inherit !important; }

.tb-reviews { --tb-page-bg: #fff; --tb-card-bg: #efefef; --tb-color-text: #232323; --tb-color-border: #e0e0e0; --tb-radius: 15px; --tb-pill-radius: 50px; --tb-color-active: #232323; --tb-gold: #FFD700; color: var(--tb-color-text) !important; background: var(--tb-page-bg) !important; padding: 60px 0 !important; line-height: 1.5 !important; min-height: 500px !important; }
.tb-reviews h2, .tb-reviews h3, .tb-reviews h4 { color: var(--tb-color-active) !important; margin: 0 !important; font-weight: 600 !important; }
.tb-reviews p { margin: 0 0 12px 0 !important; font-size: 16px !important; color: #232323 !important; }
.tb-container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 20px !important; width: 100% !important; }
.tb-header { display: flex !important; flex-wrap: wrap !important; gap: 24px !important; align-items: stretch !important; margin-bottom: 40px !important; }
.tb-aggregate { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 8px !important; background: var(--tb-card-bg) !important; padding: 28px 24px !important; border-radius: var(--tb-radius) !important; flex: 1 !important; min-width: 240px !important; text-align: center !important; }
.tb-score-block { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 2px !important; flex-shrink: 0 !important; }
.tb-score-number { font-size: 52px !important; font-weight: 300 !important; color: var(--tb-color-active) !important; line-height: 1 !important; }
.tb-score-stars { font-size: 26px !important; color: var(--tb-gold) !important; line-height: 1 !important; letter-spacing: 3px !important; }
.tb-title-block { width: 100% !important; margin-top: 6px !important; }
.tb-title-block p { text-align: center !important; font-size: 15px !important; line-height: 1.4 !important; opacity: .85 !important; margin: 0 !important; word-wrap: break-word !important; overflow-wrap: break-word !important; }
.tb-histogram { background: var(--tb-card-bg) !important; border-radius: var(--tb-radius) !important; padding: 20px 24px !important; flex: 1 !important; min-width: 280px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; }
.tb-hist-row { display: flex !important; align-items: center !important; gap: 12px !important; margin-bottom: 10px !important; }
.tb-hist-row:last-child { margin-bottom: 0 !important; }
.tb-hist-label { font-size: 14px !important; font-weight: 600 !important; width: 32px !important; flex-shrink: 0 !important; color: var(--tb-color-active) !important; }
.tb-hist-bar { flex: 1 !important; height: 10px !important; background: #ddd !important; border-radius: 5px !important; overflow: hidden !important; }
.tb-hist-fill { height: 100% !important; background: var(--tb-color-active) !important; border-radius: 5px !important; transition: width .4s ease !important; }
.tb-hist-percent { font-size: 13px !important; color: #666 !important; width: 36px !important; text-align: right !important; flex-shrink: 0 !important; }
.tb-section-title { font-size: 40px !important; margin-bottom: 48px !important; margin-top: 10px !important; text-align: left !important; }
.tb-section-block { margin-bottom: 100px !important; }
.tb-controls { display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: center !important; gap: 16px !important; margin-bottom: 28px !important; }
.tb-tabs { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; }
.tb-tab { background: var(--tb-card-bg) !important; border: 1px solid transparent !important; padding: 3px 8px !important; border-radius: var(--tb-pill-radius) !important; cursor: pointer !important; font-size: 10px !important; font-weight: 400 !important; transition: all .2s ease !important; color: var(--tb-color-text) !important; white-space: nowrap !important; flex-shrink: 0 !important; }
.tb-tab:hover { background: #e5e5e5 !important; }
.tb-tab--active { background: var(--tb-color-active) !important; color: #fff !important; border-color: var(--tb-color-active) !important; font-weight: 600 !important; }
.tb-tab--active:hover { background: #fff !important; color: var(--tb-color-active) !important; border-color: var(--tb-color-active) !important; }
.tb-controls-right { display: flex !important; gap: 12px !important; align-items: center !important; flex-wrap: wrap !important; flex: 1 !important; justify-content: flex-end !important; }
.tb-search-input { flex: 1 !important; min-width: 150px !important; max-width: 240px !important; appearance: none !important; background: #fff !important; border: 1px solid var(--tb-color-border) !important; padding: 9px 14px !important; border-radius: var(--tb-radius) !important; font-size: 14px !important; transition: border-color .2s !important; }
.tb-search-input:focus { outline: none !important; border-color: var(--tb-color-active) !important; }
.tb-sort-select { appearance: none !important; background: #fff url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3e%3cpolyline points="6 9 12 15 18 9"%3e%3c/polyline%3e%3c/svg%3e') no-repeat right 12px center !important; background-size: 14px !important; border: 1px solid var(--tb-color-border) !important; padding: 9px 32px 9px 12px !important; border-radius: var(--tb-radius) !important; font-size: 14px !important; cursor: pointer !important; }
.tb-carousel-viewport { overflow: hidden !important; position: relative !important; width: 100% !important; }
.tb-carousel-track { display: flex !important; transition: transform .5s cubic-bezier(.4,0,.2,1) !important; will-change: transform !important; }
.tb-carousel-slide { flex: 0 0 100% !important; max-width: 100% !important; padding: 0 16px !important; }
.tb-carousel-nav { display: flex !important; justify-content: flex-start !important; gap: 14px !important; margin-top: 24px !important; }
.tb-carousel-btn { width: 46px !important; height: 46px !important; border-radius: 50% !important; background: var(--tb-color-active) !important; color: #fff !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: opacity .2s !important; flex-shrink: 0 !important; }
.tb-carousel-btn:hover { opacity: .85 !important; }
.tb-carousel-btn:disabled { opacity: .4 !important; cursor: not-allowed !important; }
.tb-carousel-btn svg { width: 22px !important; height: 22px !important; fill: currentColor !important; }
.tb-grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important; gap: 24px !important; margin-bottom: 32px !important; }
.tb-empty { text-align: center !important; padding: 40px !important; color: #888 !important; font-size: 16px !important; grid-column: 1 / -1 !important; }
.tb-pagination { display: flex !important; justify-content: center !important; align-items: center !important; gap: 10px !important; margin-top: 32px !important; flex-wrap: wrap !important; }
.tb-page-btn { width: 40px !important; height: 40px !important; border-radius: 50% !important; background: var(--tb-card-bg) !important; border: none !important; font-size: 14px !important; font-weight: 600 !important; cursor: pointer !important; transition: all .2s ease !important; color: var(--tb-color-text) !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.tb-page-btn:hover { background: #ddd !important; }
.tb-page-btn--active { background: var(--tb-color-active) !important; color: #fff !important; }
.tb-page-btn:disabled { opacity: .3 !important; cursor: not-allowed !important; }
.tb-page-dots { color: #999 !important; font-size: 14px !important; padding: 0 4px !important; }
.tb-page-info { font-size: 13px !important; color: #888 !important; width: 100% !important; text-align: center !important; margin-top: 8px !important; }
.tb-card { background: var(--tb-card-bg) !important; border-radius: var(--tb-radius) !important; padding: 24px !important; height: 100% !important; display: flex !important; flex-direction: column !important; position: relative !important; transition: transform .2s ease, box-shadow .2s ease !important; }
.tb-card:hover { transform: translateY(-3px) !important; box-shadow: 0 10px 24px rgba(0,0,0,.06) !important; }
.tb-card-header { display: flex !important; gap: 14px !important; margin-bottom: 16px !important; }
.tb-avatar { width: 44px !important; height: 44px !important; background: #fff !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-weight: 700 !important; font-size: 16px !important; color: var(--tb-color-active) !important; flex-shrink: 0 !important; }
.tb-card-info { flex: 1 !important; min-width: 0 !important; }
.tb-card-name { font-size: 20px !important; margin: 0 0 4px 0 !important; font-weight: 600 !important; line-height: 1.3 !important; color: #232323 !important; }
.tb-card-date { font-size: 14px !important; color: #777 !important; margin: 0 !important; }
.tb-card-source { display: inline-flex !important; align-items: center !important; gap: 5px !important; font-size: 13px !important; color: #666 !important; text-decoration: none !important; margin-top: 6px !important; transition: color .2s !important; font-weight: 500 !important; }
.tb-card-source:hover { color: var(--tb-color-active) !important; text-decoration: underline !important; }
.tb-card-source svg { width: 11px !important; height: 11px !important; flex-shrink: 0 !important; }
.tb-card-tag { display: inline-block !important; background: #fff !important; padding: 5px 11px !important; border-radius: 7px !important; font-size: 13px !important; font-weight: 600 !important; color: #555 !important; margin-bottom: 14px !important; text-transform: uppercase !important; letter-spacing: .3px !important; }
.tb-card-tag a { color: inherit !important; text-decoration: none !important; }
.tb-card-tag a:hover { text-decoration: underline !important; }
.tb-card-body { flex: 1 !important; margin-bottom: 14px !important; position: relative !important; }
.tb-card-text { position: relative !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; line-height: 1.6 !important; transition: all .3s ease !important; font-size: 16px !important; color: #232323 !important; }
.tb-card-text::after { content: '' !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 1.6em !important; background: linear-gradient(to bottom, rgba(239,239,239,0), rgba(239,239,239,1)) !important; pointer-events: none !important; opacity: 0 !important; transition: opacity .3s ease !important; }
.tb-toggle-btn { background: none !important; border: none !important; color: var(--tb-color-active) !important; font-size: 15px !important; font-weight: 700 !important; cursor: pointer !important; padding: 6px 0 !important; margin-top: 8px !important; text-align: right !important; width: 100% !important; transition: text-decoration .2s !important; display: none !important; }
.tb-toggle-btn:hover { text-decoration: underline !important; }
.tb-card--truncated .tb-card-text::after { opacity: 1 !important; }
.tb-card--truncated .tb-toggle-btn { display: block !important; }
.tb-card--truncated .tb-card-text.expanded { -webkit-line-clamp: unset !important; -webkit-box-orient: horizontal !important; display: block !important; }
.tb-card--truncated .tb-card-text.expanded::after { opacity: 0 !important; }
.tb-card-rating { color: var(--tb-gold) !important; margin-top: 6px !important; line-height: 1 !important; font-size: 16px !important; letter-spacing: 2px !important; }
.tb-card-gallery { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(80px, 1fr)) !important; gap: 8px !important; margin-bottom: 16px !important; }
.tb-card-gallery img { width: 100% !important; aspect-ratio: 4/3 !important; object-fit: cover !important; border-radius: 8px !important; cursor: pointer !important; border: 2px solid #fff !important; transition: opacity .2s !important; }
.tb-card-gallery img:hover { opacity: .85 !important; }
.tb-card-support { background: #fff !important; border-left: 3px solid var(--tb-color-active) !important; padding: 12px 14px !important; margin-top: auto !important; border-radius: 0 8px 8px 0 !important; }
.tb-support-label { font-size: 12px !important; font-weight: 700 !important; text-transform: uppercase !important; color: #888 !important; margin-bottom: 5px !important; }
.tb-support-msg { font-size: 15px !important; line-height: 1.5 !important; color: #444 !important; margin: 0 !important; }
.tb-modal { position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; background: rgba(0,0,0,.6) !important; z-index: 4000 !important; display: none !important; align-items: center !important; justify-content: center !important; padding: 20px !important; }
.tb-modal-content { background: #fff !important; border-radius: var(--tb-radius) !important; max-width: 650px !important; width: 100% !important; max-height: 90vh !important; overflow-y: auto !important; padding: 32px !important; position: relative !important; }
.tb-modal-close { position: absolute !important; top: 16px !important; right: 16px !important; background: #eee !important; border: none !important; width: 34px !important; height: 34px !important; border-radius: 50% !important; cursor: pointer !important; font-size: 20px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
.tb-lightbox { position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; background: rgba(0,0,0,.9) !important; z-index: 5000 !important; display: none !important; align-items: center !important; justify-content: center !important; }
.tb-lightbox img { max-width: 90% !important; max-height: 90vh !important; border-radius: 8px !important; }
.tb-lightbox-close { position: absolute !important; top: 20px !important; right: 20px !important; background: transparent !important; border: none !important; color: #fff !important; font-size: 34px !important; cursor: pointer !important; }

.tb-reviews-home { --tb-home-bg: #fff; --tb-home-card: #efefef; --tb-home-text: #232323; --tb-home-active: #232323; --tb-home-gold: #FFD700; --tb-home-radius: 15px; color: var(--tb-home-text) !important; background: var(--tb-home-bg) !important; padding: 50px 0 !important; }
.tb-reviews-home h2 { font-size: 40px !important; font-weight: 600 !important; color: var(--tb-home-active) !important; margin: 0 0 32px 0 !important; line-height: 1.2 !important; }
.tb-reviews-home h4 { font-size: 20px !important; font-weight: 600 !important; color: var(--tb-home-active) !important; margin: 0 !important; line-height: 1.3 !important; }
.tb-reviews-home p { font-size: 16px !important; margin: 0 !important; line-height: 1.5 !important; color: #232323 !important; }
.tb-home-container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 20px !important; width: 100% !important; }
.tb-home-header { display: flex !important; flex-wrap: wrap !important; gap: 20px !important; align-items: stretch !important; margin-bottom: 36px !important; }
.tb-home-aggregate { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 4px !important; background: var(--tb-home-card) !important; padding: 24px 20px !important; border-radius: var(--tb-home-radius) !important; flex: 1 !important; min-width: 220px !important; text-align: center !important; }
.tb-home-score-block { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 2px !important; flex-shrink: 0 !important; }
.tb-home-score-number { font-size: 48px !important; font-weight: 300 !important; color: var(--tb-home-active) !important; line-height: 1 !important; }
.tb-home-score-stars { font-size: 22px !important; color: var(--tb-home-gold) !important; line-height: 1 !important; letter-spacing: 2px !important; }
.tb-home-title-block { width: 100% !important; margin-top: 6px !important; }
.tb-home-title-block p { font-size: 14px !important; opacity: .85 !important; margin: 0 !important; line-height: 1.35 !important; }
.tb-home-histogram { background: var(--tb-home-card) !important; border-radius: var(--tb-home-radius) !important; padding: 20px 24px !important; flex: 1 !important; min-width: 260px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; }
.tb-home-hist-row { display: flex !important; align-items: center !important; gap: 10px !important; margin-bottom: 8px !important; }
.tb-home-hist-row:last-child { margin-bottom: 0 !important; }
.tb-home-hist-label { font-size: 13px !important; font-weight: 600 !important; width: 28px !important; flex-shrink: 0 !important; color: var(--tb-home-active) !important; }
.tb-home-hist-bar { flex: 1 !important; height: 8px !important; background: #ddd !important; border-radius: 4px !important; overflow: hidden !important; }
.tb-home-hist-fill { height: 100% !important; background: var(--tb-home-active) !important; border-radius: 4px !important; transition: width .4s ease !important; }
.tb-home-hist-percent { font-size: 12px !important; color: #666 !important; width: 32px !important; text-align: right !important; flex-shrink: 0 !important; }
.tb-home-link-wrapper { display: flex !important; align-items: center !important; justify-content: flex-end !important; flex-shrink: 0 !important; min-width: 140px !important; }
.tb-home-link { font-size: 14px !important; font-weight: 600 !important; color: var(--tb-home-active) !important; text-decoration: none !important; border-bottom: 1px solid transparent !important; transition: border-color .2s !important; white-space: nowrap !important; }
.tb-home-link:hover { border-bottom-color: var(--tb-home-active) !important; }
.tb-home-carousel-viewport { overflow: hidden !important; position: relative !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.tb-home-carousel-track { display: flex !important; flex-wrap: nowrap !important; transition: transform .5s cubic-bezier(.4,0,.2,1) !important; will-change: transform !important; }
.tb-home-carousel-slide { flex: 0 0 auto !important; width: 100% !important; padding: 0 12px !important; }
.tb-home-carousel-nav { display: flex !important; justify-content: flex-start !important; gap: 12px !important; margin-top: 24px !important; }
.tb-home-carousel-btn { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: var(--tb-home-active) !important; color: #fff !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: opacity .2s !important; flex-shrink: 0 !important; }
.tb-home-carousel-btn:hover { opacity: .85 !important; }
.tb-home-carousel-btn:disabled { opacity: .35 !important; cursor: not-allowed !important; }
.tb-home-carousel-btn svg { width: 20px !important; height: 20px !important; fill: currentColor !important; }
.tb-home-card { background: var(--tb-home-card) !important; border-radius: var(--tb-home-radius) !important; padding: 22px !important; height: 100% !important; display: flex !important; flex-direction: column !important; position: relative !important; transition: transform .2s, box-shadow .2s !important; }
.tb-home-card:hover { transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(0,0,0,.05) !important; }
.tb-home-card-header { display: flex !important; gap: 12px !important; margin-bottom: 14px !important; }
.tb-home-avatar { width: 40px !important; height: 40px !important; background: #fff !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-weight: 700 !important; font-size: 15px !important; color: var(--tb-home-active) !important; flex-shrink: 0 !important; }
.tb-home-card-info { flex: 1 !important; min-width: 0 !important; }
.tb-home-card-name { font-size: 20px !important; margin: 0 0 4px 0 !important; font-weight: 600 !important; line-height: 1.3 !important; color: #232323 !important; }
.tb-home-card-date { font-size: 14px !important; color: #777 !important; margin: 0 !important; }
.tb-home-source { display: inline-block !important; font-size: 13px !important; color: #666 !important; margin-top: 5px !important; text-decoration: none !important; font-weight: 500 !important; }
.tb-home-source:hover { text-decoration: underline !important; }
.tb-home-card-tag { display: inline-block !important; background: #fff !important; padding: 4px 10px !important; border-radius: 6px !important; font-size: 13px !important; font-weight: 600 !important; color: #555 !important; margin-bottom: 12px !important; text-transform: uppercase !important; letter-spacing: .3px !important; }
.tb-home-card-tag a { color: inherit !important; text-decoration: none !important; }
.tb-home-card-tag a:hover { text-decoration: underline !important; }
.tb-home-card-body { flex: 1 !important; margin-bottom: 12px !important; position: relative !important; }
.tb-home-card-text { position: relative !important; display: -webkit-box !important; -webkit-line-clamp: 4 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; line-height: 1.55 !important; transition: all .3s !important; font-size: 16px !important; color: #232323 !important; }
.tb-home-card-text::after { content: '' !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 1.55em !important; background: linear-gradient(to bottom, rgba(239,239,239,0), rgba(239,239,239,1)) !important; pointer-events: none !important; opacity: 0 !important; transition: opacity .3s !important; }
.tb-home-toggle-btn { background: none !important; border: none !important; color: var(--tb-home-active) !important; font-size: 15px !important; font-weight: 700 !important; cursor: pointer !important; padding: 4px 0 !important; margin-top: 6px !important; text-align: right !important; width: 100% !important; display: none !important; }
.tb-home-toggle-btn:hover { text-decoration: underline !important; }
.tb-home-card--truncated .tb-home-card-text::after { opacity: 1 !important; }
.tb-home-card--truncated .tb-home-toggle-btn { display: block !important; }
.tb-home-card--truncated .tb-home-card-text.expanded { -webkit-line-clamp: unset !important; display: block !important; }
.tb-home-card--truncated .tb-home-card-text.expanded::after { opacity: 0 !important; }
.tb-home-card-rating { color: var(--tb-home-gold) !important; margin-top: 5px !important; line-height: 1 !important; font-size: 16px !important; letter-spacing: 1.5px !important; }
.tb-home-gallery { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)) !important; gap: 6px !important; margin-bottom: 12px !important; }
.tb-home-gallery img { width: 100% !important; aspect-ratio: 4/3 !important; object-fit: cover !important; border-radius: 6px !important; cursor: pointer !important; border: 2px solid #fff !important; transition: opacity .2s !important; }
.tb-home-gallery img:hover { opacity: .85 !important; }

.tb-cat-reviews { --tb-cat-bg: #fff; --tb-cat-card: #efefef; --tb-cat-text: #232323; --tb-cat-active: #232323; --tb-cat-gold: #FFD700; --tb-cat-radius: 15px; color: var(--tb-cat-text) !important; background: var(--tb-cat-bg) !important; padding: 50px 0 !important; }
.tb-cat-reviews h2 { font-size: 40px !important; font-weight: 600 !important; color: var(--tb-cat-active) !important; margin: 0 0 32px 0 !important; line-height: 1.2 !important; }
.tb-cat-reviews h4 { font-size: 20px !important; font-weight: 600 !important; color: var(--tb-cat-active) !important; margin: 0 !important; line-height: 1.3 !important; }
.tb-cat-reviews p { font-size: 16px !important; margin: 0 !important; line-height: 1.55 !important; color: #232323 !important; }
.tb-cat-container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 20px !important; width: 100% !important; }
.tb-cat-header { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 28px !important; flex-wrap: wrap !important; gap: 12px !important; }
.tb-cat-link { font-size: 15px !important; font-weight: 600 !important; color: var(--tb-cat-active) !important; text-decoration: none !important; border-bottom: 1px solid transparent !important; transition: border-color .2s !important; }
.tb-cat-link:hover { border-bottom-color: var(--tb-cat-active) !important; }
.tb-cat-carousel-viewport { overflow: hidden !important; position: relative !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.tb-cat-carousel-track { display: flex !important; flex-wrap: nowrap !important; transition: transform .5s cubic-bezier(.4,0,.2,1) !important; will-change: transform !important; }
.tb-cat-carousel-slide { flex: 0 0 auto !important; width: 100% !important; padding: 0 16px !important; }
.tb-cat-carousel-nav { display: flex !important; gap: 12px !important; margin-top: 24px !important; }
.tb-cat-carousel-btn { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: var(--tb-cat-active) !important; color: #fff !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: opacity .2s !important; }
.tb-cat-carousel-btn:hover { opacity: .85 !important; }
.tb-cat-carousel-btn:disabled { opacity: .35 !important; cursor: not-allowed !important; }
.tb-cat-carousel-btn svg { width: 20px !important; height: 20px !important; fill: currentColor !important; }
.tb-cat-card { background: var(--tb-cat-card) !important; border-radius: var(--tb-cat-radius) !important; padding: 24px !important; height: 100% !important; display: flex !important; flex-direction: column !important; position: relative !important; transition: transform .2s, box-shadow .2s !important; }
.tb-cat-card:hover { transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(0,0,0,.05) !important; }
.tb-cat-card-header { display: flex !important; gap: 12px !important; margin-bottom: 14px !important; }
.tb-cat-avatar { width: 42px !important; height: 42px !important; background: #fff !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-weight: 700 !important; font-size: 16px !important; color: var(--tb-cat-active) !important; flex-shrink: 0 !important; }
.tb-cat-card-info { flex: 1 !important; min-width: 0 !important; }
.tb-cat-card-name { font-size: 20px !important; margin: 0 0 4px 0 !important; font-weight: 600 !important; color: #232323 !important; }
.tb-cat-card-date { font-size: 14px !important; color: #777 !important; margin: 0 !important; }
.tb-cat-card-tag { display: inline-block !important; background: #fff !important; padding: 5px 11px !important; border-radius: 7px !important; font-size: 13px !important; font-weight: 600 !important; color: #555 !important; margin-bottom: 14px !important; text-transform: uppercase !important; letter-spacing: .3px !important; }
.tb-cat-card-tag a { color: inherit !important; text-decoration: none !important; }
.tb-cat-card-tag a:hover { text-decoration: underline !important; }
.tb-cat-card-body { flex: 1 !important; margin-bottom: 12px !important; position: relative !important; }
.tb-cat-card-text { position: relative !important; display: -webkit-box !important; -webkit-line-clamp: 6 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; line-height: 1.55 !important; transition: all .3s !important; font-size: 16px !important; margin: 0 !important; color: #232323 !important; }
.tb-cat-card-text::after { content: '' !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 1.8em !important; background: linear-gradient(to bottom, rgba(239,239,239,0), rgba(239,239,239,1)) !important; pointer-events: none !important; opacity: 0 !important; transition: opacity .3s ease !important; }
.tb-cat-toggle-btn { background: none !important; border: none !important; color: var(--tb-cat-active) !important; font-size: 15px !important; font-weight: 700 !important; cursor: pointer !important; padding: 4px 0 !important; margin-top: 8px !important; text-align: right !important; width: 100% !important; display: none !important; }
.tb-cat-toggle-btn:hover { text-decoration: underline !important; }
.tb-cat-card--truncated .tb-cat-card-text::after { opacity: 1 !important; }
.tb-cat-card--truncated .tb-cat-toggle-btn { display: block !important; }
.tb-cat-card--truncated .tb-cat-card-text.expanded { -webkit-line-clamp: unset !important; display: block !important; }
.tb-cat-card--truncated .tb-cat-card-text.expanded::after { opacity: 0 !important; }
.tb-cat-card-rating { color: var(--tb-cat-gold) !important; margin-top: 5px !important; line-height: 1 !important; font-size: 16px !important; letter-spacing: 1.5px !important; }
.tb-cat-gallery { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)) !important; gap: 6px !important; margin-bottom: 12px !important; }
.tb-cat-gallery img { width: 100% !important; aspect-ratio: 4/3 !important; object-fit: cover !important; border-radius: 6px !important; cursor: pointer !important; border: 2px solid #fff !important; transition: opacity .2s !important; }
.tb-cat-gallery img:hover { opacity: .85 !important; }

/* ==========================================
   7. ТАБЫ/ЧИПСЫ КАТАЛОГА: СВАЙП + РАЗМЫТИЕ КРАЕВ
   ========================================== */


/* ==========================================
   8. ГЛОБАЛЬНАЯ МОБИЛЬНАЯ АДАПТАЦИЯ (БЕЗОПАСНАЯ)
   ========================================== */
@media (max-width: 1024px) {
  .treebed-about .cards-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .treebed-about .process-gallery { grid-template-columns: repeat(2, 1fr) !important; }
}

@media (max-width: 960px) {
  .treebed-delivery-wrapper { padding: 0 20px !important; }
  .tb-advantages-box .container { padding: 0 20px !important; }
}

@media (min-width: 961px) {
  .t-catalog__chosen-filter__wrapper { overflow: visible !important; padding: 0 !important; -webkit-mask-image: none !important; mask-image: none !important; flex-wrap: wrap !important; }
  .t-catalog__chosen-filter__wrapper::-webkit-scrollbar { display: none !important; }
  .t-catalog__chosen-filter__items { flex-wrap: wrap !important; }
  .desktop-cart-float { display: flex !important; }
  .uc-back-wrapper { top: 82px !important; left: 70px !important; }
}

@media (max-width: 959px) {
  body { padding-top: 72px !important; }
  .header-container { height: 72px !important; padding: 0 16px !important; }
  .header-logo { height: 28px !important; }
  .header-left { gap: 0 !important; }
  .btn-square, .icon-btn { width: 44px !important; height: 44px !important; }
  .btn-square .icon-svg, .icon-btn .icon-svg { width: 22px !important; height: 22px !important; }
  .header-right, .header-nav, .header-socials, .phone-btn, .contacts-btn, #desktop-search-btn, #desktop-cart-btn { display: none !important; }
  .mobile-actions { display: flex !important; align-items: center !important; gap: 8px !important; }
  .t-records { padding-bottom: calc(68px + env(safe-area-inset-bottom)) !important; }
  .scroll-top-btn { bottom: calc(68px + env(safe-area-inset-bottom) + 12px) !important; left: 16px !important; }
  .uc-back-wrapper { top: 84px !important; left: 16px !important; }
  .uc-back-wrapper.header-sync-hidden { top: -60px !important; }
  .site-footer { padding: 50px 0 120px !important; }
  .footer-container { padding: 0 16px !important; }
  .footer-top { grid-template-columns: 1fr !important; gap: 40px !important; }
  .footer-brand { align-items: flex-start !important; text-align: left !important; }
  .footer-brand .footer-logo-img { max-width: 160px !important; margin: 0 0 20px 0 !important; display: block !important; }
  .footer-contacts { align-items: flex-start !important; }
  .footer-socials { justify-content: flex-start !important; }
  .footer-column h4 { text-align: left !important; }
  .footer-links { align-items: flex-start !important; }
  .footer-extras { align-items: flex-start !important; text-align: left !important; }
  .footer-rating-block { width: 100% !important; margin: 0 0 25px 0 !important; }
  .footer-features { width: 100% !important; }
  .footer-feature { flex-direction: row !important; align-items: flex-start !important; text-align: left !important; gap: 12px !important; }
  .footer-bottom { flex-direction: column !important; text-align: center !important; align-items: center !important; justify-content: center !important; padding-top: 20px !important; }
  .footer-legal { flex-direction: column !important; gap: 10px !important; align-items: center !important; }
  #bottom-nav { display: flex !important; }
  .mobile-actions, #mobile-search-btn, #mobile-hamburger-btn { display: flex !important; }
}

@media (min-width: 960px) {
  #bottom-nav { display: none !important; }
  .custom-filter-btn { display: none !important; }
  .mobile-actions, #mobile-search-btn, #mobile-hamburger-btn { display: none !important; }
  .scroll-top-btn { bottom: 24px !important; left: 24px !important; }
}

@media (max-width: 900px) {
  .tb-controls { flex-direction: column !important; align-items: stretch !important; }
  .tb-controls-right { width: 100% !important; justify-content: space-between !important; }
  .tb-search-input { max-width: 100% !important; flex: 1 !important; }
  .tb-home-header { flex-direction: column !important; }
  .tb-home-aggregate, .tb-home-histogram { min-width: 100% !important; }
  .tb-home-link-wrapper { justify-content: flex-start !important; }
  .tb-cat-header { flex-direction: column !important; align-items: flex-start !important; }
}

@media (max-width: 768px) {
  .treebed-about { padding: 30px 15px 0 !important; }
  .treebed-about .section h2 { font-size: 28px !important; }
  .treebed-about .intro, .treebed-about .section-intro { font-size: 16px !important; }
  .treebed-about .cards-grid { grid-template-columns: 1fr !important; }
  .treebed-about .process-block { flex-direction: column !important; gap: 24px !important; }
  .treebed-about .process-text, .treebed-about .process-img { width: 100% !important; min-width: 100% !important; flex: none !important; }
  .treebed-about .process-img { order: 1 !important; height: 240px !important; }
  .treebed-about .process-text { order: 2 !important; }
  .treebed-about .process-gallery { grid-template-columns: repeat(2, 1fr) !important; }
  .treebed-about .materials { grid-template-columns: 1fr !important; }
  .treebed-delivery .card { padding: 24px !important; margin-bottom: 20px !important; }
  .treebed-delivery h2 { font-size: 28px !important; margin-bottom: 16px !important; }
  .treebed-delivery h3 { font-size: 18px !important; margin-top: 24px !important; }
  .treebed-delivery th, .treebed-delivery td { padding: 10px 12px !important; font-size: 14px !important; }
  .treebed-delivery p, .treebed-delivery li { font-size: 15px !important; }
  .treebed-contacts-section { padding: 20px 15px 40px !important; }
  .treebed-contacts-section .card { padding: 32px 20px !important; }
  .treebed-contacts-section h2 { font-size: 28px !important; }
  .treebed-contacts-section .subtitle { font-size: 16px !important; margin-bottom: 24px !important; }
  .icon-row { gap: 12px !important; }
  .icon-btn { width: 44px !important; height: 44px !important; }
  .icon-btn svg { width: 18px !important; height: 18px !important; }
  .treebed-contacts-section .requisites { grid-template-columns: 1fr !important; gap: 16px !important; text-align: center !important; }
  .tb-cta-black { padding: 60px 0 !important; }
  .tb-cta-black h2 { font-size: 32px !important; }
  .tb-cta-black .subtitle { font-size: 16px !important; }
  .tb-cta-black .buttons { flex-direction: column !important; align-items: stretch !important; }
  .tb-cta-black .btn { width: 100% !important; max-width: 100% !important; }
  .tb-advantages-box { padding: 60px 0 !important; }
  .tb-advantages-box .title { font-size: 32px !important; margin-bottom: 40px !important; }
  .tb-advantages-box .grid { grid-template-columns: 1fr !important; }
  .tb-advantages-box .card { padding: 24px !important; }
  .tb-container { padding: 0 16px !important; }
  .tb-header { flex-direction: column !important; }
  .tb-aggregate, .tb-histogram { min-width: 100% !important; }
  .tb-section-title { font-size: 28px !important; margin-bottom: 36px !important; }
  .tb-grid { grid-template-columns: 1fr !important; }
  .tb-carousel-slide { padding: 0 16px !important; }
  .tb-controls-right { flex-direction: column !important; align-items: stretch !important; }
  .tb-search-input, .tb-sort-select { width: 100% !important; max-width: 100% !important; }
  .tb-score-number { font-size: 42px !important; }
  .tb-score-stars { font-size: 22px !important; }
  .tb-card-gallery { grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)) !important; }
  .tb-card-name { font-size: 18px !important; }
  .tb-home-container { padding: 0 16px !important; }
  .tb-reviews-home h2 { font-size: 28px !important; margin-bottom: 24px !important; }
  .tb-home-carousel-slide { padding: 0 12px !important; }
  .tb-home-card { padding: 18px !important; }
  .tb-home-score-number { font-size: 38px !important; }
  .tb-home-score-stars { font-size: 20px !important; }
  .tb-home-card-name { font-size: 18px !important; }
  .tb-home-gallery { grid-template-columns: repeat(auto-fit, minmax(65px, 1fr)) !important; }
  .tb-cat-container { padding: 0 16px !important; }
  .tb-cat-reviews h2 { font-size: 28px !important; margin-bottom: 24px !important; }
  .tb-cat-carousel-slide { padding: 0 12px !important; }
  .tb-cat-card { padding: 20px !important; }
  .tb-cat-card-name { font-size: 18px !important; }
  .tb-cat-gallery { grid-template-columns: repeat(auto-fit, minmax(65px, 1fr)) !important; }
  .cookie-banner { left: 12px !important; right: 12px !important; bottom: calc(68px + env(safe-area-inset-bottom) + 66px) !important; }
}

@media (min-width: 768px) {
  .tb-carousel-slide { flex: 0 0 50% !important; max-width: 50% !important; padding: 0 20px !important; }
  .tb-home-carousel-slide { width: 50% !important; padding: 0 16px !important; }
  .tb-cat-carousel-slide { width: 50% !important; padding: 0 20px !important; }
  .tb-card--no-photos .tb-card-text { -webkit-line-clamp: 9 !important; }
  .tb-home-card--no-photos .tb-home-card-text { -webkit-line-clamp: 9 !important; }
  .tb-cat-card--no-photos .tb-cat-card-text { -webkit-line-clamp: 9 !important; }
}

@media (min-width: 769px) {
  .cookie-banner { left: 50% !important; transform: translateX(-50%) translateY(120%) !important; bottom: 24px !important; max-width: 380px !important; }
  .cookie-banner.visible { transform: translateX(-50%) translateY(0) !important; }
}

@media (min-width: 1024px) {
  .tb-carousel-slide { flex: 0 0 33.333% !important; max-width: 33.333% !important; padding: 0 20px !important; }
  .tb-home-carousel-slide { width: 33.3333% !important; padding: 0 16px !important; }
  .tb-cat-carousel-slide { width: 33.3333% !important; padding: 0 20px !important; }
}

@media (max-width: 480px) {
  .treebed-about .process-gallery { grid-template-columns: 1fr !important; }
}

/* === ФИКС БЕЙДЖА РЕЙТИНГА В ФУТЕРЕ === */
.footer-rating-block {
  width: 100% !important;
  padding: 25px 20px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.yandex-rating-badge {
  display: inline-block !important;
  margin: 0 auto !important;
  text-align: center !important;
  line-height: 0 !important;
}

.yandex-rating-badge iframe {
  display: block !important;
  margin: 0 auto !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

@media (max-width: 959px) {
  .footer-rating-block { padding: 20px 15px !important; }
}

/* ==========================================
   ФИКС АСИММЕТРИЧНЫХ ОТСТУПОВ НА МОБИЛЬНЫХ (СТРОГО 16px СЛЕВА И СПРАВА)
   ========================================== */
@media (max-width: 959px) {
  /* 1. Жёстко задаём симметричные отступы вашим обёрткам */
  .treebed-about, .treebed-delivery-wrapper, .treebed-contacts-section,
  .tb-cta-black, .tb-advantages-box, [class*="treebed"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    float: none !important;
  }

  /* 2. Обнуляем внутренние отступы и смещения колонок Тильды ТОЛЬКО внутри ваших блоков */
  .treebed-about .t-container, .treebed-about .t-col,
  .tb-cta-black .t-container, .tb-cta-black .t-col,
  .treebed-contacts-section .t-container, .treebed-contacts-section .t-col,
  .tb-advantages-box .t-container, .tb-advantages-box .t-col,
  [class*="treebed"] .t-container, [class*="treebed"] .t-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* 3. Убираем двойные отступы у ваших внутренних .container */
  .tb-cta-black .container,
  .tb-advantages-box .container,
  .treebed-about .container,
  .treebed-delivery-wrapper .container,
  [class*="treebed"] .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* 4. Контейнеры кнопок: строгое центрирование, запрет выхода за край */
  .tb-cta-black .buttons,
  .treebed-contacts-section .icon-row,
  [class*="treebed"] .buttons,
  [class*="treebed"] .btn-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 12px !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  /* 5. Сами кнопки: корректное сжатие, перенос, запрет растягивания родителя */
  .tb-cta-black .btn,
  .treebed-contacts-section .icon-btn,
  [class*="treebed"] .btn,
  [class*="treebed"] button {
    max-width: 100% !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    word-break: break-word !important;
    margin: 0 !important;
  }
}
/* ==========================================
   ФИКС ЧИПСОВ/ТАБОВ НА ДЕСКТОПЕ (ОТКЛЮЧАЕМ СВАЙП И ОДИН РЯД)
   ========================================== */
@media (min-width: 960px) {
  /* 1. Сбрасываем свайп, маску и принудительную однострочность */
  .t-catalog__tabs__controls-wrap,
  .t-store__filter-tabs-wrap,
  .t-catalog__chosen-filter__wrapper {
    overflow: visible !important;
    overflow-x: visible !important;
    white-space: normal !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    padding: 0 0 20px 0 !important;
    margin: 0 auto 12px auto !important;
    display: block !important;
  }

  /* 2. Разрешаем перенос на новую строку и растягиваем на всю ширину */
  .t-catalog__tabs__controls,
  .t-store__filter-tabs,
  .t-catalog__chosen-filter__items {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 3. Сами чипсы: не растягиваются, сохраняют текст в одну строку */
  .t-catalog__tabs__button,
  .t-store__filter-tab,
  .t-catalog__chosen-filter__item {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
}