
/* SECTION */
.section {
    padding: 60px 20px;
    text-align: center;
}

.section h2 {
    margin-bottom: 40px;
	color:#28347c;
}

/* GRID */
.catalogue-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

/* CARD */
.card {
    background: #fff;
    padding: 30px 20px;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;

    opacity: 0;
    transform: translateY(50px);
}

/* SCROLL ANIMATION ACTIVE */
.card.show {
    opacity: 1;
    transform: translateY(0);
}

/* ICON */
.icon {
    font-size: 45px;
    color: #e63946;
    margin-bottom: 15px;
}

/* TITLE */
.card h3 {
    margin-bottom: 20px;
}

/* DOWNLOAD BUTTON */
.download-btn {
    display: inline-block;
    padding: 12px 25px;
    border-radius: 30px;
    background: #28347c;
    color: #fff;
    text-decoration: none;
    transition: 0.3s;
}

.download-btn i {
    margin-right: 8px;
}

.download-btn:hover {
    background: #1d3557;
}

/* ðŸ”¥ HOVER: BOTTOM â†’ TOP MOVE */
.card::before {
    content: "";
    position: absolute;
    bottom: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent, rgba(40,52,124,0.15));
    transition: 0.4s ease;
}

.card:hover::before {
    bottom: 0;
}

/* Card moves up */
.card:hover {
    transform: translateY(-15px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.15);
}

/* Smooth inner content animation */
.card:hover .icon {
    transform: translateY(-5px);
    transition: 0.3s;
}

.card:hover h3 {
    transform: translateY(-5px);
    transition: 0.3s;
}

.card:hover .download-btn {
    transform: translateY(-5px);
    transition: 0.3s;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
    .catalogue-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .catalogue-grid {
        grid-template-columns: 1fr;
    }
}