/* Card layout: image + content side-by-side (no wrapping) */
.masonry-quote {
    display: block;
    margin-bottom: 20px;
    padding: 20px;
    box-shadow: 0 0px 0px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    text-decoration: none;
}

.quote-wrapper {
    display: flex;
    align-items: center; /* logo top-aligned with text */
    gap: 15px; /* spacing between logo and text */
}

.quote-wrapper .logo
{
        flex-shrink: 0;
        max-width: 130px;
        max-height: 88px;
        width: 130px;
        object-fit: cover;
}

.quote-content p {
    margin: 0 0 10px 0;
}

/* Quote text area */
.masonry-quote .quote-content {
        flex: 1 1 auto;
        min-width: 0; /* prevents overflow in flex items */
}


/* Make sure paragraphs don't try to sit inline */
.masonry-quote p {
        margin: 0 0 10px 0;
}

/* Hover: only change shadow, not text styling */
.masonry-quote:hover {
        box-shadow: 0 8px 25px rgba(0,0,0,0.25);
        transition: box-shadow 0.2s ease-in-out;
}

/* Strong overrides to prevent Bootstrap link hover styles inside the card */
.masonry-quote,
.masonry-quote:hover,
.masonry-quote:focus,
.masonry-quote:active,
.masonry-quote p,
.masonry-quote .font-red,
.masonry-quote .quote-content * {
        text-decoration: none !important;
}

/* Responsive: stack on small screens */
@media (max-width: 767px) {
        .masonry-quote {
                flex-direction: column;
        }
        .masonry-quote .logo {
                width: 100%;
                max-width: 100%;
                height: auto;
                flex: 0 0 auto;
                margin-bottom: 10px;
        }
}