.cg-594ad029-grid {
    display: grid;
    width: 100%;
}

.cg-594ad029-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    box-sizing: border-box;
    overflow: hidden;
    outline: none;
    transition: all 0.3s ease;
}

.cg-594ad029-card:focus-visible {
    outline: 2px solid #000;
    outline-offset: 2px;
}

.cg-594ad029-header {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.cg-594ad029-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.cg-594ad029-icon-wrap svg {
    display: block;
    width: 100%;
    height: auto;
}

.cg-594ad029-icon-wrap img {
    display: block;
    max-width: 100%;
    height: auto;
}

.cg-594ad029-title {
    margin: 0;
    transition: all 0.3s ease;
}

.cg-594ad029-body {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    transition: all 0.3s ease;
    flex-grow: 1;
}

.cg-594ad029-desc {
    margin: 0;
    transition: all 0.3s ease;
}

/* Hover animations and transitions */
.cg-594ad029-card,
.cg-594ad029-header,
.cg-594ad029-body,
.cg-594ad029-icon-wrap,
.cg-594ad029-icon-wrap svg,
.cg-594ad029-title,
.cg-594ad029-desc {
    transition-duration: var(--cg-hover-duration, 0.3s);
}

.cg-594ad029-anim-lift:hover {
    transform: translateY(-8px);
}
.cg-594ad029-anim-scale:hover {
    transform: scale(1.03);
}
.cg-594ad029-anim-fade:hover {
    opacity: 0.85;
}
.cg-594ad029-anim-translateY:hover {
    transform: translateY(5px);
}
