.a2z-pro-listing {
    width: 100%;
    margin: 1.5em 0;
}

.a2z-pro-fullwidth {
    width: 100%;
    max-width: 100%;
}

.a2z-pro-letters {
    margin-bottom: 1em;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25em;
}

.a2z-pro-letter-link {
    text-decoration: none;
    padding: 0.2em 0.5em;
    border: 1px solid #ccc;
    font-size: 0.9em;
}

.a2z-pro-letter-link:hover {
    background: #f0f0f0;
}

.a2z-pro-group {
    margin-bottom: 1.5em;
}

.a2z-pro-group-title {
    font-size: 1.3em;
    margin-bottom: 0.5em;
}

.a2z-pro-items {
    list-style: none;
    margin: 0;
    padding: 0;
}

.a2z-pro-item {
    margin: 0;
    padding: 0.3em 0;
    border-bottom: 1px solid #eee;
    position: relative;
}

.a2z-pro-item-inner {
    display: flex;
    align-items: center;
    text-decoration: none;
    gap: 0.6em;
    width: 100%;
    box-sizing: border-box;
}

.a2z-pro-thumb-wrapper img.a2z-pro-thumb {
    display: block;
    object-fit: cover;
}

.a2z-pro-thumb {
    width: 100px;
    height: 100px;
    object-fit: cover;
}

.a2z-pro-position-top .a2z-pro-item-inner {
    flex-direction: column;
    align-items: flex-start;
}

.a2z-pro-position-right .a2z-pro-item-inner {
    flex-direction: row-reverse;
}

.a2z-pro-position-none .a2z-pro-item-inner {
    flex-direction: row;
}

.a2z-pro-title-wrapper {
    font-size: 0.95em;
    display: block;
    white-space: normal;
    overflow-wrap: break-word;
}

.a2z-pro-notice {
    padding: 0.5em;
    background: #fff3cd;
    border-left: 4px solid #ffec99;
    margin: 1em 0;
    font-size: 0.9em;
}

/* Grid layout */
.a2z-pro-layout-grid .a2z-pro-items {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0.75em 1em;
    border: 0;
}

.a2z-pro-layout-grid .a2z-pro-item {
    border: 0;
    padding: 0;
}

.a2z-pro-layout-grid.a2z-pro-columns-2 .a2z-pro-items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.a2z-pro-layout-grid.a2z-pro-columns-3 .a2z-pro-items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.a2z-pro-layout-grid.a2z-pro-columns-4 .a2z-pro-items {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.a2z-pro-layout-grid.a2z-pro-columns-5 .a2z-pro-items {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}
.a2z-pro-layout-grid.a2z-pro-columns-6 .a2z-pro-items {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

/* List layout base columns */
.a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-items,
.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.5em;
    row-gap: 0.3em;
}

.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.a2z-pro-layout-grid .a2z-pro-item,
.a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-item,
.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-item,
.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-item {
    border-bottom: 0;
    padding: 0;
}

/* Tight columns A-style */
.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-items,
.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
    display: grid !important;
    grid-auto-flow: column !important;
    column-gap: 3rem !important;
    row-gap: 1.2rem !important;
    align-items: flex-start !important;
}

.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-items {
    grid-template-columns: repeat(2, 1fr) !important;
}
.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items {
    grid-template-columns: repeat(3, 1fr) !important;
}
.a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
    grid-template-columns: repeat(4, 1fr) !important;
}

.a2z-pro-tight.a2z-pro-layout-list .a2z-pro-item {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

/* Back-to-top arrow – base */
.a2z-pro-layout-list.a2z-pro-list-columns-1 .a2z-pro-item {
    padding-right: 26px;
}

.a2z-pro-backtotop-link {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #999;
    text-decoration: none;
    opacity: 0.45;
    transition: opacity 0.2s ease;
}

.a2z-pro-backtotop-link:hover {
    opacity: 0.9;
}

/* Smooth scroll for anchors */
html {
    scroll-behavior: smooth;
}

/* Responsive: grids naar minder kolommen */
@media (max-width: 900px) {
    .a2z-pro-layout-grid.a2z-pro-columns-4 .a2z-pro-items,
    .a2z-pro-layout-grid.a2z-pro-columns-5 .a2z-pro-items,
    .a2z-pro-layout-grid.a2z-pro-columns-6 .a2z-pro-items {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
    .a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
    .a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Mobiel: altijd 1 kolom, pijltje kleiner/subtieler */
@media (max-width: 768px) {
    .a2z-pro-layout-grid .a2z-pro-items {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    }

    .a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-items,
    .a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
    .a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        grid-auto-flow: row !important;
    }

    .a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-2 .a2z-pro-items,
    .a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-3 .a2z-pro-items,
    .a2z-pro-tight.a2z-pro-layout-list.a2z-pro-list-columns-4 .a2z-pro-items {
        grid-template-columns: repeat(1, 1fr) !important;
        grid-auto-flow: row !important;
    }

    .a2z-pro-backtotop-link {
        font-size: 10px !important;
        opacity: 0.4 !important;
    }
}
