/*
Theme Name: Beaver Builder Child Theme
Theme URI: https://www.wpbeaverbuilder.com
Version: 1.7
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: https://www.fastlinemedia.com
template: bb-theme
*/

/* Add your custom styles here...Remember to change the Version number above! */ 
/* Behandelingen-kaarten (UABB Advanced Posts): gelijke verhoudingen */
.uabb-blog-posts .uabb-blog-posts-shadow,
.uabb-blog-posts .uabb-blog-post-inner-wrap { height: 100%; }
.uabb-blog-posts .uabb-blog-post-inner-wrap { display: flex; flex-direction: column; overflow: hidden; }
.uabb-blog-posts .uabb-blog-post-content { display: flex; flex-direction: column; flex: 1 1 auto; padding-bottom: 20px; }
.uabb-blog-posts .uabb-post-thumbnail { aspect-ratio: 4 / 3; overflow: hidden; margin: 0 0 16px; padding: 0; }
.uabb-blog-posts .uabb-post-thumbnail a { display: block; width: 100%; height: 100%; }
.uabb-blog-posts .uabb-post-thumbnail img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; transition: transform .4s ease; }
.uabb-blog-posts .uabb-blog-post-inner-wrap:hover .uabb-post-thumbnail img { transform: scale(1.04); }
.uabb-blog-posts .uabb-post-heading { padding: 0 16px; }
.uabb-blog-posts .uabb-read-more-text,
.uabb-blog-posts .uabb-blog-post-content > *:last-child { margin-top: auto; }

/* Behandelingen-kaarten: afgeronde hoeken + knop */
.uabb-blog-posts .uabb-blog-posts-shadow { overflow: hidden; }
.uabb-blog-posts .uabb-post-thumbnail { border-radius: 30px 30px 0 0; }
.uabb-blog-posts .uabb-read-more-text { margin: auto 0 0; padding: 4px 16px 6px; text-align: center; }
.uabb-blog-posts .uabb-read-more-text a {
  display: inline-block; background: #908FD3; color: #fff !important; text-decoration: none !important;
  padding: 10px 24px; border-radius: 50px; font-size: 15px; line-height: 1.2;
  box-shadow: 0 0 20px rgba(3, 3, 3, .25); transition: background .2s ease, transform .2s ease;
}
.uabb-blog-posts .uabb-read-more-text a:hover,
.uabb-blog-posts .uabb-read-more-text a:focus { background: #7d7cc4; color: #fff !important; transform: translateY(-2px); }
.uabb-blog-posts .uabb-post-heading { margin-bottom: 18px !important; }
.uabb-blog-posts .uabb-blog-post-content { padding-bottom: 24px; }

/* ===== Behandelingen: eigen kaartenraster (vervangt UABB-kaarten) ===== */
.ag-behandelingen-row > .fl-row-content-wrap { background: #908FD3; padding-top: 50px; padding-bottom: 60px; }
.ag-behandelingen-row .fl-heading, .ag-behandelingen-row .fl-heading-text { color: #fff; text-align: center; }
.ag-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; }
@media (min-width: 768px)  { .ag-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1100px) { .ag-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } .ag-cards--6 { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.ag-card { position: relative; display: block; aspect-ratio: 3 / 4; border-radius: 25px; overflow: hidden; background: #6f6eb0; text-decoration: none !important; box-shadow: 0 6px 20px rgba(0,0,0,.18); isolation: isolate; }
.ag-card__media, .ag-card__img { position: absolute; inset: 0; width: 100%; height: 100%; }
.ag-card__img { object-fit: cover; transition: transform .5s ease; max-width: none; }
.ag-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(20,18,50,.75) 0%, rgba(20,18,50,.35) 55%, rgba(20,18,50,.15) 100%); z-index: 1; }
.ag-card__body { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 12px; padding: 18px 12px 20px; text-align: center; }
.ag-card__title { color: #fff; font-weight: 700; font-size: 19px; line-height: 1.2; text-shadow: 0 1px 4px rgba(0,0,0,.35); }
.ag-card__btn { display: inline-block; background: #908FD3; color: #fff; padding: 8px 18px; border-radius: 50px; font-size: 14px; line-height: 1.2; white-space: nowrap; box-shadow: 0 0 14px rgba(0,0,0,.25); transition: background .2s ease; }
.ag-card:hover .ag-card__img, .ag-card:focus-visible .ag-card__img { transform: scale(1.05); }
.ag-card:hover .ag-card__btn, .ag-card:focus-visible .ag-card__btn { background: #7d7cc4; }
.ag-card:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 480px) { .ag-card__title { font-size: 16px; } .ag-card__btn { padding: 7px 14px; font-size: 13px; } }
@media (min-width: 1100px) { .ag-cards--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); } }


/* Footermenu: geen uitklapmenus */
.fl-node-w7yx08b9sd5h .sub-menu { display: none !important; }
.fl-node-w7yx08b9sd5h .uabb-menu-toggle { display: none !important; }

/* Page heading: extra leesbaarheid op achtergrondfoto */
.fl-node-1cbh4lg8n5dz, .fl-node-1cbh4lg8n5dz *, .fl-node-fs9nrxe84buy, .fl-node-fs9nrxe84buy * { text-shadow: 0 1px 3px rgba(0,0,0,.55), 0 0 12px rgba(0,0,0,.35); }
