/* === NOUVEAUX STYLES POUR "L'EFFET WOW" === */

/* 1. Arrière-plan Page Subtil */
body {
    background-color: #f8fafc;
    /* Gris très clair */
    background-image: radial-gradient(#e2e8f0 1px, transparent 1px);
    background-size: 30px 30px;
    /* Motif à pois subtil */
}

/* 2. Cartes Bento "Vivrantes" */
.bento-card {
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    background: white;
    /* Default standard background */
}

.bento-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
    border-color: #ef3e36;
}

/* === NEW SPLIT LAYOUT (Half Image / Half Text) === */
.bento-card.has-image {
    /* Image takes top 50% */
    background-size: 100% 50%;
    background-repeat: no-repeat;
    background-position: top center;
    background-color: white;
    /* Text area background */
}

/* Hide the full dark overlay since text is on white now */
.bento-card.has-image .bento-image-overlay {
    display: none;
}

/* Adjust content positioning */
.bento-card.has-image .card-content {
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    /* Text at bottom */
    padding-top: 50%;
    /* Clear the image area */
    color: #1a202c;
    /* Dark text for readability */
}

/* Fix Colors for readability on White Background */
.bento-card.has-image h3 {
    color: #1a202c;
    text-shadow: none;
    margin-bottom: 0.5rem;
    margin-top: 1rem;
    /* Spacing from image */
}

.bento-card.has-image p.card-desc {
    color: #718096;
    /* Soft gray for description */
    margin-bottom: auto;
    /* Push price to bottom */
}

.bento-card.has-image .price-value {
    color: #1a202c;
    text-shadow: none;
    font-weight: 800;
}

.bento-card.has-image .tax {
    color: #a0aec0;
}

/* Optional: Add a subtle border/separator between image and text */
.bento-card.has-image::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(to right, #ef3e36, transparent);
    opacity: 0.3;
}

/* 3. Animation des Icônes */
.bento-card:hover .bento-icon.fa-tools {
    animation: rotate-tools 0.5s ease-in-out;
}

.bento-card:hover .bento-icon.fa-wind {
    animation: spin-wind 2s linear infinite;
}

.bento-card:hover .bento-icon.fa-search {
    animation: pulse-scale 1s infinite alternate;
}

@keyframes rotate-tools {
    0% {
        transform: rotate(0deg);
    }

    25% {
        transform: rotate(-15deg);
    }

    75% {
        transform: rotate(15deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

@keyframes spin-wind {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes pulse-scale {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.1);
    }
}

/* Styling specific for "Option A" - Discrete & Pro */
.bento-card {
    display: flex;
    flex-direction: column;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    /* Slightly more rounded */
    overflow: hidden;
    background: white;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
    /* Uniform height */
}

.bento-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
    /* Soft shadow */
    border-color: #ef3e36;
}

/* Image Container - Fixed 35% Height */
.card-img-container {
    height: 180px;
    /* Fixed px height for consistency or approx 35% of a typical card */
    width: 100%;
    overflow: hidden;
    position: relative;
    background-color: #f7fafc;
    /* Placeholder bg */
}

.card-img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Desaturate slightly for "Pro" look, recolor on hover? */
    filter: saturate(0.85);
    transition: filter 0.3s ease, transform 0.5s ease;
}

.bento-card:hover .card-img-container img {
    filter: saturate(1.1);
    /* Pop color on hover */
    transform: scale(1.05);
    /* Slight zoom */
}

/* Content Container */
.card-content {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    /* Fills the rest of the card */
}

/* Typography */
.card-header h3 {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1a202c;
    margin-top: 0;
    margin-bottom: 0.75rem;
    text-shadow: none;
    /* Ensure no text shadow remains */
}

p.card-desc {
    font-size: 0.95rem;
    color: #4a5568;
    line-height: 1.5;
    margin-bottom: 1.5rem;
    flex-grow: 1;
    /* Pushes price down */
}

.price-container {
    margin-top: auto;
    /* Always at bottom */
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.price-value {
    font-size: 1.5rem;
    /* Prominent price */
    font-weight: 800;
    color: #1a202c;
}

.tax {
    font-size: 0.8rem;
    color: #a0aec0;
    font-weight: 400;
}

/* Responsive */
@media (max-width: 768px) {
    .card-img-container {
        height: 150px;
    }
}