/* Grid POLEN2026 */
.pol-grid { width: 100%; overflow: hidden; }
.pol-grid-wrap {
    display: grid; grid-template-columns: repeat(var(--cols, 4), 1fr);
    gap: var(--gap, 2px); padding: var(--gap, 2px);
}
.pol-grid-item {
    position: relative; overflow: hidden; display: block;
    aspect-ratio: var(--ratio, 20 / 11); background: #666; text-decoration: none;
}
.pol-grid-bg, .pol-grid-bg img { width: 100%; height: 100%; }
.pol-grid-bg img { object-fit: cover; display: block; transform-origin: center; transition: all 600ms ease-out; }
.pol-grid-item:hover .pol-grid-bg img { transform: scale(1.1); }
.pol-grid-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, .5); transition: background 400ms; }
.pol-grid-item:hover .pol-grid-overlay { background: rgba(0, 0, 0, .3); }
.pol-grid-front {
    position: absolute; inset: 0; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 12px; padding: 12px; text-align: center;
}
.pol-grid-logo { width: 48%; max-height: 60%; object-fit: contain; }
.pol-grid-btn {
    display: inline-flex; background: #fff; color: #231F20; font-size: 1.4em;
    text-transform: uppercase; padding: 12px 40px; font-weight: 400;
}
.pol-grid-sub { color: #fff; font-size: 1em; }

@media (max-width: 860px) {
    .pol-grid-wrap { grid-template-columns: repeat(min(var(--cols, 4), 3), 1fr); }
    .pol-grid-btn { font-size: 1.1em; padding: 10px 24px; }
}
@media (max-width: 560px) {
    .pol-grid-wrap { grid-template-columns: repeat(var(--cols-m, 2), 1fr); }
}
