/* =================================================================== SOFTWARE section css =================================================================== */
.software {
    & .software__grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--g30);
    }

    & .software__card {
        position: relative;
        padding: var(--sp15);
        background: var(--white);
        border-radius: var(--r-xl);

        &:hover .software__img { transform: scale(1.05); }
        &:hover .software__arrow .notch-badge { background: var(--primary); color: var(--white); }
    }

    & .software__media {
        position: relative;
        border-radius: var(--r-lg);
        overflow: hidden;
    }

    & .software__img {
        width: 100%;
        aspect-ratio: 16 / 11;
        object-fit: cover;
        transition: var(--transition);
    }

    & .software__date {
        --notch-bg: var(--white);
        left: var(--sp70);
        font-family: var(--font-mona);
        font-size: var(--f16);
        font-weight: 500;
        text-transform: uppercase;
        color: var(--ink);
    }

    & .software__body { padding: var(--sp25) 90px var(--sp15) var(--sp20); }

    & .software__title {
        margin-bottom: var(--sp12);
        font-size: var(--f30);
    }

    & .software__link::after { position: absolute; inset: 0; content: ''; }

    & .software__text { margin-bottom: var(--sp20); }

    & .software__meta {
        display: flex; flex-wrap: wrap; align-items: center;
        gap: var(--sp8);
    }

    & .software__product {
        padding: var(--sp5) var(--sp12);
        border: 1px solid var(--line);
        border-radius: var(--r-full);
        font-family: var(--font-mona);
        font-size: var(--f14);
        font-weight: 500;
        color: var(--ink);
    }

    & .software__arrow {
        --notch-r: var(--r-xl);
        & .notch-badge { width: 65px; height: 65px; }
    }
}

/* =================================================================== SOFTWARE responsive =================================================================== */
@media (max-width: 1199.98px) {
    .software {
        & .software__date { left: var(--sp30); }
    }
}

@media (max-width: 991.98px) {
    .software {
        & .software__grid { grid-template-columns: repeat(2, 1fr); }
    }
}

@media (max-width: 767.98px) {
    .software {
        & .software__grid { grid-template-columns: 1fr; }
    }
}
