.elementor-kit-7{--e-global-color-primary:#3A2E83;--e-global-color-secondary:#282059;--e-global-color-text:#1C1C1E;--e-global-color-accent:#615DD3;--e-global-color-tint:#F1F0F9;--e-global-color-tintrand:#DDDAEE;--e-global-color-grijs:#5A5A66;--e-global-color-lijn:#E3E3EA;--e-global-color-wit:#FFFFFF;--e-global-color-fout:#B00020;--e-global-typography-primary-font-family:"Public Sans";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Public Sans";--e-global-typography-secondary-font-size:19px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-family:"Public Sans";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Public Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.4em;--e-global-typography-intro-font-family:"Public Sans";--e-global-typography-intro-font-size:19px;--e-global-typography-intro-font-weight:700;--e-global-typography-intro-line-height:1.55em;--e-global-typography-klein-font-family:"Public Sans";--e-global-typography-klein-font-size:14px;--e-global-typography-klein-font-weight:400;--e-global-typography-klein-line-height:1.5em;--e-global-typography-eyebrow-font-family:"Public Sans";--e-global-typography-eyebrow-font-size:15px;--e-global-typography-eyebrow-font-weight:700;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-line-height:1.4em;--e-global-typography-eyebrow-letter-spacing:0.8px;background-color:#FFFFFF;color:#1C1C1E;font-family:"Public Sans", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#3A2E83;font-family:"Public Sans", Sans-serif;font-size:16px;font-weight:600;color:#FFFFFF;border-radius:2px 2px 2px 2px;padding:12px 24px 12px 24px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#615DD3;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#3A2E83;}.elementor-kit-7 a:hover{color:#615DD3;}.elementor-kit-7 h1{color:#1C1C1E;font-family:"Public Sans", Sans-serif;font-size:34px;font-weight:700;line-height:1.25em;}.elementor-kit-7 h2{color:#1C1C1E;font-family:"Public Sans", Sans-serif;font-size:24px;font-weight:700;line-height:1.25em;}.elementor-kit-7 h3{color:#1C1C1E;font-family:"Public Sans", Sans-serif;font-size:19px;font-weight:700;line-height:1.25em;}.elementor-kit-7 h4{color:#1C1C1E;font-family:"Public Sans", Sans-serif;font-size:17px;font-weight:700;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{color:#1C1C1E;background-color:#FFFFFF;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Federatie Historie: sitewide designdetails (spiegel van css/stijl.css) */

/* Alleen kaartlinks en links in lopende tekst onderstreept */
a { text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 2px; }
.fh-leesverder .elementor-heading-title a,
.elementor-widget-text-editor a {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.fh-leesverder .elementor-heading-title a:hover { color: #615DD3; }

/* Focus zichtbaar (WCAG 2.4.7) */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid #3A2E83;
  outline-offset: 2px;
}

/* Loop-tegels: beeld strak in kaart */
.e-loop-item .elementor-widget-image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}

/* Nieuwskaart-datum in kleinkapitaal is al uppercase; excerpt-regelafstand */
.e-loop-item .elementor-widget-text-editor p { margin-bottom: 0; }

/* Reduced motion respecteren */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* Agenda-gegevens (dl in berichtcontent) */
.elementor dl { display: grid; grid-template-columns: max-content 1fr; gap: 4px 20px; margin: 0 0 12px; }
.elementor dl dt { font-weight: 700; color: #5A5A66; }
.elementor dl dd { margin: 0; }

/* Loop-kaarten: kaartlink onderaan gepind, kaart vult de cel */
.e-loop-item { height: 100%; }
.e-loop-item > .e-con-full { height: 100%; }
.e-loop-item > .e-con-full > .e-con-full.e-child {
  flex-grow: 1;
  justify-content: space-between;
}

/* Nieuwskaarten: 3:2-beeld (tegels blijven 16:9); datumblok accentrand */
.fh-nieuwskaart .elementor-widget-image img { aspect-ratio: 3 / 2; }
.fh-datumblok { border-top-color: #615DD3 !important; }

/* Hero-titel: gebalanceerde regelval zoals het design */
.fh-hero-titel .elementor-heading-title { text-wrap: balance; }

/* Kaartlink onderaan gepind in tekstkaarten */
.e-loop-item > .e-con-full > .elementor-widget:last-child { margin-top: auto; }

/* Ledenraster: alle 8 cellen exact even breed en hoog (4 kolommen, 20px gaps) */
.fh-fedtegel {
  width: calc((100% - 60px) / 4);
  min-height: 300px;
}
.fh-lgwrap {
  width: calc((100% - 60px) / 4 * 3 + 40px);
}
.fh-lgwrap .elementor-widget-loop-grid,
.fh-lgwrap .e-loop-item { min-height: 300px; }
.e-loop-item > .e-con-full { min-height: 300px; }

/* Ledenrij: geen extra containerpadding zodat de calc-maten exact kloppen */
.fh-ledenrij, .fh-lgwrap { padding: 0 !important; }/* End custom CSS */