.elementor-kit-10{--e-global-color-primary:#02599C;--e-global-color-secondary:#042E50;--e-global-color-text:#3A4A57;--e-global-color-accent:#FD710E;--e-global-color-jcinkd:#0C1B28;--e-global-color-jcink3:#6C7A87;--e-global-color-jcblu2:#2AB5EC;--e-global-color-jcnavd:#02223B;--e-global-color-jcpapr:#F4F7FA;--e-global-color-jcwhit:#FFFFFF;--e-global-color-jctint:#E9EFF5;--e-global-color-jcline:#DBE3EC;--e-global-color-jcondk:#EDF7FE;--e-global-color-jcorgh:#E5620A;--e-global-color-jcctab:#C94B00;--e-global-color-jcbluh:#01477D;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:52px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:44px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:-0.02em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:500;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.2em;--e-global-typography-jceyeb-font-family:"Outfit";--e-global-typography-jceyeb-font-size:13px;--e-global-typography-jceyeb-font-weight:700;--e-global-typography-jceyeb-text-transform:uppercase;--e-global-typography-jceyeb-line-height:1.2em;--e-global-typography-jceyeb-letter-spacing:0.14em;--e-global-typography-jclead-font-family:"Inter";--e-global-typography-jclead-font-size:20px;--e-global-typography-jclead-font-weight:500;--e-global-typography-jclead-line-height:1.6em;--e-global-typography-jcsmal-font-family:"Inter";--e-global-typography-jcsmal-font-size:15px;--e-global-typography-jcsmal-font-weight:500;--e-global-typography-jcsmal-line-height:1.6em;--e-global-typography-jcbadg-font-family:"Outfit";--e-global-typography-jcbadg-font-size:12px;--e-global-typography-jcbadg-font-weight:700;--e-global-typography-jcbadg-text-transform:uppercase;--e-global-typography-jcbadg-line-height:1.2em;--e-global-typography-jcbadg-letter-spacing:0.1em;--e-global-typography-4ab3723-font-family:"Outfit";--e-global-typography-4ab3723-font-size:44px;--e-global-typography-4ab3723-font-weight:700;--e-global-typography-4ab3723-line-height:1.15em;--e-global-typography-4ab3723-letter-spacing:-0.02em;color:#3A4A57;font-family:"Inter", Sans-serif;font-size:17px;font-weight:500;line-height:1.65em;}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{background-color:#02599C;font-family:"Outfit", Sans-serif;font-size:16px;font-weight:700;line-height:1.2em;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:16px 30px 16px 30px;}.elementor-kit-10 button:hover,.elementor-kit-10 button:focus,.elementor-kit-10 input[type="button"]:hover,.elementor-kit-10 input[type="button"]:focus,.elementor-kit-10 input[type="submit"]:hover,.elementor-kit-10 input[type="submit"]:focus,.elementor-kit-10 .elementor-button:hover,.elementor-kit-10 .elementor-button:focus{background-color:#042E50;color:#FFFFFF;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-kit-10 a{color:#02599C;}.elementor-kit-10 a:hover{color:#01477D;}.elementor-kit-10 h1{color:#0C1B28;font-family:"Outfit", Sans-serif;font-size:52px;font-weight:700;line-height:1.08em;letter-spacing:-0.02em;}.elementor-kit-10 h2{color:#0C1B28;font-family:"Outfit", Sans-serif;font-size:36px;font-weight:700;line-height:1.12em;letter-spacing:-0.02em;}.elementor-kit-10 h3{color:#0C1B28;font-family:"Outfit", Sans-serif;font-size:25px;font-weight:700;line-height:1.2em;letter-spacing:-0.015em;}.elementor-kit-10 h4{color:#0C1B28;font-family:"Outfit", Sans-serif;font-size:19px;font-weight:700;line-height:1.25em;letter-spacing:-0.01em;}.elementor-kit-10 img{border-radius:24px 24px 24px 24px;}.elementor-kit-10 label{color:var( --e-global-color-jcinkd );font-family:"Inter", Sans-serif;font-size:15px;font-weight:600;line-height:1.4em;}.elementor-kit-10 input:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea,.elementor-kit-10 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:15px;font-weight:500;line-height:1.5em;color:var( --e-global-color-jcinkd );accent-color:var( --e-global-color-primary );background-color:var( --e-global-color-jcwhit );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-jcline );border-radius:10px 10px 10px 10px;transition:200ms;padding:13px 16px 13px 16px;}.elementor-kit-10 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea:focus,.elementor-kit-10 .elementor-field-textual:focus{background-color:var( --e-global-color-jcwhit );box-shadow:0px 0px 0px 3px rgba(2, 89, 156, 0.14);border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:10px 10px 10px 10px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-10{--e-global-typography-primary-font-size:42px;--e-global-typography-secondary-font-size:36px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:14px;--e-global-typography-jceyeb-font-size:11px;--e-global-typography-jclead-font-size:18px;--e-global-typography-jcsmal-font-size:13px;--e-global-typography-jcbadg-font-size:11px;--e-global-typography-4ab3723-font-size:36px;font-size:15px;}.elementor-kit-10 h1{font-size:42px;}.elementor-kit-10 h2{font-size:36px;}.elementor-kit-10 h3{font-size:22px;}.elementor-kit-10 h4{font-size:17px;}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:768px){.elementor-kit-10{--e-global-typography-primary-font-size:34px;--e-global-typography-secondary-font-size:30px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:12px;--e-global-typography-jceyeb-font-size:10px;--e-global-typography-jclead-font-size:18px;--e-global-typography-jcsmal-font-size:14px;--e-global-typography-jcbadg-font-size:12px;--e-global-typography-4ab3723-font-size:16px;font-size:15px;}.elementor-kit-10 h1{font-size:34px;}.elementor-kit-10 h2{font-size:30px;}.elementor-kit-10 h3{font-size:21px;}.elementor-kit-10 h4{font-size:15px;}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* === Jesse Commandeur — hover & focus (uit design styles.css) === */

/* Buttons: arrow beweegt mee */
.elementor-button:hover .elementor-button-icon svg,
.elementor-button:hover .elementor-button-icon i { transform: translateX(5px); }
.elementor-button .elementor-button-icon svg,
.elementor-button .elementor-button-icon i { transition: transform 160ms cubic-bezier(.22,1,.36,1); }

/* btn--primary */
.jc-btn-primary .elementor-button:hover {
  background-color:#042E50 !important; color:#fff !important;
  box-shadow:0 8px 24px rgba(2,89,156,.28);
}
/* btn--ghost */
.jc-btn-ghost .elementor-button:hover {
  background-color:#02599C !important; color:#fff !important; border-color:#02599C !important;
}
/* btn--ghost-light */
.jc-btn-ghostlight .elementor-button:hover,
.jc-ghost-light .elementor-button:hover {
  background-color:#FFFFFF !important; border-color:#FFFFFF !important; color:#042E50 !important;
}
/* btn--light (oranje) */
.jc-btn-orange .elementor-button:hover {
  background-color:#E5620A !important; box-shadow:0 8px 24px rgba(253,113,14,.30);
}

/* Kaart-titels worden blauw bij hover */
.jc-svc-tile:hover .elementor-icon-box-title,
.jc-svc-tile:hover .elementor-icon-box-title a { color:#02599C !important; }
.jc-postcard:hover .elementor-heading-title { color:#02599C !important; }

/* LinkedIn-kaarten */
.jc-licard { transition: transform 300ms cubic-bezier(.22,1,.36,1), box-shadow 300ms; }
.jc-licard:hover { transform: translateY(-3px); box-shadow:0 4px 12px rgba(4,46,80,.08),0 12px 32px rgba(4,46,80,.08); }

/* FAQ */
.jc-faq .e-n-accordion-item-title:hover .e-n-accordion-item-title-text { color:#02599C !important; }
.jc-faq .e-n-accordion-item-title { transition: color 160ms; }

/* Tekstlinks in tekstblokken */
.elementor-widget-text-editor a:hover { color:#01477D; text-decoration:underline; }

/* Toetsenbord-focus (toegankelijkheid) */
a:focus-visible, button:focus-visible, .elementor-button:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible,
.e-n-menu-title-container:focus-visible, .e-n-accordion-item-title:focus-visible {
  outline:none; box-shadow:0 0 0 3px rgba(42,181,236,.45); border-radius:4px;
}
/* compare-tabel badges */
.jc-ic{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;margin-right:.55rem;vertical-align:-4px;flex:0 0 20px}
.jc-ic svg{width:12px;height:12px}
.jc-ic--yes{background:#1F9D6B;color:#fff}
.jc-ic--no{background:rgba(12,27,40,.14);color:#566573}
/* kaart-link pijl */
.jc-cardlink-in{display:inline-flex;align-items:center;gap:.4rem;margin:0}
.jc-cardlink-in svg{width:16px;height:16px;transition:transform 160ms cubic-bezier(.22,1,.36,1)}
.jc-card:hover .jc-cardlink-in svg{transform:translateX(5px)}
/* === Blog-kaarten (loop grid) === */
/* let op: kaart-root is een <a>, dus .elementor a{box-shadow:none} verslaat .jc-postcard */
.elementor a.jc-postcard { box-shadow:0 1px 2px rgba(4,46,80,.04); }
.jc-postcard { height:100%; transition: box-shadow 300ms cubic-bezier(.22,1,.36,1), border-color 300ms cubic-bezier(.22,1,.36,1); }
/* hover-lift staat al in post-17.css (-4px) - niet dupliceren */
/* vaste beeldverhouding zodat het grid uitlijnt ongeacht bronformaat */
.jc-postcard .elementor-widget-image { overflow:hidden; line-height:0; }
.jc-postcard .elementor-widget-image img { width:100%; aspect-ratio:16/9; object-fit:cover; object-position:center; display:block; transition: transform 600ms cubic-bezier(.22,1,.36,1); }
.jc-postcard:hover .elementor-widget-image img { transform:scale(1.04); }
/* tekstblok vult de resthoogte zodat kaarten gelijk eindigen */
.jc-postcard > .e-con { flex-grow:1; }
.jc-postcard > .e-con > .elementor-widget-heading:last-child { margin-top:auto; }
/* Lees meer + meebewegende pijl */
.jc-postcard .jc-cardlink .elementor-heading-title::after { content:"2192"; display:inline-block; margin-left:.4rem; transition: transform 250ms cubic-bezier(.22,1,.36,1); }
.jc-postcard:hover .jc-cardlink .elementor-heading-title::after { transform: translateX(5px); }
/* === FAQ accordion — conform ontwerp === */
.jc-faq { --n-accordion-item-title-border-width: 0px; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title { border: 0; padding: 18px 20px; }
/* kaart per item */
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item { background: #FFFFFF; border: 1px solid #DBE3EC; border-radius: 16px; margin-bottom: 12px; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title-text { font-size: 18px !important; }
/* antwoordvak zonder kader */
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item > .e-con { border: 0; }
/* icoon: rond kadertje, draait 45 graden en vult blauw bij openen */
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title-icon { flex: none; width: 32px; height: 32px; border-radius: 50%; border: 1.5px solid #C4D0DC; display: grid; place-items: center; color: #02599C; transition: transform 250ms cubic-bezier(.22,1,.36,1), background-color 160ms, border-color 160ms, color 160ms; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title-icon .e-opened { display: none !important; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title-icon .e-closed { display: flex !important; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item-title-icon svg { width: 15px; height: 15px; fill: currentColor; }
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon { transform: rotate(45deg); background: #02599C; border-color: #02599C; color: #fff; }
/* geopend item: titeltekst blauw, gelijk aan het icoon */
.elementor-widget-n-accordion.jc-faq .e-n-accordion-item[open] .e-n-accordion-item-title-text { color: #02599C !important; }

/* === Badge: generiek, ongeacht heading of shortcode === */
.jc-badge .elementor-heading-title,
.jc-badge .elementor-shortcode {
  display:inline-block; background:#E9EFF5; color:#02599C;
  font-family:"Outfit",sans-serif; font-weight:700; font-size:12px;
  text-transform:uppercase; letter-spacing:1.2px; line-height:1.2;
  padding:5px 12px; border-radius:999px;
}
/* === Dienst-iconen in loop-kaarten === */
/* zelfde vorm als de oude .jc-svc-tile .elementor-icon regel (44x44, radius 12, Tint) */
.jc-svc-icon {
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:12px;
  background:#E9EFF5; color:#02599C;
}
.jc-svc-icon i { font-size:18px; line-height:1; }
/* Filterpills blogarchief */
.jc-pill .elementor-button{background-color:#FFFFFF!important;border:1px solid #DBE3EC!important;border-radius:999px!important;color:#3A4A57!important;font-family:Outfit,sans-serif!important;font-weight:700!important;font-size:14px!important;padding:8px 18px!important;box-shadow:none!important;}
.jc-pill .elementor-button:hover{border-color:#02599C!important;color:#02599C!important;background-color:#FFFFFF!important;}
.jc-pill .elementor-button-icon{display:none!important;}
.jc-pill--on .elementor-button{background-color:#042E50!important;border-color:#042E50!important;color:#FFFFFF!important;}
.jc-pill--on .elementor-button:hover{background-color:#042E50!important;border-color:#042E50!important;color:#FFFFFF!important;}

/* Datum en leestijd op blogkaarten */
.jc-postmeta{font-family:Inter,sans-serif;font-size:13px;color:#6C7A87;line-height:1.4;}

/* Meta op de artikelhero */
.jc-artmeta{font-family:Inter,sans-serif;font-size:14px;color:rgba(255,255,255,.85);line-height:1.4;}
.jc-prose img{border-radius:20px;}

/* Hero-glow zoals in het ontwerp */
.jc-hero{position:relative;overflow:hidden;}
.jc-hero::after{content:"";position:absolute;width:720px;height:720px;top:-260px;right:-160px;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(closest-side,rgba(42,181,236,.16),transparent 70%);}
.jc-hero > .e-con-inner{position:relative;z-index:1;}
@media(max-width:768px){.jc-hero::after{width:420px;height:420px;top:-160px;right:-120px;}}

/* Visueel verborgen koppen (blijven leesbaar voor screenreaders) */
.jc-vh{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}

/* Tag-rij met dienstlinks */
.jc-tagrow{display:flex;flex-wrap:wrap;gap:.6rem;}
.jc-tagrow a{font-family:Outfit,sans-serif;font-weight:700;font-size:.82rem;color:#3A4A57;border:1px solid #C4D0DC;border-radius:999px;padding:.4rem .95rem;text-decoration:none;transition:border-color .18s ease,color .18s ease;}
.jc-tagrow a:hover{border-color:#02599C;color:#02599C;text-decoration:none;}

/* Tariefkaarten */
.jc-price{position:relative;box-shadow:0 1px 2px rgba(12,27,40,.06);}
.jc-price--feat{box-shadow:0 8px 24px rgba(2,89,156,.16),0 24px 48px rgba(2,89,156,.12);}
.jc-badge-corner{position:absolute;top:1rem;right:1rem;width:fit-content;}
/* Actieve pagina: alleen een kleurwijziging, geen streep (zoals het ontwerp) */
.jc-mega .jc-nav-current .e-n-menu-title-text,
.jc-mega .jc-nav-current .e-n-menu-dropdown-icon{color:#2AB5EC!important;}

/* Uitzonderingen op de globale afbeeldingsafronding (Site Settings > Afbeeldingen) */
.elementor-widget-theme-site-logo img,.elementor-widget-site-logo img,.jc-tlogo img,.jc-postcard img,.elementor-widget-icon-box img{border-radius:0!important;}
/* Ronde portretten blijven rond */
.jc-avatar img,.jc-rfeature img{border-radius:50%!important;}

/* Eyebrow met streepje ervoor, zoals in het ontwerp */
.jc-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:.55rem;}
.jc-eyebrow .elementor-heading-title::before{content:"";flex:none;width:22px;height:2px;background:#2AB5EC;border-radius:2px;}
/* Gecentreerde sectiekoppen: streepje mee centreren */
.jc-eyebrow.elementor-widget-heading .elementor-heading-title{vertical-align:middle;}

/* Menu: alleen de eigen streep, geen native link-underline eronder */
.jc-mega .e-n-menu-title-container,.jc-mega .e-n-menu-title-container:hover,.jc-mega .e-n-menu-title-container:focus,.jc-mega .e-n-menu-title-text{text-decoration:none!important;}

/* Menu-onderstreping op het tekstlabel: volgt via currentColor ook de scroll-staat */
.jc-mega .e-n-menu-title-text{position:relative;display:inline-block;}
.jc-mega .e-n-menu-title-text::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:currentColor;border-radius:2px;transform:scaleX(0);transform-origin:left center;transition:transform 300ms cubic-bezier(.22,1,.36,1);pointer-events:none;}
.jc-mega .e-n-menu-item:hover .e-n-menu-title-text::after,.jc-mega .e-n-menu-title-container:focus-visible .e-n-menu-title-text::after{transform:scaleX(1);}
@media (prefers-reduced-motion:reduce){.jc-mega .e-n-menu-title-text::after{transition:none;}}

/* Fix: knop-icoon volgt de tekstkleur bij hover (SVG-fill stond vast op de basiskleur) */
.elementor-button .elementor-button-icon svg,
.elementor-button .elementor-button-icon i { fill: currentColor !important; }

/* Fix: featured image in blogkaart (.jc-postcard) volledig breed maken; kaart heeft l/r padding voor de tekst, image moet dat overbruggen */
.jc-postcard > .elementor-widget-image { margin: 0 -40px !important; width: calc(100% + 80px) !important; max-width: calc(100% + 80px) !important; }
@media (max-width: 767px) { .jc-postcard > .elementor-widget-image { margin: 0 -20px !important; width: calc(100% + 40px) !important; max-width: calc(100% + 40px) !important; } }

/* Fix: SEO-diensten kaarttitel is een heading-widget (jc-svc-title), niet icon-box; bestaande hover-regel matchte niet */
.jc-svc-tile:hover .jc-svc-title .elementor-heading-title { color:#02599C !important; }

/* Fix: formulier velden */
.elementor-form .elementor-field-group > label.elementor-field-label { display: block; margin-bottom: 8px; }
.elementor-form .elementor-field-group.elementor-field-type-acceptance > label.elementor-field-label { margin-bottom: 0; }
.elementor-form .elementor-field-textual::placeholder { color: var(--e-global-color-jcink3); opacity: 1; }
.elementor-form select.elementor-field-textual { padding-right: 38px; }
.elementor-form .elementor-mark-required .elementor-field-label:after { color: var(--e-global-color-accent); }
.elementor-form .elementor-field-type-acceptance .elementor-field-subgroup { display: flex; align-items: flex-start; gap: 10px; }
.elementor-form input[type="checkbox"], .elementor-form input[type="radio"] { width: 18px; height: 18px; min-width: 18px; margin: 2px 0 0; accent-color: var(--e-global-color-primary); cursor: pointer; }
.elementor-form .elementor-field-type-acceptance .elementor-field-option label { font-family: Inter, sans-serif; font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--e-global-color-text); cursor: pointer; }
.elementor-form textarea.elementor-field-textual { min-height: 130px; resize: vertical; }
.elementor-form .elementor-field-group .elementor-select-wrapper select { font-size: 15px; line-height: 1.5; }
/* Fix: jc-tnum cijfer verticaal centreren */
.elementor .elementor-widget.jc-tnum, .jc-tnum { display: flex; align-items: center; justify-content: center; min-width: 38px; width: fit-content; height: 38px; padding: 0 10px; font-variant-numeric: tabular-nums; border-radius: 999px; background: var(--e-global-color-primary); line-height: 1; }
.jc-tnum .elementor-heading-title { line-height: 1; display: block; }

/* === Mega-menu dropdown: hele item klikbaar === */
.elementor-widget.jc-dd-link { position: relative; }
.elementor-widget.jc-dd-link .elementor-icon-box-title a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.elementor-widget.jc-dd-link:hover { cursor: pointer; }
/* hover op het hele blok, gelijk aan .jc-svc-tile */
.elementor-widget.jc-dd-link:hover .elementor-icon-box-title,
.elementor-widget.jc-dd-link:hover .elementor-icon-box-title a { color: #02599C !important; }
.elementor-widget.jc-dd-link .elementor-icon-box-title,
.elementor-widget.jc-dd-link .elementor-icon-box-title a { transition: color 160ms; }/* End custom CSS */