  #solutions.sol-section {
    --sol-slant: 7deg;
    --sol-slant-x: clamp(1.45rem, 4vw, 2.5rem);
    --sol-duo-cut: clamp(1.25rem, 3.2vw, 2.1rem);
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--color-primary, #00a651);
  }
  #solutions .sol-section__shell {
    position: relative;
    z-index: 2;
  }
  #solutions .home-title__first { color: #000000; }
  #solutions .home-title__rest { color: #ffffff; }
  #solutions .sol-section__subtitle { color: #ffffff; }
  #solutions .sol-card {
    border: 3px solid #000000;
    border-radius: 1rem;
    overflow: hidden;
  }
  #solutions .sol-card__skin {
    display: block;
    position: relative;
    height: 100%;
    min-height: inherit;
  }
  #solutions .sol-card__face {
    position: relative;
    display: block;
    height: 100%;
    min-height: inherit;
    overflow: hidden;
  }
  #solutions .sol-card__bg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.55s ease;
  }
  #solutions .sol-card:hover .sol-card__bg {
    transform: scale(1.05);
  }
  #solutions .sol-card__bg--empty {
    background: linear-gradient(145deg, #1a1a1a 0%, #0a0a0a 55%, #1a1a1a 100%);
  }
  #solutions .sol-card__overlay {
    background: linear-gradient(
      to top,
      rgba(0, 0, 0, 0.96) 0%,
      rgba(0, 0, 0, 0.88) 18%,
      rgba(0, 0, 0, 0.62) 40%,
      rgba(0, 0, 0, 0.32) 62%,
      rgba(0, 0, 0, 0.1) 78%,
      transparent 100%
    );
  }
  #solutions .sol-card:hover .sol-card__overlay {
    background: linear-gradient(
      to top,
      rgba(0, 0, 0, 0.98) 0%,
      rgba(0, 0, 0, 0.92) 18%,
      rgba(0, 0, 0, 0.72) 40%,
      rgba(0, 0, 0, 0.4) 62%,
      rgba(0, 0, 0, 0.14) 78%,
      transparent 100%
    );
  }

  #solutions .sol-card__btns {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
  }
  #solutions .sol-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    max-width: 100%;
    padding: 0.4rem 0.75rem;
    border: 1.5px solid #ffffff;
    border-radius: 0.5rem;
    color: #ffffff;
    background: transparent;
    font-size: clamp(0.62rem, 1.5vw, 0.7rem);
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: normal;
    text-wrap: balance;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  }
  #solutions .sol-card__btn:hover,
  #solutions .sol-card__btn:focus-visible {
    background: #ffffff;
    color: #000000;
    outline: none;
  }
  #solutions .sol-card__btn-icon {
    font-size: 1rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  #solutions .sol-card__btn .material-symbols-outlined {
    font-size: 1rem;
    line-height: 1;
    display: inline-flex;
    place-items: center;
  }

  #solutions.sol-section--duo {
    background: transparent;
  }
  #solutions .sol-section__duo {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: flex;
    pointer-events: none;
    overflow: hidden;
    container-type: size;
  }
  @supports (width: calc(tan(7deg) * 1px)) {
    #solutions .sol-section__duo {
      --sol-duo-cut: calc(tan(var(--sol-slant)) * 50cqh);
    }
  }
  #solutions .sol-section__duo-half {
    position: relative;
    align-self: stretch;
    min-height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: var(--color-primary-dark, #006b36);
  }
  #solutions .sol-section__duo-half--left {
    flex: 1 1 calc(50% + var(--sol-duo-cut));
    width: calc(50% + var(--sol-duo-cut));
    margin-right: calc(var(--sol-duo-cut) * -1);
    z-index: 0;
    clip-path: polygon(
      0 0,
      100% 0,
      calc(100% - 2 * var(--sol-duo-cut)) 100%,
      0 100%
    );
  }
  #solutions .sol-section__duo-half--right {
    flex: 1 1 calc(50% + var(--sol-duo-cut));
    width: calc(50% + var(--sol-duo-cut));
    margin-left: calc(var(--sol-duo-cut) * -1);
    z-index: 0;
    clip-path: polygon(
      calc(2 * var(--sol-duo-cut)) 0,
      100% 0,
      100% 100%,
      0 100%
    );
  }
  #solutions .sol-section__duo-half.is-empty {
    background-image: none;
  }
  #solutions .sol-section__duo-split {
    position: absolute;
    top: -12%;
    bottom: -12%;
    left: 50%;
    width: 12px;
    margin-left: -6px;
    background: #000;
    z-index: 2;
    transform: rotate(var(--sol-slant));
    transform-origin: center center;
  }
  #solutions .sol-section__duo-tint {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: color-mix(in srgb, var(--color-primary-dark, #006b36) 78%, #000 22%);
    opacity: 0.88;
  }
  @supports not (background: color-mix(in srgb, red 50%, blue)) {
    #solutions .sol-section__duo-tint {
      background: rgba(0, 80, 40, 0.88);
    }
  }

  @media (min-width: 640px) {
    #solutions.sol-section--duo {
      --sol-bw: 3px;
      --sol-r: 1.25rem;
    }
    #solutions.sol-section--duo .sol-grid {
      gap: clamp(1rem, 2.2vw, 1.5rem);
      align-items: stretch;
    }
    #solutions.sol-section--duo .sol-card {
      border: none;
      border-radius: 0;
      overflow: visible;
      background: transparent;
    }
    #solutions.sol-section--duo .sol-card__skin {
      position: relative;
      background: #000;
      height: 100%;
      min-height: inherit;
      padding: 0;
      box-sizing: border-box;
    }
    #solutions.sol-section--duo .sol-card__face {
      position: absolute;
      inset: 0;
      z-index: 1;
      background: #0a0a0a;
      min-height: 100%;
      overflow: hidden;
    }

    #solutions.sol-section--duo .sol-card--duo-l .sol-card__skin {
      clip-path: polygon(
        0% calc(var(--sol-r) * 1.2),
        0% calc(var(--sol-r) * 0.58),
        calc(var(--sol-r) * 0.1) calc(var(--sol-r) * 0.34),
        calc(var(--sol-r) * 0.26) calc(var(--sol-r) * 0.15),
        calc(var(--sol-r) * 0.48) calc(var(--sol-r) * 0.04),
        calc(var(--sol-r) * 0.78) 0%,
        calc(var(--sol-r) * 1.15) 0%,
        100% 0%,
        calc(100% - var(--sol-slant-x)) 100%,
        calc(var(--sol-r) * 1.15) 100%,
        calc(var(--sol-r) * 0.78) 100%,
        calc(var(--sol-r) * 0.48) calc(100% - var(--sol-r) * 0.04),
        calc(var(--sol-r) * 0.26) calc(100% - var(--sol-r) * 0.15),
        calc(var(--sol-r) * 0.1) calc(100% - var(--sol-r) * 0.34),
        0% calc(100% - var(--sol-r) * 0.58),
        0% calc(100% - var(--sol-r) * 1.2)
      );
    }
    #solutions.sol-section--duo .sol-card--duo-l .sol-card__face {
      clip-path: polygon(
        var(--sol-bw) calc(var(--sol-r) * 1.2),
        var(--sol-bw) calc(var(--sol-r) * 0.58 + var(--sol-bw) * 0.15),
        calc(var(--sol-r) * 0.1 + var(--sol-bw)) calc(var(--sol-r) * 0.34 + var(--sol-bw) * 0.3),
        calc(var(--sol-r) * 0.26 + var(--sol-bw)) calc(var(--sol-r) * 0.15 + var(--sol-bw) * 0.4),
        calc(var(--sol-r) * 0.48 + var(--sol-bw)) calc(var(--sol-r) * 0.04 + var(--sol-bw) * 0.5),
        calc(var(--sol-r) * 0.78 + var(--sol-bw) * 0.15) var(--sol-bw),
        calc(var(--sol-r) * 1.15) var(--sol-bw),
        calc(100% - var(--sol-bw)) var(--sol-bw),
        calc(100% - var(--sol-slant-x) - var(--sol-bw)) calc(100% - var(--sol-bw)),
        calc(var(--sol-r) * 1.15) calc(100% - var(--sol-bw)),
        calc(var(--sol-r) * 0.78 + var(--sol-bw) * 0.15) calc(100% - var(--sol-bw)),
        calc(var(--sol-r) * 0.48 + var(--sol-bw)) calc(100% - var(--sol-r) * 0.04 - var(--sol-bw) * 0.5),
        calc(var(--sol-r) * 0.26 + var(--sol-bw)) calc(100% - var(--sol-r) * 0.15 - var(--sol-bw) * 0.4),
        calc(var(--sol-r) * 0.1 + var(--sol-bw)) calc(100% - var(--sol-r) * 0.34 - var(--sol-bw) * 0.3),
        var(--sol-bw) calc(100% - var(--sol-r) * 0.58 - var(--sol-bw) * 0.15),
        var(--sol-bw) calc(100% - var(--sol-r) * 1.2)
      );
    }

    #solutions.sol-section--duo .sol-card--duo-r .sol-card__skin {
      clip-path: polygon(
        var(--sol-slant-x) 0%,
        calc(100% - var(--sol-r) * 1.15) 0%,
        calc(100% - var(--sol-r) * 0.78) 0%,
        calc(100% - var(--sol-r) * 0.48) calc(var(--sol-r) * 0.04),
        calc(100% - var(--sol-r) * 0.26) calc(var(--sol-r) * 0.15),
        calc(100% - var(--sol-r) * 0.1) calc(var(--sol-r) * 0.34),
        100% calc(var(--sol-r) * 0.58),
        100% calc(var(--sol-r) * 1.2),
        100% calc(100% - var(--sol-r) * 1.2),
        100% calc(100% - var(--sol-r) * 0.58),
        calc(100% - var(--sol-r) * 0.1) calc(100% - var(--sol-r) * 0.34),
        calc(100% - var(--sol-r) * 0.26) calc(100% - var(--sol-r) * 0.15),
        calc(100% - var(--sol-r) * 0.48) calc(100% - var(--sol-r) * 0.04),
        calc(100% - var(--sol-r) * 0.78) 100%,
        calc(100% - var(--sol-r) * 1.15) 100%,
        0% 100%
      );
    }
    #solutions.sol-section--duo .sol-card--duo-r .sol-card__face {
      clip-path: polygon(
        calc(var(--sol-slant-x) + var(--sol-bw)) var(--sol-bw),
        calc(100% - var(--sol-r) * 1.15) var(--sol-bw),
        calc(100% - var(--sol-r) * 0.78 - var(--sol-bw) * 0.15) var(--sol-bw),
        calc(100% - var(--sol-r) * 0.48 - var(--sol-bw)) calc(var(--sol-r) * 0.04 + var(--sol-bw) * 0.5),
        calc(100% - var(--sol-r) * 0.26 - var(--sol-bw)) calc(var(--sol-r) * 0.15 + var(--sol-bw) * 0.4),
        calc(100% - var(--sol-r) * 0.1 - var(--sol-bw)) calc(var(--sol-r) * 0.34 + var(--sol-bw) * 0.3),
        calc(100% - var(--sol-bw)) calc(var(--sol-r) * 0.58 + var(--sol-bw) * 0.15),
        calc(100% - var(--sol-bw)) calc(var(--sol-r) * 1.2),
        calc(100% - var(--sol-bw)) calc(100% - var(--sol-r) * 1.2),
        calc(100% - var(--sol-bw)) calc(100% - var(--sol-r) * 0.58 - var(--sol-bw) * 0.15),
        calc(100% - var(--sol-r) * 0.1 - var(--sol-bw)) calc(100% - var(--sol-r) * 0.34 - var(--sol-bw) * 0.3),
        calc(100% - var(--sol-r) * 0.26 - var(--sol-bw)) calc(100% - var(--sol-r) * 0.15 - var(--sol-bw) * 0.4),
        calc(100% - var(--sol-r) * 0.48 - var(--sol-bw)) calc(100% - var(--sol-r) * 0.04 - var(--sol-bw) * 0.5),
        calc(100% - var(--sol-r) * 0.78 - var(--sol-bw) * 0.15) calc(100% - var(--sol-bw)),
        calc(100% - var(--sol-r) * 1.15) calc(100% - var(--sol-bw)),
        var(--sol-bw) calc(100% - var(--sol-bw))
      );
    }

    #solutions.sol-section--duo .sol-card--duo-l .sol-card__body,
    #solutions.sol-section--duo .sol-card--duo-r .sol-card__body {
      align-items: center;
      text-align: center;
      padding: 1.25rem 2rem 1.5rem;
      max-width: min(92%, 28rem);
      margin-left: auto;
      margin-right: auto;
      width: 100%;
      box-sizing: border-box;
    }
    #solutions.sol-section--duo .sol-card--duo-l .sol-card__body h3,
    #solutions.sol-section--duo .sol-card--duo-l .sol-card__body p,
    #solutions.sol-section--duo .sol-card--duo-r .sol-card__body h3,
    #solutions.sol-section--duo .sol-card--duo-r .sol-card__body p {
      font-style: normal;
    }
    #solutions.sol-section--duo .sol-card--duo-l .sol-card__body .sol-card__btns,
    #solutions.sol-section--duo .sol-card--duo-r .sol-card__body .sol-card__btns {
      justify-content: center;
    }
  }

  @media (max-width: 1023px) {
    #solutions .sol-card__body {
      align-items: center !important;
      text-align: center !important;
    }
    #solutions .sol-card__btns { justify-content: center; }
  }
