/* Aanbod page */
.aanbod-page .site-header{background:rgba(250,246,236,.88);backdrop-filter:blur(12px)}

.aanbod-hero{
  padding:150px 0 96px;
  background:var(--cream);
}
.aanbod-hero-grid{display:grid;grid-template-columns:1.05fr .75fr;gap:74px;align-items:center}
.aanbod-hero h1{font-family:var(--serif);font-size:clamp(3rem,6vw,5.1rem);font-weight:400;line-height:1.06;letter-spacing:-.02em;margin:24px 0 24px;color:var(--ink)}
.aanbod-hero h1 em{font-style:italic;color:var(--terracotta)}
.aanbod-hero .lead{font-size:1.16rem;color:var(--ink-soft);max-width:39em;line-height:1.75;margin-bottom:34px}
.aanbod-actions{display:flex;gap:16px;flex-wrap:wrap}
.aanbod-hero-card{background:var(--sand);border-radius:26px;padding:22px;box-shadow:0 34px 72px -48px rgba(44,38,32,.55);position:relative;overflow:hidden}
.aanbod-hero-card::before{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:rgba(181,98,62,.13)}
.aanbod-card-inner{position:relative;z-index:2;background:rgba(250,246,236,.72);border:1px solid rgba(44,38,32,.08);border-radius:20px;padding:34px 30px}
.aanbod-card-label{display:inline-flex;margin-bottom:18px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--terracotta)}
.aanbod-card-inner strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.7rem;line-height:1.18;color:var(--ink);margin-bottom:16px}
.aanbod-card-inner p{color:var(--ink-soft);font-size:.98rem;line-height:1.7}

.aanbod-intro{padding:86px 0;background:var(--sand)}
.aanbod-intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.aanbod-intro h2{font-size:clamp(2rem,3.8vw,3.1rem);margin-top:18px;color:var(--ink)}
.aanbod-intro p{font-size:1.08rem;line-height:1.75;color:var(--ink-soft);max-width:52em}

.aanbod-events{padding:104px 0 160px;background:var(--cream)}
.aanbod-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:54px}
.aanbod-section-head h2{font-size:clamp(2.1rem,3.8vw,3.2rem);margin-top:16px;color:var(--ink)}
.aanbod-section-head p{max-width:25rem;color:var(--ink-soft);font-size:1rem;line-height:1.7}
.aanbod-event-grid .card{background:#fffdf6;border:1px solid rgba(44,38,32,.08)}

.aanbod-hosts{background:var(--olive);color:var(--cream);padding:94px 0 104px}
.aanbod-hosts .eyebrow{color:var(--sand)}
.aanbod-hosts .eyebrow::before{background:var(--sand)}
.aanbod-hosts-inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}
.aanbod-hosts h2{font-size:clamp(2rem,3.8vw,3rem);color:var(--cream);margin:18px 0 16px;max-width:16ch}
.aanbod-hosts p{color:rgba(250,246,236,.84);font-size:1.06rem;max-width:46em;line-height:1.75}
@media(max-width:980px){
  .aanbod-hero-grid,.aanbod-intro-grid,.aanbod-hosts-inner{grid-template-columns:1fr;gap:38px}
  }
@media(max-width:680px){
  .aanbod-hero{padding:120px 0 70px}
  .aanbod-intro{padding:66px 0}
  .aanbod-events{padding:76px 0 82px}
  .aanbod-hosts{padding:72px 0}
}

/* v0183 Unified page H1 size
   All main page H1 titles use the homepage H1 scale.
*/
:where(
  .home-hero h1,
  .rh-title,
  .podcast-hero h1,
  .podcast-title,
  .aanbod-hero h1,
  .team-title,
  .blog-hero h1,
  .blog-post-hero-copy h1,
  .contact-hero h1,
  .guestblog-hero h1,
  .privacy-hero h1
){
  font-size:var(--ls-page-h1-size, clamp(3rem, 6.5vw, 5.6rem)) !important;
}

/* v0183 Safety net for top-level page heroes */
body :is(
  #home-hero-title,
  #ruimte-hero-title,
  #team-title,
  .blog-post-hero-copy > h1,
  .contact-hero-title,
  .guestblog-title,
  .privacy-title
){
  font-size:var(--ls-page-h1-size, clamp(3rem, 6.5vw, 5.6rem)) !important;
}

/* v0184 Simple fixed desktop H1 scale
   Desktop:
   - homepage H1: 85px
   - all other main H1s: 70px
   Mobile/tablet remains safe and consistent.
*/
:root{
  --ls-page-h1-size:70px;
  --ls-home-h1-size:90px;
  --ls-mobile-page-h1-size:clamp(2.55rem, 11vw, 4.35rem);
}

:where(
  .rh-title,
  .podcast-hero h1,
  .podcast-title,
  .aanbod-hero h1,
  .team-title,
  .blog-hero h1,
  .blog-post-hero-copy h1,
  .contact-hero h1,
  .guestblog-hero h1,
  .privacy-hero h1
){
  font-size:var(--ls-page-h1-size) !important;
}

:where(.home-hero h1, #home-hero-title){
  font-size:var(--ls-home-h1-size) !important;
}

body :is(
  #ruimte-hero-title,
  #team-title,
  .blog-post-hero-copy > h1,
  .contact-hero-title,
  .guestblog-title,
  .privacy-title
){
  font-size:var(--ls-page-h1-size) !important;
}

@media(max-width:680px){
  :where(
    .home-hero h1,
    #home-hero-title,
    .rh-title,
    .podcast-hero h1,
    .podcast-title,
    .aanbod-hero h1,
    .team-title,
    .blog-hero h1,
    .blog-post-hero-copy h1,
    .contact-hero h1,
    .guestblog-hero h1,
    .privacy-hero h1
  ),
  body :is(
    #ruimte-hero-title,
    #team-title,
    .blog-post-hero-copy > h1,
    .contact-hero-title,
    .guestblog-title,
    .privacy-title
  ){
    font-size:var(--ls-mobile-page-h1-size) !important;
  }
}

/* v0207 Real event card + Weeztix modal */
.aanbod-event-card--real .event-card-details{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}

.aanbod-event-card--real .event-card-details span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(44,38,32,.10);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:rgba(44,38,32,.62);
  font-size:.82rem;
  font-weight:500;
  line-height:1;
}

.event-card-link--button{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
  font:inherit;
}

/* v0249: ticket modal CSS lives in styles/components/cards.css; page CSS must not override global modal component. */

/* v0209 Restored red event submission row + Weeztix modal fix */
.aanbod-submit-row{
  position:relative;
  overflow:hidden;
  padding:76px 0;
  background:
    radial-gradient(380px 240px at 92% 0%, rgba(255,255,255,.12), transparent 70%),
    linear-gradient(135deg, #b5623e 0%, #c36a42 100%);
  color:#fff;
}

.aanbod-submit-row::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-120px;
  width:300px;
  height:300px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
}

.aanbod-submit-row-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:34px;
  align-items:center;
}

.aanbod-submit-row .eyebrow{
  color:rgba(255,255,255,.76);
}

.aanbod-submit-row .eyebrow::before{
  background:rgba(255,255,255,.42);
}

.aanbod-submit-row h2{
  max-width:14ch;
  margin:14px 0 14px;
  color:#fff;
  font-family:var(--serif);
  font-size:clamp(2.2rem,4vw,3.55rem);
  line-height:1.04;
  letter-spacing:-.045em;
}

.aanbod-submit-row p{
  max-width:690px;
  margin:0;
  color:rgba(255,255,255,.84);
  font-size:1.06rem;
  line-height:1.72;
}

.aanbod-submit-row .btn-light{
  background:#fff;
  color:var(--ink);
}

.aanbod-submit-row .btn-light:hover{
  background:var(--cream);
}

/* v0249: removed legacy ticket modal loading/fallback rules; shared in styles/components/cards.css. */

@media(max-width:980px){
  .aanbod-submit-row-inner{
    grid-template-columns:1fr;
    align-items:start;
  }

  .aanbod-submit-row .btn{
    width:max-content;
  }
}

@media(max-width:680px){
  .aanbod-submit-row{
    padding:64px 0;
  }
}

/* v0249: removed duplicate ticket lightbox rules from aanbod.css to protect Event Ticket Modal v1.0. */

/* v0216 Final LifeSkool event card
   Chosen direction: Variant G, cleaned to one reusable event card component.
   Host(s) first, organiser shown as "Door [organisatie]" with a subtle building icon.
*/
.aanbod-events-section--final{
  padding-top:clamp(76px,9vw,118px);
}

.aanbod-event-grid--final{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}

.event-card-final{
  position:relative;
  overflow:hidden;
  height:100%;
  border:1px solid rgba(44,38,32,.09);
  border-radius:28px;
  background:rgba(255,252,246,.88);
  box-shadow:0 26px 62px -52px rgba(44,38,32,.38);
}

.event-card-final::after{
  content:"";
  position:absolute;
  right:-78px;
  top:-86px;
  width:210px;
  height:180px;
  border-radius:48% 52% 44% 56%;
  background:rgba(181,98,62,.055);
  pointer-events:none;
}

.event-card-final-image{
  position:relative;
  display:block;
  aspect-ratio:16 / 10.2;
  overflow:hidden;
  text-decoration:none;
}

.event-card-final-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}

.event-card-final:hover .event-card-final-image img{
  transform:scale(1.035);
}

.event-card-final-date{
  position:absolute;
  top:14px;
  left:14px;
  display:grid;
  place-items:center;
  min-width:58px;
  min-height:58px;
  padding:8px;
  border-radius:16px;
  background:rgba(255,252,246,.92);
  box-shadow:0 14px 28px -22px rgba(44,38,32,.5);
}

.event-card-final-date strong{
  color:var(--terracotta);
  font-family:var(--serif);
  font-size:1.55rem;
  line-height:.92;
}

.event-card-final-date small{
  color:var(--ink-soft);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.event-card-final-price{
  position:absolute;
  top:16px;
  right:16px;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:7px 11px;
  border-radius:999px;
  background:var(--terracotta);
  color:#fff;
  font-size:.82rem;
  font-weight:800;
}

.event-card-final-body{
  position:relative;
  z-index:1;
  display:grid;
  gap:14px;
  padding:24px;
}

.event-card-final h3{
  margin:0;
  color:var(--ink);
  font-family:var(--serif);
  font-size:clamp(1.38rem,2vw,1.82rem);
  line-height:1.08;
  letter-spacing:-.035em;
}

.event-card-final p{
  margin:0;
  color:var(--ink-soft);
  line-height:1.62;
  font-size:.95rem;
}

.event-card-hostline{
  display:flex;
  align-items:center;
  min-width:0;
}

.event-card-hostline .event-host-avatar + .event-host-avatar{
  margin-left:-10px;
}

.event-host-avatar{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:linear-gradient(135deg, rgba(181,98,62,.16), rgba(241,233,212,.78));
  color:var(--terracotta);
  font-weight:800;
  border:2px solid rgba(255,255,255,.76);
  box-shadow:0 12px 26px -22px rgba(44,38,32,.52);
}

.event-hosts-text{
  min-width:0;
  margin-left:10px;
  color:rgba(44,38,32,.72);
  font-size:.9rem;
  font-weight:600;
  line-height:1.35;
}

.event-hosts-text strong{
  font-weight:700;
}

.event-card-mini-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  color:rgba(44,38,32,.64);
  font-size:.88rem;
}

.event-card-mini-meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.event-card-mini-icon{
  width:18px;
  height:18px;
  color:var(--terracotta);
  flex:0 0 18px;
}

.event-card-dual-actions{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  margin-top:4px;
}

.event-card-more,
.event-card-ticket{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  border-radius:999px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}

.event-card-more{
  border:1px solid rgba(44,38,32,.12);
  background:rgba(255,255,255,.48);
  color:var(--ink);
}

.event-card-more:hover{
  border-color:rgba(181,98,62,.24);
  color:var(--terracotta);
}

.event-card-ticket{
  border:0;
  padding:0 18px;
  background:var(--terracotta);
  color:#fff;
  font:inherit;
}

.event-card-ticket:hover{
  background:#a95635;
}

@media(max-width:980px){
  .aanbod-event-grid--final{
    grid-template-columns:1fr;
  }
}

/* v0217 Event grid restored with 6 cards
   Keeps one final card design, but fills the overview so the Aanbod page reads correctly.
*/
.aanbod-events-section--final{
  padding-top:clamp(88px,9vw,124px);
  padding-bottom:clamp(88px,9vw,124px);
}

.aanbod-events-heading{
  margin-bottom:34px;
}

.aanbod-event-grid--final{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
  align-items:stretch;
}

.aanbod-event-grid--final .event-card-final{
  min-width:0;
}

@media(max-width:1100px){
  .aanbod-event-grid--final{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:720px){
  .aanbod-event-grid--final{
    grid-template-columns:1fr;
  }
}

/* v0218 Aanbod events section heading polish
   Restore LifeSkool-consistent H2 styling for the events section.
*/
.aanbod-events-section .aanbod-events-heading{
  max-width:860px !important;
  margin-bottom:42px !important;
}

.aanbod-events-section .aanbod-events-heading .eyebrow{
  color:var(--terracotta) !important;
}

.aanbod-events-section .aanbod-events-heading h2{
  margin:10px 0 16px !important;
  max-width:12.5ch;
  color:var(--ink) !important;
  font-family:var(--serif) !important;
  font-size:clamp(2.85rem, 5vw, 4.35rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.05em !important;
}

.aanbod-events-section .aanbod-events-heading p{
  max-width:760px !important;
  margin:0 !important;
  color:var(--ink-soft) !important;
  font-size:1.08rem !important;
  line-height:1.72 !important;
}

@media(max-width:680px){
  .aanbod-events-section .aanbod-events-heading{
    margin-bottom:30px !important;
  }

  .aanbod-events-section .aanbod-events-heading h2{
    max-width:11.5ch;
    font-size:clamp(2.3rem, 10vw, 3.45rem) !important;
    line-height:1.04 !important;
  }

  .aanbod-events-section .aanbod-events-heading p{
    font-size:1rem !important;
    line-height:1.68 !important;
  }
}


/* v0221 Event host profile photos */
.event-host-avatar--image{
  overflow:hidden;
  position:relative;
  background:linear-gradient(135deg, rgba(181,98,62,.16), rgba(241,233,212,.78));
}

.event-host-avatar--image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
}

.event-host-avatar--image .event-host-avatar-fallback{
  display:none;
}

.event-host-avatar--image img[src=""],
.event-host-avatar--image img:not([src]){
  display:none;
}

.event-host-avatar--image img[src=""] + .event-host-avatar-fallback,
.event-host-avatar--image img:not([src]) + .event-host-avatar-fallback{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
}

/* v0224 Event card action icons + title refinement */
.event-card-final h3{
  font-size:clamp(1.24rem,1.55vw,1.56rem) !important;
  line-height:1.12 !important;
  letter-spacing:-.034em !important;
}

.event-card-final h3 .event-card-title-line{
  display:block;
}

.event-card-dual-actions{
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) !important;
  gap:12px !important;
}

.event-card-more,
.event-card-ticket{
  gap:8px !important;
  padding:0 16px !important;
  white-space:nowrap;
}

.event-card-more{
  color:var(--ink);
}

.event-card-ticket{
  min-width:0;
}

.event-action-icon{
  width:19px;
  height:19px;
  flex:0 0 19px;
}

.event-action-icon--info{
  color:var(--terracotta);
}

.event-action-icon--ticket{
  color:currentColor;
}

.event-hosts-text strong{
  font-weight:700;
}

@media(max-width:420px){
  .event-card-dual-actions{
    grid-template-columns:1fr !important;
  }

  .event-card-more,
  .event-card-ticket{
    width:100%;
  }
}

/* v0225 Event card host organizer + date meta */
.event-hosts-organizer{
  display:inline-block;
  margin-left:6px;
  color:rgba(44,38,32,.55);
  font-weight:600;
}

.event-hosts-organizer::before{
  content:"·";
  margin-right:6px;
  color:rgba(44,38,32,.34);
}

.event-card-mini-meta{
  gap:10px 18px !important;
}

.event-card-mini-meta span{
  white-space:nowrap;
}

.event-card-mini-icon--calendar{
  color:var(--terracotta);
}

@media(max-width:420px){
  .event-card-mini-meta span{
    white-space:normal;
  }
}

/* v0226 Event load-more aligned with Blog */
.aanbod-events-load-more{
  display:flex;
  justify-content:center;
  margin-top:48px;
}

.aanbod-events-load-more[hidden]{
  display:none !important;
}

.aanbod-events-load-more-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:206px;
  min-height:54px;
  padding:0 26px;
  border:1px solid rgba(44,38,32,.12);
  border-radius:999px;
  background:rgba(255,252,246,.72);
  color:var(--ink);
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 18px 44px -40px rgba(44,38,32,.42);
  transition:transform .22s ease, border-color .22s ease, background .22s ease, color .22s ease;
}

.aanbod-events-load-more-button::after{
  content:"↓";
  color:var(--terracotta);
  font-weight:900;
  line-height:1;
  transform:translateY(-1px);
}

.aanbod-events-load-more-button:hover,
.aanbod-events-load-more-button:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(181,98,62,.28);
  background:rgba(255,255,255,.88);
  color:var(--terracotta);
  outline:none;
}

.aanbod-event-grid--final .event-card-final[hidden],
.aanbod-event-grid--final .event-card-is-hidden{
  display:none !important;
}

.event-card-final.is-revealed{
  animation:eventCardReveal .42s ease both;
}

@keyframes eventCardReveal{
  from{
    opacity:0;
    transform:translateY(18px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media(max-width:680px){
  .aanbod-events-load-more{
    margin-top:34px;
  }

  .aanbod-events-load-more-button{
    width:100%;
  }
}

/* v0227 Event card ABCD design test */
.aanbod-events-section--abcd-test{
  padding-top:clamp(88px,9vw,124px);
  padding-bottom:clamp(88px,9vw,124px);
}

.aanbod-event-abcd-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}

.aanbod-event-abcd-grid .aanbod-event-variant{
  display:grid;
  gap:12px;
}

.aanbod-event-variant-label{
  display:inline-flex;
  width:max-content;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border:1px solid rgba(181,98,62,.18);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:var(--terracotta);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.event-card-final--test h3{
  font-size:clamp(1.28rem,1.62vw,1.62rem) !important;
  line-height:1.12 !important;
  letter-spacing:-.034em !important;
}

.event-card-final--test h3 .event-card-title-line{
  display:block;
}

.event-card-final--test .event-hosts-text{
  color:rgba(44,38,32,.70);
}

.event-card-final--test .event-hosts-text strong{
  font-weight:600;
}

.event-hosts-organizer{
  display:block;
  margin-top:3px;
  color:rgba(44,38,32,.54);
  font-size:.82rem;
  font-weight:500;
}

.event-hosts-organizer-badge{
  display:inline-flex;
  width:max-content;
  margin-top:6px;
  min-height:24px;
  align-items:center;
  padding:4px 9px;
  border:1px solid rgba(44,38,32,.10);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:rgba(44,38,32,.56);
  font-size:.76rem;
  font-weight:600;
}

.event-card-final--test .event-card-dual-actions{
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) !important;
  gap:12px !important;
}

.event-card-final--test .event-card-more,
.event-card-final--test .event-card-ticket{
  gap:9px !important;
  padding:0 16px !important;
  white-space:nowrap;
}

.event-card-final--test .event-action-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
}

.event-card-final--test .event-card-mini-meta{
  gap:10px 16px;
}

.event-card-final--test .event-card-mini-meta span{
  white-space:nowrap;
}

@media(max-width:1280px){
  .aanbod-event-abcd-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:720px){
  .aanbod-event-abcd-grid{
    grid-template-columns:1fr;
  }
}



/* v0228 Single event card + load more */
.aanbod-events-section--final{
  padding-top:clamp(88px,9vw,124px);
  padding-bottom:clamp(88px,9vw,124px);
}

.aanbod-event-grid--final{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px 24px;
  align-items:stretch;
}

.aanbod-event-grid--final .event-card-final{
  height:100%;
}

.aanbod-event-grid--final .event-card-final h3{
  font-size:clamp(1.36rem,1.72vw,1.74rem) !important;
  line-height:1.14 !important;
  letter-spacing:-.03em !important;
}

.aanbod-event-grid--final .event-card-title-line{
  display:block;
}

.aanbod-event-grid--final .event-hosts-text{
  color:rgba(44,38,32,.78);
  font-family:var(--serif);
  font-size:1rem;
  line-height:1.35;
}

.aanbod-event-grid--final .event-hosts-text strong{
  font-weight:500;
}

.aanbod-event-grid--final .event-card-mini-meta{
  gap:10px 16px;
}

.aanbod-event-grid--final .event-card-mini-meta span{
  white-space:nowrap;
}

.aanbod-event-grid--final .event-action-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
}

.aanbod-event-grid--final .event-card-dual-actions{
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) !important;
  gap:12px !important;
}

.aanbod-event-grid--final .event-card-more,
.aanbod-event-grid--final .event-card-ticket{
  gap:9px !important;
}

.aanbod-events-load-more{
  display:flex;
  justify-content:center;
  margin-top:34px;
}

.aanbod-events-load-more[hidden],
.aanbod-events-load-more-button[hidden]{
  display:none !important;
}

.aanbod-events-load-more-button{
  min-width:218px;
}

.aanbod-event-grid--final .event-card-final[hidden],
.aanbod-event-grid--final .event-card-is-hidden{
  display:none !important;
}

.aanbod-event-grid--final .event-card-final.is-revealed{
  animation:eventCardReveal .46s cubic-bezier(.22,.61,.36,1) both;
}

@media(max-width:1080px){
  .aanbod-event-grid--final{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:680px){
  .aanbod-event-grid--final{
    grid-template-columns:1fr;
    gap:22px;
  }

  .aanbod-events-load-more{
    margin-top:30px;
  }

  .aanbod-events-load-more-button{
    width:100%;
  }
}

/* v0230 Event card typography/date/organisation polish */
.aanbod-event-grid--final .event-hosts-text{
  font-family:var(--body) !important;
  font-size:.86rem !important;
  line-height:1.34 !important;
  color:rgba(44,38,32,.66) !important;
}

.aanbod-event-grid--final .event-hosts-text strong{
  font-weight:500 !important;
}

.aanbod-event-grid--final .event-card-more,
.aanbod-event-grid--final .event-card-ticket{
  font-weight:800 !important;
}

.aanbod-event-grid--final .event-card-more span,
.aanbod-event-grid--final .event-card-ticket span{
  font-weight:800 !important;
}



/* v0231 Event card host/date/organizer polish */
.aanbod-event-grid--final .event-hosts-text{
  font-family:var(--body) !important;
  font-size:.86rem !important;
  line-height:1.34 !important;
  color:rgba(44,38,32,.66) !important;
}

.aanbod-event-grid--final .event-hosts-text strong{
  font-weight:500 !important;
}

.aanbod-event-grid--final .event-card-more,
.aanbod-event-grid--final .event-card-ticket,
.aanbod-event-grid--final .event-card-more span,
.aanbod-event-grid--final .event-card-ticket span{
  font-weight:800 !important;
}

.event-card-mini-icon--organizer-check{
  color:var(--terracotta);
}


/* v0235 Load-more button label left + arrow down */
.aanbod-events-load-more-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  text-align:left !important;
  min-width:220px;
  padding-inline:26px !important;
}

.aanbod-events-load-more-button .load-more-label{
  flex:1 1 auto;
  text-align:left;
}

.aanbod-events-load-more-button .load-more-arrow{
  display:inline-flex;
  width:22px;
  height:22px;
  flex:0 0 22px;
  align-items:center;
  justify-content:center;
  font-size:1.05rem;
  font-weight:900;
  line-height:1;
  transform:translateY(-1px);
}

.aanbod-events-load-more-button:hover .load-more-arrow,
.aanbod-events-load-more-button:focus-visible .load-more-arrow{
  transform:translateY(1px);
}


/* v0236 Load-more button: centered text + right arrow */
.aanbod-events-load-more-button{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-width:224px;
  padding-inline:34px 58px !important;
}

.aanbod-events-load-more-button .load-more-label{
  display:block;
  width:100%;
  text-align:center;
}

.aanbod-events-load-more-button .load-more-arrow{
  position:absolute;
  right:26px;
  top:50%;
  display:inline-flex;
  width:22px;
  height:22px;
  align-items:center;
  justify-content:center;
  font-size:1.05rem;
  font-weight:900;
  line-height:1;
  transform:translateY(-50%);
  pointer-events:none;
}

.aanbod-events-load-more-button:hover .load-more-arrow,
.aanbod-events-load-more-button:focus-visible .load-more-arrow{
  transform:translateY(-42%);
}


/* v0238 Event card clickable area + lighter action button text */
.aanbod-event-grid--final .event-card-final[data-card-clickable="true"]{
  cursor:pointer;
}

.aanbod-event-grid--final .event-card-final[data-card-clickable="true"]:hover{
  transform:translateY(-3px);
}

.aanbod-event-grid--final .event-card-more,
.aanbod-event-grid--final .event-card-ticket,
.aanbod-event-grid--final .event-card-more span,
.aanbod-event-grid--final .event-card-ticket span{
  font-weight:400 !important;
}


/* v0239 Event card action buttons font-weight 400 */
.aanbod-event-grid--final .event-card-more,
.aanbod-event-grid--final .event-card-ticket,
.aanbod-event-grid--final .event-card-more span,
.aanbod-event-grid--final .event-card-ticket span{
  font-weight:400 !important;
}


/* v0251 — temporary compatibility patch for old Aanbod card overrides.
   The canonical Event Card v1.1 rules live in styles/components/cards.css.
   This scoped patch only prevents legacy Aanbod CSS from overriding the bottom-aligned CTA row.
*/
.aanbod-event-grid--final .event-card-final[data-component="event-card"]{
  display:flex;
  flex-direction:column;
}

.aanbod-event-grid--final .event-card-final[data-component="event-card"] .event-card-final-image{
  flex:0 0 auto;
}

.aanbod-event-grid--final .event-card-final[data-component="event-card"] .event-card-final-body{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
}

.aanbod-event-grid--final .event-card-final[data-component="event-card"] .event-card-dual-actions{
  margin-top:auto !important;
  padding-top:4px;
}


/* v0269 Section background rhythm
   Hero backgrounds stay clean/flat, but long content pages may use a soft
   full-width section background to create visual rhythm.
   Aanbod: the agenda/events row uses the LifeSkool sand tone.
*/
.aanbod-events-section--final{
  background:#efe7d3;
}

.aanbod-events-section--final .aanbod-events-wrap{
  position:relative;
  z-index:1;
}
