.OurSolutions {
    h2 {
        font-weight: 600;
        margin: 0;
        padding-bottom: 1rem;
    }

    .Boxes {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto auto;
        grid-column-gap: 32px;
        grid-row-gap: 16px;

        .Box {
            position: relative;
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            height: 100%;
            background-color: var(--bg-primary, #005a9c);
            border-radius: var(--border-radius);
            padding: 24px 12px;
            box-shadow: var(--box-shadow);
            transition: background-color 0.3s ease;
            text-decoration: none;

            &.link {
                cursor: pointer;

                &:before {
                    content: "";
                    position: absolute;
                    top: 0;
                    right: 0;
                    width: 100%;
                    height: 100%;
                    background-color: var(--bg-success, #008000);
                    transform: translateX(100%);
                    transition: transform 0.4s ease;
                    z-index: 0;
                }

                &:hover::before {
                    transform: translateX(0);
                }
            }


            h3 {
                position: relative;
                z-index: 1;
                color: #fff;
                font-weight: 600;
                text-align: center;
                margin: 0;
                transition: color 0.3s ease;
            }

            @media screen and (max-width: 767px) {
                border-radius: var(--border-mobile-radius);
            }

            .box-icon {
                position: absolute;
                bottom: 10px;
                right: 14px;
                z-index: 1;
                width: 20px;
                height: 20px;

                svg {
                    width: 100%;
                    height: 100%;
                    color: var(--text-primary, #fff);
                    transition: transform 0.3s ease;
                }
            }

            &:hover .box-icon svg {
                transform: translateX(4px);
            }
        }

        @media screen and (max-width: 767px) {
            grid-template-columns: repeat(1, 1fr);
            grid-template-rows: auto auto;
            grid-column-gap: 40px;
        }
    }
}
