    /* ========== SUSTAINABILITY ========== */
    #sustainability {
      background: var(--white);
      padding: 140px 5% 100px;
    }

    .sust-container {
      max-width: 100%;
      margin: 0 auto;
    }

    .sust-header {
      text-align: center;
      margin-bottom: 72px;
    }

    .sust-header .section-desc {
      margin: 0 auto;
    }

    .sust-pillars {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }

    .sust-pillar {
      padding: 52px 32px;
      position: relative;
      overflow: hidden;
      background: var(--light);
      opacity: 0;
      transform: translateY(60px) scale(0.96);
      transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    }

    .sust-pillar.visible {
      opacity: 1;
      transform: translateY(0) scale(1);
    }

    .sust-pillar::before {
      content: '';
      position: absolute;
      inset: -50%;
      background: var(--orange);
      transform: translateX(-100%) rotate(-45deg);
      transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
      z-index: 0;
    }

    .sust-pillar:hover::before {
      transform: translateX(0) rotate(-45deg);
    }

    .sust-pillar>* {
      position: relative;
      z-index: 1;
      transition: color 0.4s ease;
    }

    .sust-pillar:hover .sust-pillar-title,
    .sust-pillar:hover .sust-pillar-text,
    .sust-pillar:hover .sust-pillar-icon svg {
      color: var(--white);
    }

    .sust-pillar-icon {
      width: 44px;
      height: 44px;
      margin-bottom: 28px;
    }

    .sust-pillar-icon svg {
      width: 44px;
      height: 44px;
      color: var(--orange);
      transition: color 0.4s ease;
    }

    .sust-pillar-title {
      font-family: 'Sequel Sans Display', 'Aptos Display', Arial, sans-serif;
      font-size: 24px;
      font-weight: 600;
      margin-bottom: 14px;
      color: var(--black);
    }

    .sust-pillar-text {
      font-size: 14px;
      color: var(--gray);
      line-height: 1.8;
      font-weight: 300;
    }

    .sust-marquee {
      margin-top: 72px;
      overflow: hidden;
      border-top: 1px solid var(--light-gray);
      border-bottom: 1px solid var(--light-gray);
      padding: 18px 0;
    }

    .sust-marquee-track {
      display: flex;
      gap: 48px;
      animation: marquee 25s linear infinite;
      white-space: nowrap;
    }

    .sust-marquee-item {
      font-family: 'Sequel Sans Display', 'Aptos Display', Arial, sans-serif;
      font-size: 15px;
      font-weight: 500;
      color: var(--black);
      display: flex;
      align-items: center;
      gap: 14px;
      flex-shrink: 0;
    }

    .sust-marquee-item span {
      width: 6px;
      height: 6px;
      background: var(--orange);
      display: block;
      flex-shrink: 0;
    }

    @keyframes marquee {
      0% {
        transform: translateX(0);
      }

      100% {
        transform: translateX(-50%);
      }
    }

