/* Software-only additions. Shared surfaces, 4:3 media, card typography,
   centred rows and enquiry links remain in style.css. */
.software-catalogue .robot-card {
    display: flex;
    flex: 0 1 calc((100% - var(--space-6)) / 2);
    flex-direction: column;
}

.software-catalogue .robot-card-media {
    flex-shrink: 0;
    border-bottom: 1px solid var(--color-border);
}

.software-placeholder {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-6);
    text-align: center;
}

.software-placeholder > span { font-weight: var(--weight-semibold); }

.software-catalogue .robot-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: clamp(var(--space-6), 3vw, var(--space-10));
}

.software-catalogue .robot-card-content h3 { font-size: var(--text-subtitle); }

.software-catalogue .software-subtitle {
    color: var(--color-text);
    font-size: var(--text-lg);
    font-weight: var(--weight-semibold);
}

.software-capabilities {
    display: grid;
    gap: var(--space-3);
    margin-bottom: var(--space-6);
    padding-left: var(--space-4);
    color: var(--color-muted);
    font-size: var(--text-sm);
}

.software-capabilities li::marker { color: var(--color-link); }
.software-catalogue .software-note { color: var(--color-subtle); font-size: var(--text-xs); }
.software-catalogue .text-link { margin-top: auto; }

@media (max-width: 600px) {
    .software-catalogue .robot-card { flex-basis: 100%; }
}
