/**
 * Pretpot Simple Logo Grid Styles
 */

.pretpot-simple-logo-grid-wrapper {
    width: 100%;
}

.pretpot-simple-logo-grid__header {
    margin-bottom: 40px;
}

.pretpot-simple-logo-grid__title {
    margin: 0;
    font-size: 28px;
    line-height: 1.3;
}

.pretpot-simple-logo-grid__subtitle {
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
    opacity: 0.8;
}

.pretpot-simple-logo-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    justify-items: center;
    align-items: center;
}

.pretpot-simple-logo-grid__item {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pretpot-simple-logo-grid__link {
    display: block;
    width: 100%;
    text-decoration: none;
    transition: transform 0.3s ease;
}

.pretpot-simple-logo-grid__logo-wrap {
    position: relative;
    width: 100%;
    height: 80px; /* Default height - controlled by Elementor */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 8px;
    padding: 0;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.pretpot-simple-logo-grid__logo {
    display: block;
    /* Fill the container width up to the max-width set by the control */
    width: 100%;
    max-width: 120px; /* default — overridden by Elementor selector */
    height: 100%;
    /* contain: letter-boxes inside the wrap (safe for any logo shape)
       fill:    stretches to fill wrap exactly
       cover:   crops to fill wrap, centred */
    object-fit: contain;
    object-position: center;
    transition: all 0.3s ease;
}

/* Hover Effects */
.pretpot-simple-logo-grid__item:hover .pretpot-simple-logo-grid__logo-wrap {
    transform: translateY(-2px);
}

/* Loading State */
.pretpot-simple-logo-grid__logo-wrap.loading {
    background: linear-gradient(90deg, #f5f5f5 25%, #eeeeee 50%, #f5f5f5 75%);
    background-size: 200% 100%;
    animation: pretpot-logo-shimmer 1.5s infinite;
}

@keyframes pretpot-logo-shimmer {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Responsive Adjustments */
@media (max-width: 1024px) {
    .pretpot-simple-logo-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px) {
    .pretpot-simple-logo-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .pretpot-simple-logo-grid__title {
        font-size: 24px;
    }
}

@media (max-width: 479px) {
    .pretpot-simple-logo-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}