/* =========================================================
 * Plaats single layout — content + TOC (links)
 * ========================================================= */

.aoo-layout--toc {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.aoo-layout--toc .aoo-sidebar {
    min-width: 0;
}

.aoo-layout--toc .aoo-content {
    min-width: 0;
}

/* Op tablet/mobiel: TOC weg, content full width */
@media (max-width: 1024px) {
    .aoo-layout--toc {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
 * Sticky TOC + sticky infobox
 * ========================================================= */

/* Sticky breekt door overflow/transform: reset wrappers */
body.single-plaats #page,
body.single-plaats #content,
body.single-plaats #primary,
body.single-plaats .site-content,
body.single-plaats .content-area,
body.single-plaats .inside-article,
body.single-plaats article.hotel-single {
    overflow: visible !important;
    transform: none !important;
    filter: none !important;
    perspective: none !important;
}

body.single-plaats .hotel-sidebar {
    align-self: start;
    overflow: visible;
}

body.single-plaats .place-sidebar {
    display: grid;
    gap: 16px;
}

/* TOC sticky (boven) */
body.single-plaats .aoo-toc--sticky {
    position: sticky;
    top: 90px;
    z-index: 2;
}

/* Infobox sticky (onder TOC) */
body.single-plaats .place-info--sticky {
    position: sticky;
    top: 240px;
    z-index: 1;
}

@media (max-width: 980px) {
    body.single-plaats .aoo-toc--sticky,
    body.single-plaats .place-info--sticky {
        position: static;
        top: auto;
    }
}