/* Aizy Blogtemplate — scoped op .aizy-bt; font-family erft bewust van het thema.
   Accentkleuren komen als CSS-variabelen uit de instellingen (--aizy-accent1/2). */

.aizy-bt {
    /* Breek uit smalle thema-containers (bv. Astra's narrow container voor
       posts, 750px): neem zelf de paginabreedte, gecentreerd op de pagina.
       Fallback-cascade: eerst vaste breedte, dan min() waar ondersteund. */
    box-sizing: border-box;
    max-width: none;
    /* Thema-containers zijn soms flex (Astra): niet laten platdrukken. */
    flex: 0 0 auto;
    width: 1140px;
    width: min(1140px, 94vw);
    margin-left: calc(50% - 570px);
    margin-left: calc(50% - min(1140px, 94vw) / 2);
    margin-right: 0;
    padding: 1.5rem 0 3rem;
    font-family: inherit;
    line-height: 1.65;
}

/* Breadcrumb */
.aizy-bt-breadcrumb { font-size: .85rem; opacity: .75; margin-bottom: .9rem; }
.aizy-bt-breadcrumb a { color: var(--aizy-accent1); text-decoration: none; }
.aizy-bt-bc-sep { margin: 0 .25rem; }

/* Titel + metadata */
.aizy-bt-titel { font-size: clamp(1.7rem, 4vw, 2.4rem); line-height: 1.2; margin: 0 0 .8rem; }
.aizy-bt-meta {
    display: flex; flex-wrap: wrap; align-items: center; gap: .35rem 1rem;
    font-size: .875rem; opacity: .85; margin-bottom: 1.25rem;
}
.aizy-bt-avatar { border-radius: 50%; width: 36px; height: 36px; object-fit: cover; }
.aizy-bt-meta a { color: var(--aizy-accent1); text-decoration: none; }
.aizy-bt-cat {
    background: color-mix(in srgb, var(--aizy-accent1) 12%, transparent);
    padding: .15rem .6rem; border-radius: 99px; font-size: .8rem;
}

/* Featured image */
.aizy-bt-featured img { width: 100%; height: auto; border-radius: 12px; }
.aizy-bt-featured { margin-bottom: 1.75rem; }

/* Layout: artikel links, sticky inhoudsopgave rechts (mobiel: TOC boven de tekst) */
.aizy-bt-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; }
@media (min-width: 1024px) {
    .aizy-bt-layout { grid-template-columns: minmax(0, 1fr) 300px; align-items: start; }
    .aizy-bt-artikel { grid-column: 1; grid-row: 1; }
    .aizy-bt-sidebar { grid-column: 2; grid-row: 1; position: sticky; top: 90px; }
}

/* Inhoudsopgave */
.aizy-bt-toc {
    border: 1px solid rgba(125, 125, 125, .25); border-radius: 12px; padding: 1rem 1.15rem;
}
.aizy-bt-toc-titel { font-size: 1rem; margin: 0 0 .5rem; }
.aizy-bt-toc-items p { margin: .3rem 0; font-size: .875rem; }
.aizy-bt-toc-items a { color: inherit; text-decoration: none; }
.aizy-bt-toc-items a:hover { color: var(--aizy-accent1); }
.aizy-bt-toc-items .aizy-bt-toc-h3 { padding-left: .9rem; opacity: .8; }
.aizy-bt-toc[hidden] { display: none; }

/* Body-content: HTML-element-styling conform de Aizy-spec (leesbaarheid) */
.aizy-bt-content > * { margin-top: 0; }
.aizy-bt-content p { line-height: 1.75; margin: 0 0 1.1rem; }
.aizy-bt-content h2 { font-size: 1.45rem; line-height: 1.3; margin: 2.1rem 0 .8rem; }
.aizy-bt-content h3 { font-size: 1.17rem; line-height: 1.35; margin: 1.6rem 0 .6rem; }
/* TOC-ankers niet onder een sticky thema-header laten verdwijnen. */
.aizy-bt-content h2, .aizy-bt-content h3 { scroll-margin-top: 100px; }
.aizy-bt-content h4, .aizy-bt-content h5, .aizy-bt-content h6 { margin: 1.3rem 0 .5rem; }
.aizy-bt-content ul, .aizy-bt-content ol { margin: 0 0 1.1rem 1.4rem; padding: 0; }
.aizy-bt-content li { margin: .35rem 0; }
.aizy-bt-content a { color: var(--aizy-accent1); text-decoration: underline; }
.aizy-bt-content blockquote {
    border-left: 3px solid var(--aizy-accent2); margin: 1.25rem 0; padding: .35rem 0 .35rem 1.1rem;
    opacity: .9;
}
.aizy-bt-content cite { font-size: .85rem; opacity: .75; }
.aizy-bt-content table {
    display: block; overflow-x: auto; border-collapse: collapse; margin: 1.25rem 0; max-width: 100%;
}
.aizy-bt-content th, .aizy-bt-content td {
    border: 1px solid rgba(125, 125, 125, .3); padding: .5rem .75rem; text-align: left;
}
.aizy-bt-content img { max-width: 100%; height: auto; border-radius: 10px; }

/* Knoppen */
.aizy-bt-knop {
    display: inline-block; background: var(--aizy-accent1); color: #fff !important;
    padding: .6rem 1.3rem; border-radius: 8px; text-decoration: none !important;
    font-weight: 600; font-size: .95rem;
}
.aizy-bt-knop:hover { filter: brightness(.92); }
.aizy-bt-knop-groot { padding: .8rem 1.7rem; font-size: 1.05rem; }
.aizy-bt-cta-onder { margin: 1.75rem 0; }

/* In-content CTA-blokken */
.aizy-bt-cta {
    display: flex; gap: 1.25rem; align-items: center;
    border: 1px solid rgba(125, 125, 125, .25); border-left: 4px solid var(--aizy-accent1);
    border-radius: 12px; padding: 1.15rem 1.3rem; margin: 1.75rem 0;
    background: color-mix(in srgb, var(--aizy-accent1) 5%, transparent);
}
.aizy-bt-cta-beeld img { width: 130px; height: auto; border-radius: 8px; display: block; }
.aizy-bt-cta-titel { font-weight: 700; font-size: 1.05rem; margin: 0 0 .3rem; }
.aizy-bt-cta-titel a { color: inherit; text-decoration: none; }
.aizy-bt-cta-tekst { margin: 0 0 .7rem; font-size: .925rem; }
.aizy-bt-product-prijs { margin: 0 0 .7rem; font-weight: 600; }
@media (max-width: 640px) {
    .aizy-bt-cta { flex-direction: column; align-items: flex-start; }
}

/* Share */
.aizy-bt-share { display: flex; flex-wrap: wrap; gap: .8rem; font-size: .875rem; margin: 1.5rem 0; }
.aizy-bt-share-label { opacity: .7; }
.aizy-bt-share a { color: var(--aizy-accent1); text-decoration: none; }

/* Auteursbox */
.aizy-bt-auteur {
    display: flex; gap: 1.15rem; border: 1px solid rgba(125, 125, 125, .25);
    border-radius: 12px; padding: 1.25rem 1.4rem; margin: 2rem 0 0;
}
.aizy-bt-auteur-foto { border-radius: 50%; flex-shrink: 0; width: 72px; height: 72px; object-fit: cover; }
.aizy-bt-auteur-naam { font-size: 1.15rem; margin: 0 0 .15rem; }
.aizy-bt-auteur-naam a { color: inherit; text-decoration: none; }
.aizy-bt-auteur-functie { font-size: .9rem; font-weight: 600; opacity: .75; margin: 0 0 .5rem; }
.aizy-bt-auteur-bio { font-size: .925rem; margin: 0 0 .6rem; }
.aizy-bt-auteur-links { font-size: .875rem; margin: 0; display: flex; flex-wrap: wrap; gap: .8rem; }
.aizy-bt-auteur-links a { color: var(--aizy-accent1); text-decoration: none; }

/* Gerelateerde secties: horizontale slider met scroll-snap */
.aizy-bt-sectie { margin-top: 2.5rem; }
.aizy-bt-sectie > h2 { font-size: 1.35rem; margin: 0 0 1rem; }
.aizy-bt-slider {
    display: grid; grid-auto-flow: column; grid-auto-columns: min(280px, 78vw);
    gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory;
    padding-bottom: .75rem;
}
.aizy-bt-slider > * { scroll-snap-align: start; }
.aizy-bt-kaart {
    border: 1px solid rgba(125, 125, 125, .25); border-radius: 12px; padding: .9rem;
    display: flex; flex-direction: column; gap: .45rem;
}
.aizy-bt-kaart img { width: 100%; height: 150px; object-fit: cover; border-radius: 8px; }
.aizy-bt-kaart-titel { font-weight: 700; margin: 0; line-height: 1.35; }
.aizy-bt-kaart-titel a { color: inherit; text-decoration: none; }
.aizy-bt-kaart-meta { font-size: .8rem; opacity: .7; margin: 0; }
.aizy-bt-kaart-samenvatting { font-size: .875rem; margin: 0; }
.aizy-bt-meerlezen { color: var(--aizy-accent1); text-decoration: none; font-size: .875rem; }

/* WooCommerce-productlijst binnen de slider netjes laten meelopen */
.aizy-bt-producten .woocommerce ul.products {
    display: grid; grid-auto-flow: column; grid-auto-columns: min(240px, 70vw);
    gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0; padding: 0;
}
.aizy-bt-producten .woocommerce ul.products li.product { width: 220px !important; margin: 0 !important; float: none !important; }
