/* BSV Wamel. Ontwerp: bootspot.6-labs.com. Design by buniq.digital */
/* ---------------------------------------------------------------------------
   Elementor neutraal binnen het ontwerp. Containers en widgets dragen de klassen
   van het ontwerp (Geavanceerd > CSS-klassen); hun standaardopmaak (padding, gap,
   flex, breedte) zou die overschrijven. Deze basis staat bewust vóór de
   ontwerpregels: bij gelijke specificiteit winnen die daarna.
   --------------------------------------------------------------------------- */
:is(.bs,.bs-hdr) .e-con,.e-con:is(.bs,.bs-hdr){display:block;flex:0 1 auto;flex-direction:row;flex-wrap:nowrap;align-items:normal;justify-content:normal;align-content:normal;gap:normal;padding:0;margin:0;width:auto;max-width:none;min-width:auto;min-height:0;height:auto;position:static;overflow:visible;text-align:inherit;border-radius:0;z-index:auto;transition:none}
:is(.bs,.bs-hdr) .elementor-widget{position:static;margin:0;width:auto;max-width:none;min-width:auto;flex:0 1 auto;align-self:auto;order:0}
/* Kop- en knopwidgets: de klassen staan op het element zelf (h2, a), de omhullende div telt niet mee in de opmaak. */
body:not(.elementor-editor-active) :is(.bs,.bs-hdr) .elementor-widget:not([class*=" bs"]),
:is(.bs,.bs-hdr) .elementor-button-wrapper,:is(.bs,.bs-hdr) .elementor-button-content-wrapper{display:contents}
:is(.bs,.bs-hdr) .elementor-heading-title{font-size:inherit;line-height:inherit;color:inherit}
:is(.bs,.bs-hdr) .elementor-button{display:inline;background:none;border-radius:0;color:inherit;fill:currentColor;font-size:inherit;line-height:inherit;padding:0;text-align:inherit;transition:none}
:is(.bs,.bs-hdr) .elementor-button-text{display:inline}
:is(.bs,.bs-hdr) .elementor-widget-image img{display:block;vertical-align:baseline}

:root{--c-ink:#160810;--c-paper:#FDF0F6;--c-brand:#C8006B;--c-accent:#FF4AA8}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
:root{
  --font-body:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-display:var(--font-body);
  --gutter:clamp(1.25rem,5vw,4rem);
  --max:80rem;
  --radius:clamp(.75rem,1.5vw,1.5rem);
  --btn-radius:999px;
  --ease:cubic-bezier(.16,1,.3,1);
}
:root body{margin:0;background:var(--c-paper);color:var(--c-ink);font-family:var(--font-body);font-weight:var(--body-weight,400);font-size:clamp(1rem,.95rem + .25vw,1.125rem);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
:root img,:root svg{display:block;max-width:100%}
:root img{height:auto}
:root h1,:root h2,:root h3,:root p,:root figure,:root ul{margin:0}
:root ul{padding:0;list-style:none}
:root .wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
:root .section{padding-block:clamp(4rem,10vw,9rem)}
:root .h-display,:root .h-section{font-family:var(--font-display);font-weight:var(--display-weight,700);letter-spacing:var(--display-tracking,-.025em);text-transform:var(--display-case,none);text-wrap:balance;hyphens:auto}
:root .h-display{font-size:clamp(2.5rem,1.6rem + 4.6vw,6.25rem);line-height:var(--lh-display,1.02)}
:root .h-section{font-size:clamp(2rem,1.45rem + 2.6vw,4rem);line-height:var(--lh-section,1.06)}
:root .lede{font-size:clamp(1.125rem,1rem + .6vw,1.5rem);line-height:1.45;text-wrap:pretty}
:root .prose{display:grid;gap:1em;text-wrap:pretty}
:root .eyebrow{font-family:var(--label-font,var(--font-body));font-size:.8125rem;font-weight:600;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,currentColor max(80%,var(--min-mix,0%)),transparent)}
:root .head{display:grid;gap:clamp(1rem,2vw,1.5rem);max-width:48rem}
:root .head .lede{max-width:40rem;white-space:pre-line}
:root .card{border:var(--card-border,1px solid color-mix(in srgb,currentColor 14%,transparent));border-radius:var(--radius);box-shadow:var(--card-shadow,none)}
:root .prose a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
:root .btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;max-width:100%;padding:.75em 1.5em;border:var(--btn-border,0);border-radius:var(--btn-radius);box-shadow:var(--btn-shadow,none);font-weight:600;line-height:1.25;letter-spacing:var(--btn-tracking,normal);text-transform:var(--btn-case,none);text-align:center;text-decoration:none;overflow-wrap:anywhere;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
:root .btn--solid{background:var(--btn-bg);color:var(--btn-fg)}
:root .btn--ghost{color:inherit;border:2px solid currentColor;box-shadow:none}
:root .btn:hover{transform:translateY(-2px)}
:root .btn--solid:hover{box-shadow:var(--btn-shadow-hover,var(--btn-shadow,none))}
:root .btn:focus-visible,:root a:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
:root .actions{display:flex;flex-wrap:wrap;gap:.75rem}
:root .surface{background:var(--bg);color:var(--fg);--soft:color-mix(in srgb,var(--fg) max(66%,var(--min-mix,0%)),var(--bg));--line:color-mix(in srgb,var(--fg) 14%,var(--bg))}
:root .shead{display:grid;gap:clamp(1rem,2vw,1.5rem);max-width:52rem;margin-bottom:clamp(2.5rem,5vw,4rem)}
:root .shead__intro{color:var(--soft);max-width:44rem;white-space:pre-line}
:root .eyebrow{font-size:.8125rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
:root .chips{display:flex;flex-wrap:wrap;gap:.375rem}
:root .chip{display:inline-block;padding:.25rem .5rem;border-radius:4px;box-shadow:inset 0 0 0 1px var(--line);font-size:.75rem;font-weight:600;line-height:1.2;color:var(--soft)}
:root .w{display:inline-block;vertical-align:bottom;max-width:100%;overflow:clip;padding-block:.12em;margin-block:-.12em;overflow-wrap:anywhere}
:root .wi{display:inline-block}
:root.motion [data-block]:not([data-motion="off"]) [data-words] .wi{transform:translateY(115%)}
:root.motion [data-block]:not([data-motion="off"]) [data-fade]{opacity:0}
@media (prefers-reduced-motion:reduce){:root .btn{transition:none}:root .btn:hover{transform:none}}

:root{--font-display:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-body:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

@font-face{font-family:"BS Bricolage";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/bricolage-latin-wght-normal.woff2) format("woff2")}
@font-face{font-family:"BS Archivo";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/archivo-latin-wght-normal.woff2) format("woff2")}
:root{
  --font-body:"BS Archivo",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-display:"BS Bricolage","BS Archivo",ui-sans-serif,system-ui,sans-serif;
  --bs-plum:var(--c-ink);
  --bs-plum-2:color-mix(in srgb,var(--c-brand) 8%,var(--c-ink));
  --bs-wine:color-mix(in srgb,var(--c-brand) 30%,var(--c-ink));
  --bs-blush:color-mix(in srgb,var(--c-accent) 30%,var(--c-paper));
  --bs-shade:color-mix(in srgb,var(--c-brand) 58%,var(--c-ink));
  --bs-shade-2:color-mix(in srgb,var(--c-accent) 52%,var(--c-ink));
  --bs-muted:color-mix(in srgb,var(--c-paper) 76%,var(--c-ink));
  --bs-line:color-mix(in srgb,var(--c-paper) 14%,var(--c-ink));
  --bs-bounce:cubic-bezier(.34,1.56,.64,1);
}
:root body{background:var(--c-ink);color:var(--c-paper)}
:root .bs{position:relative;background:var(--bs-plum);color:var(--c-paper);font-family:var(--font-body);overflow-x:clip}
:root .bs--alt{background:var(--bs-plum-2)}
:root .bs h1,:root .bs h2,:root .bs h3{font-family:var(--font-display);font-weight:800;letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance}
:root .bs h3{text-transform:none;letter-spacing:-.015em;line-height:1.05}
:root .bs-sec{padding-block:clamp(4.5rem,10vw,8.5rem)}
:root .bs-h2{font-size:clamp(2.5rem,1.15rem + 5.4vw,5.75rem);line-height:.9}
:root .bs-kicker{display:block;font-size:.8125rem;font-weight:800;line-height:1.3;letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent)}
:root .bs-lead{font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);line-height:1.6;color:var(--bs-muted);max-width:44ch;text-wrap:pretty;white-space:pre-line}
:root .bs-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(2.25rem,5vw,3.5rem)}
:root .bs-head__t{display:grid;gap:.85rem;min-width:0}
:root .bs-more{display:inline-flex;align-items:center;gap:.6rem;min-height:2.75rem;padding-right:.35rem;color:var(--c-accent);font-weight:800;text-decoration:none}
:root .bs-more::after{content:"";width:.6rem;height:.6rem;border:2.5px solid currentColor;border-left:0;border-bottom:0;transform:rotate(45deg);transition:transform .4s var(--ease)}
:root .bs-more:hover::after{transform:translateX(.25rem) rotate(45deg)}
:root .bs-sticker{display:inline-block;padding:.5rem 1.05rem;border-radius:999px;background:var(--c-accent);color:var(--c-ink);font:800 clamp(.75rem,.7rem + .2vw,.875rem)/1.2 var(--font-body);letter-spacing:.05em;text-transform:uppercase;box-shadow:0 .375rem 0 var(--bs-shade-2);transform:rotate(-3deg)}
:root .bs-sticker--magenta{background:var(--c-brand);color:var(--c-paper);box-shadow:0 .375rem 0 var(--bs-shade)}
:root .bs-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;max-width:100%;padding:.85rem 1.75rem;border-radius:999px;background:var(--c-brand);color:var(--c-paper);font:800 1rem/1.2 var(--font-body);text-align:center;text-decoration:none;overflow-wrap:anywhere;box-shadow:0 .45rem 0 var(--bs-shade);transition:transform .25s var(--bs-bounce),box-shadow .25s var(--bs-bounce),background-color .3s}
:root .bs-btn:hover{transform:translateY(-3px);box-shadow:0 .6rem 0 var(--bs-shade)}
:root .bs-btn:active{transform:translateY(.3rem);box-shadow:0 .15rem 0 var(--bs-shade)}
:root .bs-btn--sm{min-height:2.75rem;padding:.55rem 1.25rem;font-size:.9375rem;box-shadow:0 .3rem 0 var(--bs-shade)}
:root .bs-btn--ghost{background:transparent;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--c-paper) 32%,transparent)}
:root .bs-btn--ghost:hover,:root .bs-btn--ghost:active{box-shadow:inset 0 0 0 2px var(--c-paper)}
:root .bs-btn--light{background:var(--c-paper);color:var(--c-brand);box-shadow:0 .45rem 0 var(--bs-shade)}
:root .bs-btns{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
:root .bs-shape{position:absolute;pointer-events:none}
:root .bs-shape svg{display:block;width:100%;height:100%;overflow:visible}
:root .bs-defs{position:absolute;width:0;height:0;overflow:hidden}
:root .bs a:focus-visible,:root .bs button:focus-visible,:root .bs summary:focus-visible{outline:3px solid var(--c-accent);outline-offset:4px}
::selection{background:var(--c-brand);color:var(--c-paper)}
@media (prefers-reduced-motion:reduce){:root .bs-btn,:root .bs-more::after{transition:none}:root .bs-btn:hover,:root .bs-btn:active{transform:none}}
:root.motion .bs:not([data-motion="off"]) .bs-pop{transform:scale(0)}


:root .bs-hdr{position:fixed;top:0;left:0;right:0;z-index:40;border-bottom:1px solid transparent;transition:background-color .4s,border-color .4s}
:root .bs-hdr.is-solid{background:color-mix(in srgb,var(--c-ink) 90%,transparent);border-color:var(--bs-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
:root .bs-hero~.bs-hero .bs-hdr{position:absolute}
:root .bs-hdr__in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:4.75rem}
:root .bs-hdr__brand{display:flex;align-items:baseline;gap:.5rem;flex:none;min-height:2.75rem;align-items:center;color:var(--c-paper);text-decoration:none}
:root .bs-hdr__logo{width:auto;height:2.6rem;overflow:visible}
:root .bs-hdr__line{fill:none;stroke:var(--c-accent);stroke-width:70;stroke-linecap:round;stroke-linejoin:round}
:root .bs-hdr__place{padding:.3rem .55rem;border-radius:999px;background:var(--c-accent);color:var(--c-ink);font:800 .6875rem/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;transform:rotate(-4deg)}
:root .bs-hdr__nav{display:flex;align-items:center;gap:clamp(1.1rem,2.2vw,2.25rem);font-size:.9688rem;font-weight:700}
:root .bs-hdr__nav a,:root .bs-hdr__more a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;color:var(--c-paper);text-decoration:none}
:root .bs-hdr__nav a:not(.bs-hdr__cta)::after{content:"";position:absolute;left:0;right:0;bottom:.55rem;height:2px;border-radius:2px;background:var(--c-accent);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
:root .bs-hdr__nav a:not(.bs-hdr__cta):hover::after{transform:scaleX(1);transform-origin:left}
:root .bs-hdr .bs-hdr__cta{padding:0 1.25rem;border-radius:999px;background:var(--c-paper);color:var(--c-brand);font-weight:800;box-shadow:0 .3rem 0 var(--bs-shade);transition:transform .25s var(--bs-bounce),box-shadow .25s var(--bs-bounce)}
:root .bs-hdr .bs-hdr__cta:hover{transform:translateY(-2px);box-shadow:0 .45rem 0 var(--bs-shade)}
:root .bs-hdr__more{display:none;position:relative}
:root .bs-hdr__more summary{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:999px;background:var(--c-brand);box-shadow:0 .25rem 0 var(--bs-shade);cursor:pointer;list-style:none}
:root .bs-hdr__more summary::-webkit-details-marker{display:none}
:root .bs-hdr__more summary i,:root .bs-hdr__more summary i::before,:root .bs-hdr__more summary i::after{display:block;width:1.1rem;height:2.5px;border-radius:2px;background:var(--c-paper);transition:transform .3s var(--ease)}
:root .bs-hdr__more summary i{position:relative}
:root .bs-hdr__more summary i::before,:root .bs-hdr__more summary i::after{content:"";position:absolute;left:0}
:root .bs-hdr__more summary i::before{top:-6px}
:root .bs-hdr__more summary i::after{top:6px}
:root .bs-hdr__more[open] summary i{background:transparent}
:root .bs-hdr__more[open] summary i::before{transform:translateY(6px) rotate(45deg)}
:root .bs-hdr__more[open] summary i::after{transform:translateY(-6px) rotate(-45deg)}
:root .bs-hdr__more nav{position:absolute;right:0;top:calc(100% + .75rem);display:grid;gap:.25rem;min-width:14rem;padding:.75rem;border-radius:1.25rem;background:var(--bs-plum-2);box-shadow:0 24px 48px -20px #000,inset 0 0 0 1px var(--bs-line)}
:root .bs-hdr__more nav a{padding:.25rem .875rem;border-radius:.75rem;font-weight:700}
:root .bs-hdr__more nav .bs-hdr__cta{justify-content:center;margin-top:.5rem}
:root .bs-hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:calc(4.75rem + clamp(5rem,10vw,8rem)) 0 clamp(4rem,8vw,6rem);background:radial-gradient(130% 100% at 50% -5%,var(--bs-wine) 0%,color-mix(in srgb,var(--c-brand) 14%,var(--c-ink)) 42%,var(--c-ink) 78%);isolation:isolate}
:root .bsh-bunting{position:absolute;left:0;right:0;top:4.25rem;z-index:-1;height:clamp(4.5rem,9vw,7.5rem);pointer-events:none}
:root .bsh-bunting svg{width:100%;height:100%;overflow:visible}
:root .bs-bunting__swing{transform-box:fill-box;transform-origin:50% 0}
:root .bsh-floaters{position:absolute;inset:0;z-index:-1;pointer-events:none}
:root .bsh-float{margin:-1rem 0 0 -1rem}
:root .bsh-pop,:root .bsh-bob{display:block;width:100%;height:100%}
:root .bsh-in{display:flex;flex-direction:column;align-items:center;text-align:center}
:root .bsh-badge{margin-bottom:clamp(1.25rem,3vw,2rem)}
:root .bsh-h1{width:100%;font-size:clamp(3rem,.6rem + 8.2vw,10rem);line-height:.86;letter-spacing:-.035em}
:root .bsh-l{display:block}
:root .bsh-stick{position:relative;display:inline-block;color:var(--c-accent);transform:rotate(-4deg);text-shadow:0 .035em 0 var(--c-brand),0 .07em 0 var(--bs-shade);margin-block:.06em .02em}
:root .bsh-burst{position:absolute;left:50%;top:50%;width:0;height:0}
:root .bsh-bit{position:absolute;left:-.09em;top:-.09em;width:.18em;height:.18em;display:none}
:root .bsh-lead{margin-top:clamp(1.75rem,3.5vw,2.5rem);margin-inline:auto}
:root .bsh-ctas{justify-content:center;margin-top:clamp(1.75rem,3.5vw,2.5rem)}
:root.motion .bs-hero:not([data-motion="off"]) .bsh-bit{display:block;transform:scale(0)}
:root.motion .bs-hero:not([data-motion="off"]) .bs-bunting__rope{stroke-dasharray:1 2;stroke-dashoffset:1.08}
:root.motion .bs-hero:not([data-motion="off"]) .bs-bunting__flag{transform:translateY(-120px)}
:root.motion .bs-hero:not([data-motion="off"]) .bsh-stick{opacity:0}
@media (max-width:56em){
  :root .bs-hdr__nav{display:none}
  :root .bs-hdr__more{display:block}
  :root .bs-hdr__in{height:4rem}
  :root .bsh-bunting{top:3.5rem;height:6.5rem}
  :root .bsh-float:nth-child(n+4){display:none}
  :root .bsh-float{scale:.7}
}
:root .bs-intro{display:none;position:fixed;inset:0;z-index:100;overflow:hidden;background:radial-gradient(120% 90% at 50% 50%,var(--bs-wine),var(--c-ink) 70%);color:var(--c-paper)}
html.motion:not(.intro-seen) .bs-hero:not([data-motion="off"]) .bs-intro{display:block}
:root .bs-hero~.bs-hero .bs-intro,:root .bs-intro[hidden]{display:none!important}
html:has(:target) .bs-intro{display:none!important}
html.bs-intro-on,html.bs-intro-on body{overflow:hidden}
:root .bsi-film{position:absolute;inset:0;width:100%;height:100%}
:root .bsi-water{fill:color-mix(in srgb,var(--c-brand) 12%,var(--c-ink))}
:root .bsi-c{transform-box:fill-box;transform-origin:50% 50%}
:root .bsi-logo{fill:none;stroke:var(--c-paper);stroke-width:68;stroke-linecap:round;stroke-linejoin:round;transition:stroke .6s}
:root .bsi-logo--hull{stroke:var(--c-accent)}
:root .bsi-boat__fill{fill:var(--bs-plum-2)}
:root .bsi-boat.is-lit .bsi-logo{stroke:var(--c-accent)}
:root .bsi-boat.is-lit{filter:drop-shadow(0 0 18px color-mix(in srgb,var(--c-accent) 70%,transparent))}
:root .bsi-sign{transform-origin:0 600px}
:root .bsi-sign__t{font:800 32px var(--font-display);letter-spacing:-.01em;fill:var(--c-ink)}
:root .bsi-balloon,:root .bsi-flame,:root .bsi-tub{transform-box:fill-box;transform-origin:50% 100%}
:root .bsi-title{position:absolute;inset:0;display:grid;place-content:end center;justify-items:center;padding:0 var(--gutter) clamp(6rem,17vh,11rem);text-align:center;pointer-events:none}
:root .bsi-tag{max-width:24ch;font:800 clamp(1.125rem,.9rem + 1.2vw,1.875rem)/1.15 var(--font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--c-accent);text-wrap:balance}
:root .bsi-curtain{position:absolute;inset:-2px 0;background:var(--c-brand)}
:root .bsi-ui{position:absolute;left:var(--gutter);right:var(--gutter);bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:1.25rem}
:root .bsi-bar{flex:1;height:3px;border-radius:3px;background:var(--bs-line);overflow:hidden}
:root .bsi-bar i{display:block;height:100%;background:var(--c-accent);transform:scaleX(0);transform-origin:left}
:root .bsi-skip{min-height:2.75rem;padding:0 1.15rem;border:0;border-radius:999px;background:color-mix(in srgb,var(--c-paper) 12%,transparent);color:var(--c-paper);font:800 .9375rem var(--font-body);cursor:pointer}
:root .bsi-skip:hover{background:color-mix(in srgb,var(--c-paper) 22%,transparent)}
:root .bsi-skip:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
:root.motion .bs-hero:not([data-motion="off"]) .bsi-curtain{transform:translateY(102%)}
:root.motion .bs-hero:not([data-motion="off"]) .bsi-c,:root.motion .bs-hero:not([data-motion="off"]) .bsi-sign{transform:scale(0)}
:root.motion .bs-hero:not([data-motion="off"]) .bsi-scene,:root.motion .bs-hero:not([data-motion="off"]) .bsi-tag,:root.motion .bs-hero:not([data-motion="off"]) .bsi-boat__fill{opacity:0}
:root.motion .bs-hero:not([data-motion="off"]) .bsi-logo,:root.motion:has(.bs-hero) .bs-hdr__line{stroke-dasharray:1 2;stroke-dashoffset:1.08}


:root .bss{display:grid;padding-block:clamp(3.5rem,8vw,6rem);overflow:hidden}
:root .bss-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;white-space:nowrap;clip:rect(0 0 0 0)}
:root .bss-band{grid-area:1/1;width:112%;margin-left:-6%;padding-block:clamp(.7rem,1.4vw,1rem);border-block:3px solid var(--c-ink);background:var(--c-accent);color:var(--c-ink);transform:rotate(-2.5deg);overflow:hidden;z-index:1}
:root .bss-band--b{background:var(--c-brand);color:var(--c-paper);transform:rotate(2deg);z-index:0}
:root .bss-track{display:flex;align-items:center;width:max-content;will-change:transform}
:root .bss-item{padding-inline:clamp(1rem,2vw,1.75rem);font:800 clamp(1.375rem,1rem + 1.6vw,2.375rem)/1.1 var(--font-display);letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap}
:root .bss-star{flex:none;width:clamp(1rem,.8rem + .8vw,1.5rem);height:clamp(1rem,.8rem + .8vw,1.5rem)}
:root .bss-star svg{width:100%;height:100%}
:root.motion .bss:not([data-motion="off"]) .bss-band{clip-path:inset(0 50% 0 50%)}


:root .bst{padding-block:clamp(3.5rem,8vw,6.5rem)}
:root .bst-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:clamp(2rem,4vw,3rem) clamp(1.5rem,3vw,2.5rem);margin:0;text-align:center}
:root .bst-item{position:relative;display:flex;flex-direction:column-reverse;align-items:center;gap:.6rem;min-width:0}
:root .bst-item .bst-dd{margin:0;font:800 clamp(3rem,1.8rem + 4.2vw,5.5rem)/.9 var(--font-display);letter-spacing:-.04em;color:var(--c-accent);font-variant-numeric:tabular-nums;white-space:nowrap}
:root .bst-item .bst-dt{max-width:18ch;font-size:.8125rem;font-weight:800;line-height:1.35;letter-spacing:.16em;text-transform:uppercase;color:var(--bs-muted)}
:root .bst-mark{position:absolute;top:-1.4rem;left:calc(50% + clamp(2.5rem,5vw,4.5rem));width:clamp(1.75rem,1.4rem + 1vw,2.5rem);height:clamp(1.75rem,1.4rem + 1vw,2.5rem)}
:root .bst-num{display:inline-block;text-align:right}
:root.motion .bst:not([data-motion="off"]) .bst-item .bst-dd,:root.motion .bst:not([data-motion="off"]) .bst-item .bst-dt{opacity:0}


:root .bsa-grid{display:grid;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem);padding-top:1rem}
:root .bsa-grid--1{--n:1}:root .bsa-grid--3{--n:3}
:root .bsa-card{position:relative;transform:rotate(var(--tilt));transition:transform .6s var(--bs-bounce)}
:root .bsa-card:hover{transform:rotate(0deg) translateY(-.5rem)}
:root .bsa-frame{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:100%;aspect-ratio:5/6;border:3px solid var(--c-accent);border-radius:1.75rem;overflow:hidden;background:var(--bs-wine);box-shadow:0 30px 60px -30px #000}
:root .bsa-grid--1 .bsa-frame{aspect-ratio:16/9}
:root .bsa-card--magenta .bsa-frame{border-color:var(--c-brand)}
:root .bsa-photo{position:absolute;inset:-8% 0;overflow:hidden}
:root .bsa-photo img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(1.05);transition:transform 1s var(--ease)}
:root .bsa-card:hover .bsa-photo img{transform:scale(1.06)}
:root .bsa-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,color-mix(in srgb,var(--c-ink) 94%,transparent));pointer-events:none}
:root .bsa-body{display:grid;justify-items:start;gap:.85rem;padding:clamp(1.5rem,3vw,2.25rem)}
:root .bsa-body>:not(.bsa-link),:root .bsa-body>.elementor-widget>:not(.bsa-link){position:relative;z-index:1}
:root .bsa-body h3{font-size:clamp(1.75rem,1.2rem + 1.8vw,2.75rem);text-transform:uppercase;letter-spacing:-.02em;line-height:.95}
:root .bsa-body p{max-width:36ch;color:var(--bs-muted);font-size:1rem;line-height:1.55}
:root .bsa-link{display:inline-flex;align-items:center;gap:.55rem;min-height:2.75rem;color:var(--c-paper);font-weight:800;text-decoration:none}
:root .bsa-link::after{content:"";position:absolute;inset:0;z-index:2;border-radius:1.5rem}
:root .bsa-link::before{content:"→";order:2;color:var(--c-accent);transition:transform .35s var(--ease)}
:root .bsa-card:hover .bsa-link::before{transform:translateX(.3rem)}
:root .bsa-tape{position:absolute;z-index:2;top:-.85rem;left:50%;width:7.5rem;height:1.75rem;margin-left:-3.75rem;background:color-mix(in srgb,var(--bs-blush) 72%,transparent);transform:rotate(calc(var(--tilt) * -1.6));box-shadow:0 2px 6px -2px #0006}
@media (max-width:56em){:root .bsa-grid{--n:1!important}:root .bsa-frame,:root .bsa-grid--1 .bsa-frame{aspect-ratio:4/5}}
@media (prefers-reduced-motion:reduce){:root .bsa-card,:root .bsa-photo img{transition:none}:root .bsa-card:hover{transform:rotate(var(--tilt))}}
:root.motion .bsa:not([data-motion="off"]) .bsa-card{opacity:0}


:root .bsg-list{display:grid;gap:clamp(1rem,2vw,1.5rem);margin:0;padding:0;list-style:none}
:root .bsg-ticket{--stub:clamp(5.75rem,4.5rem + 4vw,9rem);position:relative;display:grid;grid-template-columns:var(--stub) minmax(0,1fr) auto;align-items:stretch;border-radius:1.25rem;background:var(--c-paper);color:var(--c-ink);box-shadow:0 22px 40px -26px #000;transition:transform .5s var(--bs-bounce)}
:root .bsg-ticket::before,:root .bsg-ticket::after{content:"";position:absolute;left:calc(var(--stub) - .8rem);width:1.6rem;height:1.6rem;border-radius:50%;background:var(--bs-plum)}
:root .bsg-ticket::before{top:-.8rem}
:root .bsg-ticket::after{bottom:-.8rem}
:root .bsg-ticket:hover{transform:translateX(.5rem)}
:root .bsg-stub{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:1.25rem .5rem;border-radius:1.25rem 0 0 1.25rem;border-right:3px dashed color-mix(in srgb,var(--c-paper) 55%,var(--c-brand));background:var(--c-brand);color:var(--c-paper);text-align:center;transform-origin:100% 0;transition:transform .5s var(--bs-bounce)}
:root .bsg-ticket:hover .bsg-stub{transform:rotate(-4deg)}
:root .bsg-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;white-space:nowrap;clip:rect(0 0 0 0)}
:root .bsg-day{font:800 clamp(2.25rem,1.6rem + 2.2vw,3.75rem)/.85 var(--font-display);letter-spacing:-.04em}
:root .bsg-month{font:800 1rem/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase}
:root .bsg-year{font-size:.8125rem;font-weight:700;color:color-mix(in srgb,var(--c-paper) 85%,var(--c-brand))}
:root .bsg-main{display:grid;align-content:center;gap:.35rem;padding:clamp(1.25rem,2.5vw,1.75rem) clamp(1.25rem,3vw,2.25rem);min-width:0}
:root .bsg-tag{font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--c-brand)}
:root .bsg-main h3{font-size:clamp(1.5rem,1.15rem + 1.3vw,2.25rem);text-transform:uppercase;letter-spacing:-.02em;line-height:1}
:root .bsg-text{color:color-mix(in srgb,var(--c-ink) 74%,var(--c-paper));font-size:.9688rem;line-height:1.5}
:root .bsg-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.75rem;padding:1.25rem clamp(1.25rem,3vw,2.25rem) 1.25rem 0}
:root .bsg-chip{display:inline-block;padding:.4rem .8rem;border-radius:999px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--c-ink) 18%,var(--c-paper));font-size:.8125rem;font-weight:800;white-space:nowrap}
:root .bsg-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:0 1.15rem;border-radius:999px;background:var(--c-ink);color:var(--c-paper);font-weight:800;font-size:.9375rem;text-decoration:none;box-shadow:0 .25rem 0 var(--bs-shade);transition:transform .25s var(--bs-bounce),box-shadow .25s var(--bs-bounce)}
:root .bsg-link:hover{transform:translateY(-2px);box-shadow:0 .4rem 0 var(--bs-shade)}
:root .bs .bsg-link:focus-visible{outline-color:var(--c-brand)}
:root .bsg-more{margin-top:clamp(1.5rem,3vw,2.25rem)}
@media (max-width:44em){
  :root .bsg-ticket{grid-template-columns:var(--stub) minmax(0,1fr)}
  :root .bsg-stub{grid-row:span 2}
  :root .bsg-side{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0 1.25rem 1.25rem}
  :root .bsg-main{padding-bottom:.75rem}
}
@media (prefers-reduced-motion:reduce){:root .bsg-ticket,:root .bsg-stub,:root .bsg-link{transition:none}:root .bsg-ticket:hover,:root .bsg-ticket:hover .bsg-stub{transform:none}}
:root.motion .bsg:not([data-motion="off"]) .bsg-ticket{opacity:0}


:root .bsy-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,6vw,6rem);align-items:center}
:root .bsy-copy{display:grid;justify-items:start;gap:clamp(1.1rem,2vw,1.5rem)}
:root .bsy-h2{font-size:clamp(2.25rem,1.2rem + 4.2vw,4.75rem)}
:root .bsy-h3{margin-top:clamp(.75rem,2vw,1.5rem);font-size:clamp(1.375rem,1.1rem + 1vw,1.875rem)}
:root .bsy-promises{display:grid;gap:.9rem;margin:0;padding:0;list-style:none}
:root .bsy-promise{display:flex;align-items:center;gap:1rem;font:700 clamp(1.0625rem,1rem + .4vw,1.3125rem)/1.35 var(--font-body)}
:root .bsy-stamp{flex:none;width:2.5rem;height:2.5rem;transform:rotate(-8deg)}
:root .bsy-stamp svg{width:100%;height:100%;overflow:visible}
:root .bsy-stamp circle{fill:var(--c-brand);stroke:var(--c-accent);stroke-width:2.5;stroke-dasharray:3 3}
:root .bsy-stamp path{fill:none;stroke:var(--c-paper);stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round}
:root .bsy-side{display:grid;justify-items:center;gap:clamp(2rem,4vw,3rem)}
:root .bsy-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.25rem);width:100%;max-width:34rem;margin:0;padding:1rem .5rem;list-style:none}
:root .bsy-pol{position:relative;transform:rotate(var(--r))}
:root .bsy-pol:nth-child(2n){margin-top:2.25rem}
:root .bsy-stack--3 .bsy-pol:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - clamp(.75rem,1.5vw,1.125rem));margin-top:-1rem}
:root .bsy-stack--1{grid-template-columns:minmax(0,1fr);max-width:22rem}
:root .bsy-pol figure{padding:.7rem .7rem 0;border-radius:.375rem;background:var(--c-paper);color:var(--c-ink);box-shadow:0 26px 50px -24px #000,0 2px 6px -2px #0008;transition:transform .45s var(--bs-bounce)}
:root .bsy-pol:hover figure{transform:translateY(-.75rem) rotate(-2deg) scale(1.03)}
:root .bsy-pol:hover{z-index:9}
:root .bsy-photo{aspect-ratio:1;overflow:hidden;border-radius:.2rem;background:var(--bs-wine)}
:root .bsy-photo img{width:100%;height:100%;object-fit:cover}
:root .bsy-pol figcaption{padding:.6rem .25rem .75rem;font:700 clamp(.9375rem,.85rem + .3vw,1.125rem)/1.2 var(--font-display);text-align:center}
:root .bsy-pol figure:not(:has(figcaption)){padding-bottom:2.25rem}
@media (max-width:56em){:root .bsy-grid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){:root .bsy-pol figure{transition:none}:root .bsy-pol:hover figure{transform:none}}
:root.motion .bsy:not([data-motion="off"]) .bsy-promise{opacity:0}


:root .bsn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:clamp(1.25rem,2.5vw,1.75rem)}
:root .bsn-card{position:relative;display:flex;flex-direction:column;border-radius:1.5rem;background:var(--bs-plum);box-shadow:inset 0 0 0 1px var(--bs-line);overflow:hidden;transition:transform .5s var(--bs-bounce),box-shadow .5s}
:root .bsn-card:hover{transform:translateY(-.4rem);box-shadow:inset 0 0 0 2px var(--c-accent)}
:root .bsn-photo{aspect-ratio:3/2;overflow:hidden;background:var(--bs-wine)}
:root .bsn-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
:root .bsn-card:hover .bsn-photo img{transform:scale(1.07)}
:root .bsn-body{display:grid;align-content:start;justify-items:start;gap:.55rem;padding:1.375rem 1.5rem 1.625rem}
:root .bsn-tag{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent)}
:root .bsn-body h3{font-size:clamp(1.3125rem,1.1rem + .6vw,1.625rem)}
:root .bsn-body p{color:var(--bs-muted);font-size:.9688rem;line-height:1.55}
:root .bsn-link{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;color:var(--c-paper);font-weight:800;text-decoration:none}
:root .bsn-link::before{content:"→";order:2;color:var(--c-accent);transition:transform .35s var(--ease)}
:root .bsn-link::after{content:"";position:absolute;inset:0;border-radius:1.5rem}
:root .bsn-card:hover .bsn-link::before{transform:translateX(.3rem)}
@media (prefers-reduced-motion:reduce){:root .bsn-card,:root .bsn-photo img{transition:none}:root .bsn-card:hover{transform:none}}
:root.motion .bsn:not([data-motion="off"]) .bsn-photo{clip-path:inset(100% 0 0 0 round 1.5rem)}
:root.motion .bsn:not([data-motion="off"]) .bsn-body{opacity:0}


:root .bsc-band{position:relative;padding:clamp(2.5rem,7vw,6rem) clamp(1.5rem,6vw,5.5rem);border-radius:clamp(1.5rem,3vw,2.5rem);background:radial-gradient(120% 140% at 85% 0%,color-mix(in srgb,var(--c-accent) 34%,var(--c-brand)),var(--c-brand) 55%);color:var(--c-paper);box-shadow:0 .6rem 0 var(--bs-shade)}
:root .bsc-copy{position:relative;z-index:1;display:grid;justify-items:start;gap:clamp(1.1rem,2.2vw,1.6rem);max-width:46rem}
:root .bsc-h2{font-size:clamp(2.25rem,1.1rem + 4.6vw,5rem)}
:root .bsc-text{max-width:42ch;font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);line-height:1.6;white-space:pre-line}
:root .bsc-shape{z-index:2}
:root .bsc-art{position:absolute;right:clamp(1.5rem,6vw,5.5rem);top:50%;width:min(30%,22rem);aspect-ratio:1;translate:0 -50%;pointer-events:none}
:root .bsc-art svg{width:100%;height:100%;overflow:visible}
:root .bsc-p{transform-box:fill-box;transform-origin:50% 50%}
@media (max-width:56em){:root .bsc-art{display:none}}
:root .bsc-sponsors{display:grid;justify-items:center;gap:1.5rem;margin-top:clamp(3.5rem,7vw,5.5rem);text-align:center}
:root .bsc-list{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 1.25rem;max-width:62rem;margin:0;padding:0;list-style:none}
:root .bsc-sponsor{padding:.85rem 1.4rem;border-radius:.875rem;background:var(--bs-plum-2);box-shadow:inset 0 0 0 2px var(--bs-line);font:800 clamp(1rem,.9rem + .4vw,1.25rem)/1.2 var(--font-display);letter-spacing:-.01em;text-transform:uppercase;transform:rotate(var(--r));transition:transform .4s var(--bs-bounce),box-shadow .4s}
:root .bsc-sponsor:hover{transform:rotate(0) scale(1.06);box-shadow:inset 0 0 0 2px var(--c-accent)}
@media (max-width:40em){:root .bsc-shape:nth-of-type(2n){display:none}}
@media (prefers-reduced-motion:reduce){:root .bsc-sponsor{transition:none}:root .bsc-sponsor:hover{transform:rotate(var(--r))}}
:root.motion .bsc:not([data-motion="off"]) .bsc-band{clip-path:inset(0 50% 0 50% round 2.5rem)}
:root.motion .bsc:not([data-motion="off"]) .bsc-sponsor{opacity:0}


:root .bsk{padding:clamp(5.5rem,12vw,10rem) 0 clamp(1.75rem,3vw,2.5rem);background:radial-gradient(120% 100% at 50% 0%,var(--bs-wine),var(--c-ink) 70%)}
:root .bsk-in{display:flex;flex-direction:column;align-items:center;text-align:center}
:root .bsk-head{position:relative;width:100%;margin-top:clamp(1.5rem,3vw,2rem)}
:root .bsk-h2{width:100%;font-size:clamp(3rem,.6rem + 10.4vw,10.5rem);line-height:.86;letter-spacing:-.035em}
:root .bsk-l{display:block}
:root .bsk-word{display:inline-flex;flex-wrap:wrap;justify-content:center;max-width:100%}
:root .bsk-ch{display:inline-block;transform-origin:50% 100%}
:root .bsk-hl{color:var(--c-accent);text-shadow:0 .035em 0 var(--c-brand),0 .07em 0 var(--bs-shade)}
:root .bsk-burst{position:absolute;left:50%;top:50%;width:0;height:0;font-size:clamp(1.5rem,1rem + 2vw,3rem)}
:root .bsk-bit{position:absolute;left:-.5em;top:-.5em;width:1em;height:1em;display:none}
:root .bsk-lead{margin:clamp(1.5rem,3vw,2rem) auto 0;max-width:40ch}
:root .bsk-ctas{justify-content:center;margin-top:clamp(2rem,4vw,2.75rem)}
:root .bsk-foot{margin-top:clamp(4.5rem,10vw,8rem);padding-top:clamp(1.75rem,3vw,2.25rem);border-top:1px solid var(--bs-line)}
:root .bsk-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1.25rem 2rem;margin:0 0 clamp(2rem,4vw,2.75rem)}
:root .bsk-details .bsk-dt{font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--c-accent)}
:root .bsk-details .bsk-dd{margin:.35rem 0 0;font-weight:700;font-size:1.0625rem;overflow-wrap:anywhere}
:root .bsk-details a{color:inherit;text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--c-brand);text-underline-offset:.25em}
:root .bsk-details a:hover{text-decoration-color:var(--c-accent)}
:root .bsk-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}
:root .bsk-socials{display:flex;flex-wrap:wrap;gap:.5rem}
:root .bsk-socials a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border-radius:999px;box-shadow:inset 0 0 0 2px var(--bs-line);color:var(--c-paper);font-weight:800;font-size:.9375rem;text-decoration:none;transition:box-shadow .3s,background-color .3s}
:root .bsk-socials a:hover{background:var(--c-brand);box-shadow:inset 0 0 0 2px var(--c-brand)}
:root .bsk-legal{font-size:.875rem;color:var(--bs-muted)}
:root.motion .bsk:not([data-motion="off"]) .bsk-bit{display:block;transform:scale(0)}
:root.motion .bsk:not([data-motion="off"]) .bsk-ch{opacity:0}

/* ---------------------------------------------------------------------------
   Aanvullingen voor Elementor-onderdelen die in het ontwerp anders opgebouwd waren
   --------------------------------------------------------------------------- */
/* Polaroids: Afbeelding-widget met bijschrift (figure > img + figcaption) */
:root .bsy-pol figure{margin:0;max-width:none}
:root .bsy-pol img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:.2rem;background:var(--bs-wine)}
:root .bsy-pol figcaption{margin:0;color:inherit}

/* Agenda: Loop Grid met The Events Calendar */
:root .bsg-list .elementor-loop-container{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2vw,1.5rem)}
:root .bsg-list .e-loop-nothing-found-message{color:var(--bs-muted)}

/* Hoofdmenu (Menu-widget) in de stijl van het ontwerp */
:root .bs-hdr__menu{font-size:.9688rem;font-weight:700}
:root .bs-hdr__menu .elementor-nav-menu--main .elementor-nav-menu{display:flex;align-items:center;gap:clamp(1.1rem,2.2vw,2.25rem)}
:root .bs-hdr__menu .elementor-nav-menu--main .elementor-item{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;padding:0;color:var(--c-paper);text-decoration:none}
:root .bs-hdr__menu .elementor-nav-menu--main .menu-item:not(.bs-hdr__cta) .elementor-item::after{content:"";position:absolute;left:0;right:0;top:auto;bottom:.55rem;width:auto;height:2px;border-radius:2px;background:var(--c-accent);opacity:1;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
:root .bs-hdr__menu .elementor-nav-menu--main .menu-item:not(.bs-hdr__cta) .elementor-item:hover::after{transform:scaleX(1);transform-origin:left}
:root .bs-hdr__menu li.bs-hdr__cta,:root .bs-hdr__menu li.bs-hdr__cta:hover{padding:0;border-radius:0;background:none;box-shadow:none;transform:none;transition:none}
:root .bs-hdr__menu .bs-hdr__cta>.elementor-item{padding:0 1.25rem;border-radius:999px;background:var(--c-paper);color:var(--c-brand);font-weight:800;box-shadow:0 .3rem 0 var(--bs-shade);transition:transform .25s var(--bs-bounce),box-shadow .25s var(--bs-bounce)}
:root .bs-hdr__menu .bs-hdr__cta>.elementor-item:hover{transform:translateY(-2px);box-shadow:0 .45rem 0 var(--bs-shade)}
:root .bs-hdr__menu .elementor-menu-toggle{display:none;place-items:center;width:2.75rem;height:2.75rem;margin:0;padding:0;border:0;border-radius:999px;background:var(--c-brand);box-shadow:0 .25rem 0 var(--bs-shade);color:var(--c-paper);font-size:1.25rem;cursor:pointer}
:root .bs-hdr__menu .elementor-menu-toggle svg{width:1.1rem;height:1.1rem;fill:var(--c-paper)}
:root .bs-hdr__menu .elementor-nav-menu--dropdown{position:absolute;right:0;left:auto;top:calc(100% + .125rem);display:grid;min-width:14rem;width:auto;padding:.75rem;border-radius:1.25rem;background:var(--bs-plum-2);box-shadow:0 24px 48px -20px #000,inset 0 0 0 1px var(--bs-line);overflow:hidden}
:root .bs-hdr__menu .elementor-nav-menu--dropdown[aria-hidden=true]{display:none}
:root .bs-hdr__menu .elementor-nav-menu--dropdown .elementor-nav-menu{display:grid;gap:.25rem}
:root .bs-hdr__menu .elementor-nav-menu--dropdown .elementor-item{display:flex;align-items:center;min-height:2.75rem;padding:.25rem .875rem;border-radius:.75rem;background:none;color:var(--c-paper);font-weight:700;font-size:.9688rem;text-decoration:none}
:root .bs-hdr__menu .elementor-nav-menu--dropdown .bs-hdr__cta>.elementor-item{justify-content:center;margin-top:.5rem;padding:0 1.25rem;border-radius:999px;background:var(--c-paper);color:var(--c-brand);font-weight:800;box-shadow:0 .3rem 0 var(--bs-shade)}
:root .bs-hdr__menu{position:relative}
@media (max-width:56em){
  :root .bs-hdr__menu .elementor-nav-menu--main{display:none}
  :root .bs-hdr__menu .elementor-menu-toggle{display:grid}
}
@media (min-width:56.0625em){
  :root .bs-hdr__menu .elementor-nav-menu--main{display:block}
  :root .bs-hdr__menu .elementor-menu-toggle,:root .bs-hdr__menu .elementor-nav-menu--dropdown{display:none}
}

/* Subpagina's: kleinere hero met paginatitel */
:root .bs-hero.bs-hero--page{min-height:auto;padding-bottom:clamp(3rem,6vw,4.5rem)}
:root .bs-hero--page .bsh-h1{font-size:clamp(2.5rem,1.15rem + 5.4vw,5.75rem);line-height:.9}

/* Formulieren (Elementor Formulier-widget) */
:root .bsf-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(2rem,4vw,3rem);max-width:52rem;margin-inline:auto}
:root .bsf-card{padding:clamp(1.5rem,4vw,3rem);border-radius:1.75rem;background:var(--bs-plum-2);box-shadow:inset 0 0 0 1px var(--bs-line),0 30px 60px -30px #000}
:root .bsf-card .elementor-form-fields-wrapper{row-gap:0}
:root .bsf-card .elementor-field-group{margin-bottom:1.25rem}
:root .bsf-card .elementor-field-group>label,:root .bsf-card .elementor-field-label{display:block;margin-bottom:.5rem;font-size:.75rem!important;font-weight:800!important;line-height:1.3!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:var(--c-accent)!important}
/* Elementor zet veldkleuren per formulier met hoge specificiteit; hier wint de huisstijl */
:root .bsf-card .elementor-field-group .elementor-field-textual{min-height:3.25rem;padding:.85rem 1.1rem!important;border:0!important;border-radius:.875rem!important;background:var(--bs-plum)!important;box-shadow:inset 0 0 0 2px var(--bs-line);color:var(--c-paper)!important;font:500 1rem/1.4 var(--font-body)!important;transition:box-shadow .3s}
:root .bsf-card .elementor-field-group textarea.elementor-field-textual{min-height:9rem}
:root .bsf-card .elementor-field-group .elementor-field-textual:focus{outline:none;box-shadow:inset 0 0 0 2px var(--c-accent)}
:root .bsf-card .elementor-field-group .elementor-field-textual::placeholder{color:color-mix(in srgb,var(--c-paper) 45%,transparent)}
:root .bsf-card .elementor-field-subgroup{display:flex;flex-wrap:wrap;gap:.5rem}
:root .bsf-card .elementor-field-subgroup .elementor-field-option{display:inline-flex;margin:0}
:root .bsf-card .elementor-field-subgroup .elementor-field-option input{position:absolute;opacity:0;pointer-events:none}
:root .bsf-card .elementor-field-subgroup .elementor-field-option label{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border-radius:999px;box-shadow:inset 0 0 0 2px var(--bs-line);color:var(--c-paper);font-weight:800;font-size:.9375rem;cursor:pointer;transition:box-shadow .3s,background-color .3s}
:root .bsf-card .elementor-field-subgroup .elementor-field-option input:checked+label{background:var(--c-brand);box-shadow:inset 0 0 0 2px var(--c-brand)}
:root .bsf-card .elementor-field-subgroup .elementor-field-option input:focus-visible+label{outline:3px solid var(--c-accent);outline-offset:3px}
:root .bsf-card .elementor-select-wrapper .select-caret-down-wrapper{color:var(--c-accent);fill:var(--c-accent)}
:root .bsf-card .elementor-field-type-submit{margin-top:.5rem}
:root .bsf-card .elementor-field-type-submit .elementor-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;padding:.85rem 1.75rem!important;border:0!important;border-radius:999px!important;background:var(--c-brand)!important;color:var(--c-paper)!important;font:800 1rem/1.2 var(--font-body)!important;box-shadow:0 .45rem 0 var(--bs-shade);cursor:pointer;transition:transform .25s var(--bs-bounce),box-shadow .25s var(--bs-bounce)}
:root .bsf-card .elementor-field-type-submit .elementor-button:hover{transform:translateY(-3px);box-shadow:0 .6rem 0 var(--bs-shade)}
:root .bsf-card .elementor-message{margin-top:1rem;font-weight:700;color:var(--c-paper)}
:root .bsf-card .elementor-message.elementor-message-danger,:root .bsf-card .elementor-error .elementor-message{color:var(--c-accent)}
:root .bsf-aside{display:grid;justify-items:center;gap:1rem;text-align:center}
:root .bsf-aside p{color:var(--bs-muted)}

/* Pagina's zonder hero (bv. losse evenementen): ruimte onder de vaste header */
body:not(:has(.bs-hero)){padding-top:4.75rem}
body:not(:has(.bs-hero)) .bs-hdr{background:color-mix(in srgb,var(--c-ink) 90%,transparent);border-color:var(--bs-line)}

/* Tijdens de intro ligt de hero (met de intro erin) boven de vaste header, zoals in het ontwerp */
html.bs-intro-on .bs-hero{z-index:41}

/* Pagina's buiten het ontwerp (losse evenementen van The Events Calendar): licht inhoudsvlak, leesbaar */
:root body:not(:has(.bs-hero)){background:var(--c-paper);color:var(--c-ink)}
body:not(:has(.bs-hero)) main{padding:clamp(2.5rem,6vw,5rem) var(--gutter)}
body:not(:has(.bs-hero)) :is(main,[role=main]) a{color:var(--c-brand)}
