/* Homepage CSS — extracted from index.html */
    
    /* === Блок преимуществ (4 карточки) === */
    .ib-advantages {
      margin: 32px 0;
    }
    .ib-advantages .row {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
    }
    @media (max-width: 992px) {
      .ib-advantages .row {
        grid-template-columns: repeat(2, 1fr);
      }
    }
    @media (max-width: 576px) {
      .ib-advantages .row {
        grid-template-columns: 1fr;
      }
    }
    .ib-advantages .col-12 {
      max-width: 100%;
      flex: none;
      padding: 0;
    }
    .ib-adv {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 20px 24px;
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 16px;
      height: 100%;
      transition: all 0.2s;
    }
    .ib-adv:hover {
      border-color: #0d6b5c;
      box-shadow: 0 4px 16px rgba(13, 107, 92, 0.08);
    }
    .ib-adv__ico {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 100%);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 20px;
      flex-shrink: 0;
    }
    .ib-adv__t {
      font-weight: 700;
      font-size: 15px;
      color: #212529;
      margin-bottom: 2px;
    }
    .ib-adv__d {
      font-size: 13px;
      color: #6c757d;
    }
    
    /* === Hero секция === */
    .ib-hero {
      position: relative;
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 50%, #064038 100%);
      border-radius: 24px;
      padding: 48px 40px;
      color: #fff;
      overflow: hidden;
      min-height: 420px;
    }
    .ib-hero__bg {
      position: absolute;
      top: 0; right: 0; bottom: 0; left: 0;
      background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
      pointer-events: none;
    }
    .ib-hero__glow {
      position: absolute;
      top: -100px; right: -100px;
      width: 400px; height: 400px;
      background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
      pointer-events: none;
    }
    .ib-hero__content {
      position: relative;
      z-index: 1;
      max-width: 700px;
    }
    .ib-hero__badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255,255,255,0.15);
      padding: 8px 16px;
      border-radius: 50px;
      font-size: 13px;
      font-weight: 600;
      margin-bottom: 20px;
      backdrop-filter: blur(4px);
    }
    .ib-hero__badge i {
      font-size: 16px;
    }
    .ib-hero__title {
      font-size: 36px;
      font-weight: 800;
      line-height: 1.2;
      margin-bottom: 16px;
    }
    .ib-hero__sub {
      font-size: 17px;
      line-height: 1.6;
      opacity: 0.9;
      margin-bottom: 8px;
    }
    .ib-hero__actions {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 20px;
    }
    .ib-hero__btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 14px 28px;
      background: #fff;
      color: #0d6b5c;
      border-radius: 12px;
      font-weight: 700;
      font-size: 15px;
      text-decoration: none;
      transition: all 0.2s;
    }
    .ib-hero__btn:hover {
      background: #f8f9fa;
      color: #0a5549;
      text-decoration: none;
      transform: translateY(-2px);
    }
    .ib-hero__btn-outline {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 14px 28px;
      background: transparent;
      color: #fff;
      border: 2px solid rgba(255,255,255,0.4);
      border-radius: 12px;
      font-weight: 700;
      font-size: 15px;
      text-decoration: none;
      transition: all 0.2s;
    }
    .ib-hero__btn-outline:hover {
      background: rgba(255,255,255,0.1);
      border-color: rgba(255,255,255,0.6);
      color: #fff;
      text-decoration: none;
    }
    .ib-hero__stats {
      display: flex;
      gap: 32px;
      margin-top: 32px;
      flex-wrap: wrap;
    }
    .ib-hero__stat {
      text-align: left;
    }
    .ib-hero__stat strong {
      display: block;
      font-size: 28px;
      font-weight: 800;
      color: #fff;
    }
    .ib-hero__stat span {
      font-size: 13px;
      opacity: 0.8;
    }
    @media (max-width: 768px) {
      .ib-hero {
        padding: 24px 12px;
        border-radius: 16px;
        min-height: auto;
      }
      .ib-hero__title {
        font-size: 22px;
      }
      .ib-hero__sub {
        font-size: 14px;
      }
      .ib-hero__stats {
        gap: 16px;
      }
      .ib-hero__stat strong {
        font-size: 20px;
      }
    }
    @media (max-width: 479px) {
      .ib-hero {
        padding: 20px 10px;
      }
      .ib-hero__title {
        font-size: 20px;
      }
    }
    
    /* === Quick-карточки === */
    .ib-quick {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 24px;
    }
    @media (max-width: 992px) {
      .ib-quick { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 576px) {
      .ib-quick { grid-template-columns: 1fr; }
    }
    .ib-quick-card {
      display: flex;
      align-items: flex-start;
      gap: 16px;
      padding: 24px;
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 16px;
      text-decoration: none;
      color: inherit;
      transition: all 0.2s;
    }
    .ib-quick-card:hover {
      border-color: #0d6b5c;
      box-shadow: 0 8px 24px rgba(13,107,92,0.1);
      text-decoration: none;
      color: inherit;
      transform: translateY(-2px);
    }
    .ib-quick-icon {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 100%);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 20px;
      flex-shrink: 0;
    }
    .ib-quick-title {
      font-weight: 700;
      font-size: 16px;
      color: #212529;
      margin-bottom: 4px;
    }
    .ib-quick-desc {
      font-size: 14px;
      color: #6c757d;
      margin-bottom: 8px;
    }
    .ib-quick-link {
      font-size: 14px;
      color: #0d6b5c;
      font-weight: 600;
    }
    
    /* === Заголовки секций === */
    .ib-section-title {
      font-weight: 800;
      color: #212529;
    }
    .ib-section-title--lg { font-size: 32px; }
    .ib-section-title--md { font-size: 26px; }
    .ib-section-title--sm { font-size: 22px; }
    .ib-section-subtitle {
      color: #6c757d;
      font-size: 15px;
    }
    @media (max-width: 768px) {
      .ib-section-title--lg { font-size: 24px; }
      .ib-section-title--md { font-size: 20px; }
      .ib-section-title--sm { font-size: 18px; }
    }
    
    /* === Карточки категорий === */
    .ib-category-card {
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 16px;
      padding: 20px;
      text-align: center;
      transition: all 0.2s;
      height: 100%;
    }
    .ib-category-card:hover {
      border-color: #0d6b5c;
      box-shadow: 0 8px 24px rgba(13,107,92,0.1);
    }
    .ib-category-name {
      font-weight: 700;
      font-size: 15px;
      color: #212529;
      margin-bottom: 12px;
    }
    .ib-category-img-wrapper {
      height: 120px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .ib-category-img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }
    
    /* === Карточки товаров === */
    .ib-product-card {
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 16px;
      overflow: hidden;
      transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
      height: 100%;
      will-change: transform;
    }
    .ib-product-card:hover {
      border-color: #0d6b5c;
      box-shadow: 0 12px 28px rgba(13,107,92,0.14);
      transform: translateY(-3px);
    }
    .ib-product-image-wrapper {
      height: 160px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #f8f9fa;
      padding: 12px;
    }
    .ib-product-image-wrapper img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }
    .ib-product-placeholder {
      width: 80px;
      height: 80px;
      background: #e9ecef;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #adb5bd;
      font-size: 24px;
    }
    .ib-product-title {
      font-weight: 600;
      font-size: 14px;
      color: #212529;
      padding: 12px;
      line-height: 1.4;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    .ib-product-price {
      font-weight: 700;
      font-size: 16px;
      color: #0d6b5c;
      padding: 0 12px 12px;
    }
    
    /* === Карусель === */
    .ib-carousel-btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 44px;
      height: 44px;
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #495057;
      cursor: pointer;
      transition: all 0.2s;
      z-index: 10;
      box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }
    .ib-carousel-btn:hover {
      background: #0d6b5c;
      border-color: #0d6b5c;
      color: #fff;
    }
    .ib-carousel-btn-prev { left: 0; }
    .ib-carousel-btn-next { right: 0; }
    
    /* === Feature карточки === */
    .ib-feature-card {
      background: #fff;
      border: 1px solid #e9ecef;
      border-radius: 16px;
      padding: 24px;
      height: 100%;
      text-align: center;
    }
    .ib-feature-icon {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 100%);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 20px;
      margin: 0 auto 16px;
    }
    .ib-feature-text {
      font-weight: 600;
      font-size: 14px;
      color: #212529;
      margin-bottom: 12px;
    }
    .ib-feature-link {
      font-size: 14px;
      color: #0d6b5c;
      font-weight: 600;
      text-decoration: none;
    }
    .ib-feature-link:hover {
      color: #0a5549;
      text-decoration: none;
    }
    
    /* === Legal карточка === */
    .ib-legal-card {
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 100%);
      color: #fff;
      border-radius: 16px;
      padding: 24px;
      height: 100%;
      position: relative;
      overflow: hidden;
    }
    .ib-legal-card h3 {
      color: #fff;
    }
    .ib-legal-card .fa-check {
      color: rgba(255,255,255,0.8);
    }
    .ib-legal-image {
      opacity: 0.15;
    }
    
    /* === CTA секция === */
    .ib-cta {
      background: linear-gradient(135deg, #0d6b5c 0%, #0a5549 100%);
      border-radius: 20px;
      padding: 40px;
      color: #fff;
    }
    .ib-cta__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      flex-wrap: wrap;
    }
    .ib-cta__title {
      font-size: 24px;
      font-weight: 800;
      margin-bottom: 8px;
    }
    .ib-cta__text {
      opacity: 0.9;
      margin-bottom: 0;
    }
    .ib-cta__btn {
      display: inline-flex;
      align-items: center;
      padding: 14px 28px;
      background: #fff;
      color: #0d6b5c;
      border-radius: 12px;
      font-weight: 700;
      text-decoration: none;
      transition: all 0.2s;
    }
    .ib-cta__btn:hover {
      background: #f8f9fa;
      color: #0a5549;
      text-decoration: none;
    }
    .ib-cta__btn--outline {
      background: transparent;
      color: #fff;
      border: 2px solid rgba(255,255,255,0.4);
    }
    .ib-cta__btn--outline:hover {
      background: rgba(255,255,255,0.1);
      border-color: rgba(255,255,255,0.6);
      color: #fff;
    }
    @media (max-width: 768px) {
      .ib-cta {
        padding: 28px 20px;
        text-align: center;
      }
      .ib-cta__inner {
        flex-direction: column;
        text-align: center;
      }
      .ib-cta__title {
        font-size: 20px;
      }
    }
    
    /* === Muted link === */
    .ib-muted-link {
      color: #0d6b5c;
      text-decoration: none;
    }
    .ib-muted-link:hover {
      color: #0a5549;
      text-decoration: none;
    }

    /* === Hero поиск по артикулу === */
    .ib-hero__search {
      margin: 24px 0;
      max-width: 600px;
    }
    .ib-hero__search-form {
      display: flex;
      gap: 0;
      background: #fff;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    }
    .ib-hero__search-input {
      flex: 1;
      border: none;
      padding: 16px 20px;
      font-size: 16px;
      outline: none;
      min-width: 0;
    }
    .ib-hero__search-input::placeholder {
      color: #adb5bd;
    }
    .ib-hero__search-btn {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 16px 24px;
      background: #0d6b5c;
      color: #fff;
      border: none;
      font-weight: 700;
      cursor: pointer;
      transition: background 0.2s;
    }
    .ib-hero__search-btn:hover {
      background: #0a5549;
    }
    .ib-hero__search-hints {
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
    }
    .ib-hero__search-hint-label {
      color: rgba(255,255,255,0.7);
      font-size: 13px;
    }
    .ib-hero__search-hint {
      display: inline-block;
      padding: 4px 12px;
      background: rgba(255,255,255,0.15);
      color: #fff;
      border-radius: 20px;
      font-size: 13px;
      text-decoration: none;
      transition: background 0.2s;
    }
    .ib-hero__search-hint:hover {
      background: rgba(255,255,255,0.25);
      color: #fff;
      text-decoration: none;
    }
    
    /* === Hero социальные доказательства === */
    .ib-hero__trust {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      margin-top: 20px;
      padding-top: 20px;
      border-top: 1px solid rgba(255,255,255,0.2);
    }
    .ib-hero__trust-item {
      display: flex;
      align-items: center;
      gap: 8px;
      color: rgba(255,255,255,0.85);
      font-size: 14px;
    }
    .ib-hero__trust-item i {
      color: #ffd700;
    }
    
    /* === Блок брендов === */
    .ib-brands-section {
      background: #f8f9fa;
      border-radius: 20px;
      padding: 40px 30px;
    }
    .ib-brands-grid {
      display: grid;
      grid-template-columns: repeat(8, 1fr);
      gap: 16px;
    }
    @media (max-width: 1200px) {
      .ib-brands-grid { grid-template-columns: repeat(4, 1fr); }
    }
    @media (max-width: 768px) {
      .ib-brands-grid { grid-template-columns: repeat(4, 1fr); gap: 12px; }
    }
    @media (max-width: 480px) {
      .ib-brands-grid { grid-template-columns: repeat(2, 1fr); }
    }
    .ib-brand-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 16px 12px;
      background: #fff;
      border-radius: 12px;
      border: 1px solid #e9ecef;
      transition: all 0.2s;
      cursor: default;
    }
    .ib-brand-item:hover {
      border-color: #0d6b5c;
      box-shadow: 0 4px 12px rgba(13,107,92,0.1);
    }
    .ib-brand-logo {
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 8px;
    }
    .ib-brand-logo img {
      max-height: 40px;
      max-width: 100%;
      object-fit: contain;
      filter: grayscale(100%);
      opacity: 0.7;
      transition: all 0.2s;
    }
    .ib-brand-item:hover .ib-brand-logo img {
      filter: grayscale(0%);
      opacity: 1;
    }
    .ib-brand-logo--text {
      font-weight: 800;
      font-size: 18px;
      color: #6c757d;
      transition: color 0.2s;
    }
    .ib-brand-item:hover .ib-brand-logo--text {
      color: #0d6b5c;
    }
    .ib-brand-name {
      font-size: 12px;
      color: #6c757d;
      text-align: center;
    }
    
    /* === Улучшенные карточки товаров === */
    .ib-product-card--enhanced {
      display: flex;
      flex-direction: column;
      height: 100%;
      padding-bottom: 12px;
    }
    .ib-product-sku {
      font-size: 11px;
      color: #6c757d;
      margin-bottom: 4px;
      padding: 0 12px;
    }
    .ib-product-stock {
      font-size: 12px;
      padding: 0 12px;
      margin-bottom: 8px;
      display: flex;
      align-items: center;
      gap: 4px;
    }
    .ib-product-stock--available {
      color: #198754;
    }
    .ib-product-stock--available i {
      color: #198754;
    }
    .ib-product-stock--order {
      color: #fd7e14;
    }
    .ib-product-stock--order i {
      color: #fd7e14;
    }
    .ib-product-form {
      padding: 0 12px;
      margin-top: auto;
    }
    .ib-product-cart-btn {
      width: 100%;
      padding: 8px 12px;
      background: #0d6b5c;
      color: #fff;
      border: none;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 600;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      transition: background 0.2s;
    }
    .ib-product-cart-btn:hover {
      background: #0a5549;
      transform: translateY(-1px);
      box-shadow: 0 4px 12px rgba(13,107,92,0.25);
    }
    
    /* === Блок "Как заказать" === */
    .ib-how-to-order {
      background: #fff;
      border-radius: 20px;
      padding: 40px 30px;
      border: 1px solid #e9ecef;
    }
    .ib-steps {
      display: flex;
      align-items: flex-start;
      justify-content: center;
      gap: 16px;
      flex-wrap: wrap;
    }
    .ib-step {
      flex: 1;
      min-width: 180px;
      max-width: 220px;
      text-align: center;
      padding: 20px;
      background: #f8f9fa;
      border-radius: 16px;
      position: relative;
    }
    .ib-step__number {
      position: absolute;
      top: -10px;
      left: 50%;
      transform: translateX(-50%);
      width: 28px;
      height: 28px;
      background: #0d6b5c;
      color: #fff;
      border-radius: 50%;
      font-weight: 700;
      font-size: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .ib-step__icon {
      width: 60px;
      height: 60px;
      background: #fff;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 10px auto 16px;
      font-size: 24px;
      color: #0d6b5c;
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }
    .ib-step__title {
      font-weight: 700;
      font-size: 15px;
      color: #212529;
      margin-bottom: 8px;
    }
    .ib-step__desc {
      font-size: 13px;
      color: #6c757d;
      line-height: 1.4;
    }
    .ib-step__arrow {
      display: flex;
      align-items: center;
      color: #dee2e6;
      font-size: 20px;
      padding-top: 60px;
    }
    @media (max-width: 992px) {
      .ib-step__arrow { display: none; }
      .ib-steps { gap: 20px; }
      .ib-step { min-width: 140px; }
    }
    @media (max-width: 576px) {
      .ib-step { min-width: 100%; max-width: 100%; }
    }
    
    /* === Блок отзывов === */
    .ib-partners-section {
      background: #f8f9fa;
      border-radius: 20px;
      padding: 40px 30px;
    }
    .ib-reviews-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    @media (max-width: 992px) {
      .ib-reviews-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 576px) {
      .ib-reviews-grid { grid-template-columns: 1fr; }
    }
    .ib-review-card {
      background: #fff;
      border-radius: 16px;
      padding: 24px;
      border: 1px solid #e9ecef;
    }
    .ib-review-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 12px;
    }
    .ib-review-avatar {
      width: 48px;
      height: 48px;
      background: #e9ecef;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #6c757d;
      font-size: 20px;
    }
    .ib-review-name {
      font-weight: 700;
      color: #212529;
      font-size: 15px;
    }
    .ib-review-company {
      font-size: 13px;
      color: #6c757d;
    }
    .ib-review-stars {
      margin-bottom: 12px;
      color: #ffc107;
      font-size: 14px;
    }
    .ib-review-stars i {
      margin-right: 2px;
    }
    .ib-review-text {
      font-size: 14px;
      color: #495057;
      line-height: 1.6;
      margin-bottom: 0;
      font-style: italic;
    }
    
    /* === Виджет мессенджеров === */
    .ib-messenger-widget {
      position: fixed;
      bottom: 24px;
      right: 24px;
      z-index: 1000;
    }
    .ib-messenger-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 60px;
      height: 60px;
      border-radius: 50%;
      color: #fff;
      text-decoration: none;
      box-shadow: 0 4px 20px rgba(0,0,0,0.2);
      transition: all 0.3s;
      position: relative;
    }
    .ib-messenger-btn:hover {
      transform: scale(1.1);
      text-decoration: none;
      color: #fff;
    }
    .ib-messenger-btn--whatsapp {
      background: #25d366;
    }
    .ib-messenger-btn--whatsapp:hover {
      background: #20bd5a;
    }
    .ib-messenger-tooltip {
      position: absolute;
      right: 70px;
      top: 50%;
      transform: translateY(-50%);
      background: #333;
      color: #fff;
      padding: 8px 14px;
      border-radius: 8px;
      font-size: 13px;
      white-space: nowrap;
      opacity: 0;
      visibility: hidden;
      transition: all 0.2s;
    }
    .ib-messenger-btn:hover .ib-messenger-tooltip {
      opacity: 1;
      visibility: visible;
    }
    @media (max-width: 768px) {
      .ib-messenger-widget {
        bottom: 16px;
        right: 16px;
      }
      .ib-messenger-btn {
        width: 56px;
        height: 56px;
      }
      .ib-messenger-tooltip { display: none; }
    }
    
    /* === Адаптив для Hero поиска === */
    @media (max-width: 768px) {
      .ib-hero__search {
        max-width: 100%;
      }
      .ib-hero__search-form {
        flex-direction: column;
        border-radius: 12px;
      }
      .ib-hero__search-input {
        border-radius: 12px 12px 0 0;
        padding: 14px 16px;
      }
      .ib-hero__search-btn {
        border-radius: 0 0 12px 12px;
        justify-content: center;
        padding: 12px 20px;
      }
      .ib-hero__search-hints {
        flex-wrap: wrap;
        gap: 8px;
        justify-content: flex-start;
      }
      .ib-hero__search-hint-label {
        width: 100%;
        margin-bottom: 2px;
      }
      .ib-hero__trust {
        justify-content: center;
        text-align: center;
      }
    }

/* ===== CAROUSEL SCROLL-SNAP ===== */
.ib-categories-carousel,
.ib-products-carousel {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 8px 0;
}
.ib-categories-carousel::-webkit-scrollbar,
.ib-products-carousel::-webkit-scrollbar {
  display: none;
}
.ib-categories-carousel > *,
.ib-products-carousel > * {
  scroll-snap-align: start;
}

/* ===== PRODUCT CARD LOADING STATE ===== */
.ib-product-cart-btn.is-loading .btn-text { display: none; }
.ib-product-cart-btn.is-loading .btn-loading { display: inline-flex !important; }
.ib-product-cart-btn.is-loading { opacity: 0.7; pointer-events: none; }

/* ===== PRODUCT PLACEHOLDER ===== */
.ib-product-placeholder-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 20px;
}

/* ===== WHATSAPP Z-INDEX FIX ===== */
.ib-messenger-widget {
  z-index: 900 !important;
}

/* ===== Главная: плотная витрина запчастей ===== */
.ib-home {
  margin-top: 16px;
}
.ib-home-top {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(260px, 0.7fr);
  gap: 20px;
  align-items: stretch;
}
.ib-home-lead {
  background: #0d6b5c;
  color: #fff;
  border-radius: 16px;
  padding: 28px 28px 24px;
}
.ib-home-kicker {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: rgba(255,255,255,.8);
}
.ib-home-lead h1 {
  margin: 0 0 8px;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.15;
  color: #fff;
}
.ib-home-lead p {
  margin: 0 0 18px;
  color: rgba(255,255,255,.88);
  font-size: 15px;
  line-height: 1.45;
  max-width: 640px;
}
.ib-home-search {
  display: flex;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
}
.ib-home-search input {
  flex: 1;
  border: 0;
  padding: 14px 16px;
  font-size: 16px;
  min-width: 0;
  color: #212529;
}
.ib-home-search input:focus { outline: none; }
.ib-home-search button {
  border: 0;
  background: #e30613;
  color: #fff;
  font-weight: 700;
  padding: 0 22px;
  cursor: pointer;
}
.ib-home-search button:hover { background: #c40510; }
.ib-home-hints {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
  font-size: 13px;
  color: rgba(255,255,255,.75);
}
.ib-home-hints a {
  color: #fff;
  background: rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 4px 10px;
  text-decoration: none;
  font-weight: 700;
}
.ib-home-aside {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ib-home-aside a {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 14px;
  padding: 14px 16px;
  color: #212529;
  text-decoration: none;
  font-weight: 700;
}
.ib-home-aside a span {
  display: block;
  font-weight: 500;
  color: #6c757d;
  font-size: 13px;
}
.ib-home-aside a i {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: rgba(13,107,92,.1);
  color: #0d6b5c;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.ib-home-aside a:hover { border-color: #0d6b5c; }

.ib-home-section { margin: 28px 0; }
.ib-home-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.ib-home-head h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
}
.ib-home-head a {
  color: #0d6b5c;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.ib-cat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.ib-cat-tile {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 16px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  height: 100%;
}
.ib-cat-tile:hover { border-color: #0d6b5c; text-decoration: none; color: inherit; }
.ib-cat-tile__photo {
  height: 168px;
  background: #f4f7f6;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
}
.ib-cat-tile__photo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.ib-cat-tile__fallback {
  font-size: 42px;
  color: #0d6b5c;
  opacity: .35;
}
.ib-cat-tile__body { padding: 14px 16px 16px; }
.ib-cat-tile__name {
  display: block;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.3;
  color: #212529;
}
.ib-cat-tile__meta {
  display: block;
  margin-top: 6px;
  color: #6c757d;
  font-size: 13px;
  font-weight: 600;
}

.ib-product-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
.ib-product-grid .ib-product-card { min-width: 0; }

.ib-home-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 8px 0 36px;
}
.ib-home-facts div {
  background: #f8f9fa;
  border-radius: 12px;
  padding: 14px 16px;
}
.ib-home-facts strong { display: block; font-size: 14px; }
.ib-home-facts span { color: #6c757d; font-size: 13px; }

@media (max-width: 1100px) {
  .ib-cat-grid,
  .ib-product-grid,
  .ib-home-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
  .ib-home-top { grid-template-columns: 1fr; }
  .ib-home-lead h1 { font-size: 24px; }
  .ib-home-search { flex-direction: column; }
  .ib-home-search button { padding: 12px; }
  .ib-cat-grid,
  .ib-product-grid,
  .ib-home-facts { grid-template-columns: 1fr; }
}
