.elementor-kit-6{--e-global-color-primary:#041730;--e-global-color-secondary:#276FCF;--e-global-color-text:#1F2D3D;--e-global-color-accent:#1D57A5;--e-global-color-tamist:#F4F7FB;--e-global-color-taline:#DCE4EE;--e-global-color-tamuted:#5A6B7F;--e-global-color-tablight:#7FB0F0;--e-global-color-tasoft:#E8F0FB;--e-global-color-taamber:#B87A15;--e-global-color-tawhite:#FFFFFF;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;background-color:#FFFFFF;color:#1F2D3D;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:1.7em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#276FCF;font-family:"Inter", Sans-serif;font-size:16px;font-weight:600;line-height:1.2em;color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:17px 30px 17px 30px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#1D57A5;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:18px;}.elementor-kit-6 a{color:#276FCF;}.elementor-kit-6 a:hover{color:#1D57A5;}.elementor-kit-6 h1{color:#041730;font-family:"Archivo", Sans-serif;font-size:60px;font-weight:800;line-height:1.04em;letter-spacing:-2.2px;}.elementor-kit-6 h2{color:#041730;font-family:"Archivo", Sans-serif;font-size:40px;font-weight:800;line-height:1.12em;letter-spacing:-1.2px;}.elementor-kit-6 h3{color:#041730;font-family:"Archivo", Sans-serif;font-size:21px;font-weight:700;line-height:1.3em;letter-spacing:-0.3px;}.elementor-kit-6 h4{color:#041730;font-family:"Archivo", Sans-serif;font-size:17.5px;font-weight:700;line-height:1.35em;}.elementor-kit-6 h5{color:#1F2D3D;font-family:"Inter", Sans-serif;font-size:17px;font-weight:600;line-height:1.4em;}.elementor-kit-6 h6{color:#5A6B7F;font-family:"Inter", Sans-serif;font-size:12.5px;font-weight:600;line-height:1.4em;letter-spacing:1.1px;}.elementor-kit-6 img{border-radius:0px 0px 0px 0px;}.elementor-kit-6 label{color:#1F2D3D;font-family:"Inter", Sans-serif;font-size:14px;font-weight:600;line-height:1.4em;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.4em;color:#041730;background-color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:14px 16px 14px 16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;--container-default-padding-top:0px;--container-default-padding-right:24px;--container-default-padding-bottom:0px;--container-default-padding-left:24px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}}
/* Start custom CSS *//* =====================================================================
   Tavares Administraties - globale stijlen
   Huisstijl uit het logobestand: navy #041730, blauw #276FCF.
   Principes: koele basis, hairlines in plaats van schaduwen, een strakke
   typografische schaal en rustige rasters. Geen decoratie zonder functie.
   ===================================================================== */

:root{
  --navy:#041730; --navy-soft:#0D2A4E; --navy-line:#1B3A61;
  --blue:#276FCF; --blue-dark:#1D57A5; --blue-light:#7FB0F0; --blue-soft:#E8F0FB;
  --mist:#F4F7FB; --mist-dark:#E7EDF5; --line:#DCE4EE;
  --text:#1F2D3D; --muted:#5A6B7F; --amber:#B87A15;
  --r-card:10px; --r-btn:6px; --r-pill:99px;
  --head:"Archivo",system-ui,sans-serif;
  --body:"Inter",system-ui,sans-serif;
}

/* ---------- basis ---------- */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
.e-con-inner{width:100%}
a{transition:color .15s ease}
html,body{overflow-x:clip}
/* De footer blijft onderaan het scherm staan, ook als een pagina korter is dan
   de viewport. Zonder dit staat er op hoge schermen wit onder de footer. */
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
body>*{flex-shrink:0}
body>footer,body>.ta-footer{margin-top:auto}
::selection{background:var(--blue-soft);color:var(--navy)}

/* ---------- eyebrow ---------- */
.ta-eyebrow .elementor-heading-title{
  font-family:var(--body);font-size:12px;font-weight:600;
  letter-spacing:1.6px;text-transform:uppercase;
  display:flex;align-items:center;gap:11px;margin:0;
}
.ta-eyebrow .elementor-heading-title::before{
  content:"";width:22px;height:2px;background:currentColor;flex:0 0 22px;opacity:.85;
}

/* ---------- kaarten en panelen ---------- */
.ta-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:28px 26px;height:100%}
.ta-card--mist{background:var(--mist);border-color:var(--mist-dark)}
.ta-card--tight{padding:22px 20px}
.ta-card--flush{padding:0;overflow:hidden}
.ta-card h3,.ta-card .elementor-heading-title{margin-top:0}

/* ---------- beeld ---------- */
.ta-img-cover img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--r-card)}
.ta-img-cover.ta-h-520 img{height:520px}
.ta-img-cover.ta-h-420 img{height:420px}
.ta-img-cover.ta-h-340 img{height:340px}
.ta-img-cover.ta-h-240 img{height:240px}
@media(max-width:1024px){
  .ta-img-cover.ta-h-520 img{height:420px}
  .ta-img-cover.ta-h-420 img{height:340px}
}
@media(max-width:767px){
  .ta-img-cover.ta-h-520 img,.ta-img-cover.ta-h-420 img{height:290px}
  .ta-img-cover.ta-h-340 img{height:230px}
  .ta-img-cover.ta-h-240 img{height:190px}
}
/* Beeldkolom die de hoogte van de tekstkolom volgt.
   Geen height:100% gebruiken: de rij heeft geen vaste hoogte, dus een
   percentage valt terug op auto. Wel align-self:stretch plus een flexketen. */
.ta-fill{align-self:stretch;display:flex;flex-direction:column}
.ta-fill>.e-con-inner{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}
.ta-fill .elementor-widget-image{flex:1 1 auto;min-height:0;display:flex}
.ta-fill .elementor-widget-image>.elementor-widget-container{flex:1 1 auto;display:flex;min-height:0}
.ta-fill .elementor-widget-image figure{flex:1 1 auto;display:flex;min-height:0;margin:0}
.ta-fill .elementor-widget-image img{flex:1 1 auto;width:100%;height:100%;min-height:430px;
  object-fit:cover;border-radius:var(--r-card)}
@media(max-width:1024px){.ta-fill .elementor-widget-image img{min-height:340px}}
@media(max-width:767px){.ta-fill{align-self:auto}.ta-fill .elementor-widget-image img{min-height:270px;height:270px}}

/* ---------- sterren ---------- */
.ta-stars{display:inline-flex;gap:2px;color:var(--amber);vertical-align:-2px}
.ta-stars svg{width:14px;height:14px;display:block}

/* ---------- hero met overlappende bewijskaart ---------- */
.ta-herofig{position:relative}
.ta-herofig .elementor-widget-image img{border-radius:var(--r-card)}
.ta-proofcard{
  position:absolute;left:-44px;bottom:28px;z-index:2;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-card);
  padding:18px 22px;display:flex;gap:26px;align-items:center;
  box-shadow:0 14px 40px rgba(4,23,48,.10);
}
.ta-proofcard__i{display:flex;flex-direction:column;gap:5px;min-width:0}
.ta-proofcard__s{display:flex;align-items:baseline;gap:7px}
.ta-proofcard__s b{font:800 25px/1 var(--head);color:var(--navy);letter-spacing:-.8px}
.ta-proofcard__s span{font:500 13px/1 var(--body);color:var(--muted)}
.ta-proofcard__m{font:500 12.5px/1.3 var(--body);color:var(--muted);white-space:nowrap}
.ta-list li a{display:inline-block;padding:2px 0}
.ta-proofcard__sep{width:1px;align-self:stretch;background:var(--line)}
@media(max-width:1024px){.ta-proofcard{left:16px;right:16px;bottom:16px;justify-content:center}}
@media(max-width:767px){
  .ta-proofcard{position:static;margin-top:14px;padding:16px 18px;box-shadow:none;gap:18px}
}

/* ---------- losse feitenregel ---------- */
.ta-facts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;
  font:500 15px/1.5 var(--body);color:var(--muted)}
.ta-facts>span:not(.ta-badge){position:relative;padding-left:20px}
.ta-facts>span:not(.ta-badge)::before{content:"";position:absolute;left:0;top:9px;
  width:9px;height:1.5px;background:var(--blue)}

/* ---------- vertrouwensbalk ---------- */
.ta-trust{display:flex;flex-wrap:wrap;align-items:center;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ta-trust__i{flex:1 1 0;min-width:180px;padding:19px 26px;
  font:500 15px/1.5 var(--body);color:var(--muted);
  display:flex;align-items:center;gap:9px;border-left:1px solid var(--line)}
.ta-trust__i:first-child{border-left:0;padding-left:0}
.ta-trust__i b{font-weight:700;color:var(--navy)}
@media(max-width:900px){
  .ta-trust__i{flex:1 1 50%;border-left:0;padding:14px 0;border-top:1px solid var(--line)}
  .ta-trust__i:nth-child(-n+2){border-top:0}
}

/* ---------- beoordelingspaneel ---------- */
.ta-reviews{display:flex;border:1px solid var(--line);border-radius:var(--r-card);background:#fff;overflow:hidden}
.ta-reviews__i{flex:1 1 0;padding:26px 28px;display:flex;gap:16px;align-items:flex-start;border-left:1px solid var(--line)}
.ta-reviews__i:first-child{border-left:0}
.ta-reviews__logo{flex:0 0 40px;width:40px;height:40px;border-radius:8px;display:grid;place-items:center;
  background:var(--mist);border:1px solid var(--line)}
.ta-reviews__logo svg{width:21px;height:21px}
.ta-reviews__s{font:800 30px/1 var(--head);color:var(--navy);letter-spacing:-1px}
.ta-reviews__s span{font:500 14px/1 var(--body);color:var(--muted);margin-left:5px;letter-spacing:0}
.ta-reviews__m{font:400 14px/1.55 var(--body);color:var(--muted);margin-top:7px}
.ta-reviews__m a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;
  display:inline-block;padding:4px 0;min-height:24px}
@media(max-width:767px){
  .ta-reviews{flex-direction:column}
  .ta-reviews__i{border-left:0;border-top:1px solid var(--line)}
  .ta-reviews__i:first-child{border-top:0}
}

/* ---------- lijst met hairlines (herkenbare situaties, feiten) ---------- */
.ta-list{margin:0;border-top:1px solid var(--line)}
.ta-list li{list-style:none;padding:15px 0 15px 26px;border-bottom:1px solid var(--line);position:relative;
  font:400 16px/1.6 var(--body);color:var(--text)}
.ta-list li::before{content:"";position:absolute;left:0;top:26px;width:10px;height:1.5px;background:var(--blue);opacity:.85}
.ta-list--mist{border-top-color:var(--mist-dark)}
.ta-list--mist li{border-bottom-color:var(--mist-dark)}

/* ---------- vinkjeslijst ---------- */
.ta-checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 32px}
.ta-checks--one{grid-template-columns:1fr}
.ta-checks li{position:relative;padding-left:28px;font:400 16px/1.6 var(--body);color:var(--text)}
.ta-checks li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;
  background:var(--blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23276FCF' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") center/11px no-repeat}
.ta-checks--light li{color:#CBD9E8}
.ta-checks--light li::before{
  background:rgba(127,176,240,.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%237FB0F0' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") center/11px no-repeat}
@media(max-width:767px){.ta-checks{grid-template-columns:1fr}}

/* ---------- gegroepeerde inbegrepen-lijst ---------- */
.ta-incl{display:grid;gap:26px}
.ta-incl__g{border-top:1px solid var(--mist-dark);padding-top:16px}
.ta-incl__h{font:700 12px/1 var(--body);letter-spacing:1.4px;text-transform:uppercase;color:var(--blue);margin:0 0 12px}
.ta-incl ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ta-incl li{position:relative;padding-left:26px;font:400 15.5px/1.55 var(--body);color:var(--text)}
.ta-incl li::before{content:"";position:absolute;left:0;top:3px;width:17px;height:17px;border-radius:50%;
  background:var(--blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23276FCF' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") center/10px no-repeat}

/* ---------- rijen met waarde rechts ---------- */
.ta-rows{border-top:1px solid var(--line)}
.ta-rows__r{display:flex;gap:24px;justify-content:space-between;align-items:baseline;
  padding:17px 0;border-bottom:1px solid var(--line)}
.ta-rows__l{font:500 16.5px/1.5 var(--body);color:var(--text);margin:0}
.ta-rows__v{font:700 16.5px/1.5 var(--body);color:var(--navy);margin:0;text-align:right;white-space:nowrap}
.ta-rows__sub{display:block;font:400 14px/1.55 var(--body);color:var(--muted);margin-top:3px;white-space:normal}
@media(max-width:520px){.ta-rows__r{flex-direction:column;gap:4px}.ta-rows__v{text-align:left}}

/* ---------- prijskaart ---------- */
.ta-price{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);
  padding:30px 28px 28px;height:100%;display:flex;flex-direction:column;position:relative}
.ta-price--featured{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}
.ta-price__tag{position:absolute;top:-11px;left:28px;background:var(--blue);color:#fff;
  font:600 11px/1 var(--body);letter-spacing:1.1px;text-transform:uppercase;padding:7px 12px;border-radius:var(--r-pill)}
.ta-price__for{font:700 12px/1 var(--body);letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}
.ta-price__amount{display:flex;align-items:baseline;gap:8px;margin:16px 0 0;flex-wrap:wrap}
.ta-price__amount i{font:600 16px/1 var(--body);font-style:normal;color:var(--muted);align-self:center}
.ta-price__amount b{font:800 46px/1 var(--head);color:var(--navy);letter-spacing:-2px}
.ta-price__amount span{font:500 15px/1.3 var(--body);color:var(--muted)}
.ta-price__soft{font:400 14px/1.6 var(--body);color:var(--muted);margin:10px 0 0;
  padding:11px 13px;background:var(--mist);border-radius:7px}
.ta-price__note{font:400 14.5px/1.6 var(--body);color:var(--muted);margin:14px 0 20px;
  padding-bottom:18px;border-bottom:1px solid var(--line)}
.ta-price ul{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:11px}
.ta-price li{position:relative;padding-left:26px;font:400 15.5px/1.55 var(--body);color:var(--text)}
.ta-price li::before{content:"";position:absolute;left:0;top:3px;width:17px;height:17px;border-radius:50%;
  background:var(--blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23276FCF' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") center/10px no-repeat}
.ta-price .ta-price__cta{margin-top:auto}

/* ---------- stappen ---------- */
.ta-step{border-top:2px solid var(--navy);padding-top:18px}
.ta-step__n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:5px;
  background:var(--blue);color:#fff;font:700 12.5px/1 var(--body)}
.ta-step h3{font:700 18.5px/1.32 var(--head);color:var(--navy);margin:13px 0 8px;letter-spacing:-.3px}
.ta-step p{font:400 15.5px/1.65 var(--body);color:var(--muted);margin:0}

/* ---------- tekstblokken ---------- */
.ta-lead .elementor-widget-container{font-size:19.5px;line-height:1.62;color:var(--muted)}
.ta-prose h2{margin-top:2em}
.ta-prose h3{margin-top:1.6em}
.ta-prose ul,.ta-prose ol{padding-left:1.15em}
.ta-prose li{margin-bottom:.45em}
.ta-prose a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}

/* ---------- FAQ (native details/summary, geen JavaScript) ---------- */
.ta-faqlist{border-top:1px solid var(--line)}
.ta-fq{border-bottom:1px solid var(--line)}
.ta-fq>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;
  list-style:none;padding:20px 2px;font:700 17px/1.45 var(--head);color:var(--navy);letter-spacing:-.2px}
.ta-fq>summary::-webkit-details-marker{display:none}
.ta-fq>summary:hover{color:var(--blue)}
.ta-fq>summary:focus-visible{outline:3px solid var(--blue);outline-offset:-3px;border-radius:5px}
.ta-fq .ta-faq__i{flex:0 0 18px;transition:transform .2s ease}
.ta-fq[open] .ta-faq__i{transform:rotate(180deg)}
.ta-fq[open]>summary{color:var(--blue)}
.ta-fq__a{padding:0 44px 22px 2px;font:400 16px/1.7 var(--body);color:var(--muted)}
.ta-fq__a p{margin:0 0 12px}
.ta-fq__a p:last-child{margin-bottom:0}
.ta-fq__a a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
@media(max-width:767px){.ta-fq>summary{font-size:16.5px}.ta-fq__a{padding-right:8px}}

/* ---------- formulieren ---------- */
.elementor-field-group>label{margin-bottom:7px!important}
.elementor-form .elementor-field-textual{box-shadow:none}
.elementor-form .elementor-field-textual::placeholder{color:#93A3B4}
.elementor-form .elementor-field-type-acceptance .elementor-field-option label{font-size:14.5px;line-height:1.55;color:var(--muted)}
.elementor-form .elementor-field-type-acceptance a{color:var(--blue);text-decoration:underline}
.elementor-message{font-family:var(--body);font-size:15px}
.elementor-message.elementor-message-success{color:var(--blue-dark)}
.elementor-field-type-acceptance input[type=checkbox]{
  width:24px;height:24px;accent-color:var(--blue);margin-right:4px;flex:0 0 24px}
.elementor-field-type-acceptance .elementor-field-option{display:flex;gap:10px;align-items:flex-start;padding:6px 0}
.elementor-field-type-acceptance .elementor-field-option label{margin-top:2px}

/* ---------- header ---------- */
.ta-header{background:#fff}
.ta-header__main{border-bottom:1px solid var(--line)}
.ta-header .elementor-nav-menu--main .elementor-item{font:500 15.5px/1 var(--body)}
.ta-header .elementor-nav-menu--dropdown .elementor-item{font:400 15.5px/1 var(--body)}
.ta-header .elementor-nav-menu--dropdown{border-radius:0 0 10px 10px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(4,23,48,.12)}
.elementor-sticky--effects.ta-header .ta-header__main{box-shadow:0 8px 24px rgba(4,23,48,.07)}
.ta-header__bar{background:var(--navy);color:#B8C8DC}
.ta-header__bar a{color:#B8C8DC;text-decoration:none;display:inline-block;padding:4px 0;min-height:24px}
.ta-header__bar a:hover{color:#fff}
@media(max-width:1024px){
  .ta-header .elementor-nav-menu__container.elementor-nav-menu--dropdown{
    left:0;right:0;width:100%;max-width:100vw}
}

/* ---------- footer ---------- */
.ta-footer{background:var(--navy);color:#AFC2D6}
.ta-footer a{color:#AFC2D6;text-decoration:none}
.ta-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.ta-footer h2,.ta-footer .elementor-heading-title{color:#fff}
.ta-footer .elementor-nav-menu .elementor-item{color:#AFC2D6!important;font-weight:400!important}
.ta-footer .elementor-nav-menu .elementor-item:hover{color:#fff!important}
.ta-footer__legal{border-top:1px solid var(--navy-line)}
.ta-footer p a{display:inline-block;padding:4px 0;min-height:24px}

/* ---------- contactgegevens ---------- */
.ta-contact{display:grid;gap:18px;margin:0}
.ta-contact a{color:var(--navy);text-decoration:none;display:inline-block;padding:4px 0;min-height:24px}
.ta-contact a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.ta-contact__i{display:flex;gap:14px;align-items:flex-start}
.ta-contact__i svg{flex:0 0 20px;width:20px;height:20px;margin-top:3px;stroke:var(--blue);fill:none;stroke-width:1.9}
.ta-contact__l{font:600 11.5px/1 var(--body);letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:3px}
.ta-contact__v{font:500 16.5px/1.55 var(--body);color:var(--navy);margin:0}

/* ---------- contactroutes in de slot-cta ---------- */
.ta-routes{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--r-card);background:#fff;overflow:hidden}
.ta-routes a{display:flex;gap:15px;align-items:center;padding:19px 22px;border-top:1px solid var(--line);
  text-decoration:none;color:var(--navy);transition:background .15s ease}
.ta-routes a:first-child{border-top:0}
.ta-routes a:hover{background:var(--mist)}
.ta-routes svg{flex:0 0 20px;width:20px;height:20px;stroke:var(--blue);fill:none;stroke-width:1.9}
.ta-routes b{display:block;font:600 16px/1.35 var(--body)}
.ta-routes small{display:block;font:400 14px/1.45 var(--body);color:var(--muted);margin-top:2px}
.ta-routes__go{margin-left:auto;font:600 20px/1 var(--body);color:var(--blue)}

/* ---------- artikelkaarten ---------- */
.elementor-post__card{transition:border-color .18s ease, transform .18s ease}
.elementor-post__card:hover{border-color:var(--blue)!important;transform:translateY(-2px)}
.elementor-post__card .elementor-post__avatar,
.elementor-post__card .elementor-post__meta-data .elementor-post-avatar,
.elementor-post__card .elementor-post__comments-count{display:none}
.elementor-post__card .elementor-post__badge{background:var(--blue);color:#fff;
  font:600 11px/1 var(--body);letter-spacing:.9px;text-transform:uppercase;padding:7px 11px;border-radius:var(--r-pill)}
.elementor-post__card .elementor-post__meta-data{border-top:1px solid var(--line);
  font:500 13px/1 var(--body);color:var(--muted)!important;padding-top:14px;margin-top:16px}
.elementor-post__card .elementor-post-date{color:var(--muted)!important}
.elementor-post__card .elementor-post__title a{color:var(--navy);transition:color .15s ease;
  display:block;padding:3px 0}
.elementor-post__card:hover .elementor-post__title a{color:var(--blue)}
.elementor-post__card .elementor-post__read-more{font-weight:600;color:var(--blue)}

/* ---------- artikelbeeld ---------- */
.ta-prose figure.ta-hero-fig{margin:0 0 34px}
.ta-prose figure.ta-hero-fig img{width:100%;height:400px;object-fit:cover;object-position:50% 32%;
  border-radius:var(--r-card);display:block}
@media(max-width:767px){.ta-prose figure.ta-hero-fig img{height:230px}.ta-prose figure.ta-hero-fig{margin-bottom:26px}}

/* ---------- houder voor scripts en de zweefknop ----------
   Deze container bevat alleen json-ld en scriptblokken. Zonder deze regel
   houdt Elementor er marge en gap aan over: een wit vlak onder de footer. */
.ta-scripts{height:0;min-height:0;padding:0;margin:0;gap:0;overflow:visible}
.ta-scripts>*{margin:0!important;height:0;min-height:0}
.ta-scripts .elementor-widget-html>.elementor-widget-container{height:0}

/* ---------- WhatsApp zweefknop ---------- */
.ta-wa{position:fixed;right:20px;bottom:20px;z-index:998;width:54px;height:54px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 8px 22px rgba(4,23,48,.22)}
.ta-wa svg{width:29px;height:29px;fill:#fff}
.ta-wa:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
@media(max-width:767px){.ta-wa{right:14px;bottom:14px}}

/* ---------- pre-check ---------- */
.ta-pc{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:30px 28px}
.ta-pc__bar{height:4px;background:var(--mist-dark);border-radius:var(--r-pill);overflow:hidden;margin-bottom:22px}
.ta-pc__bar i{display:block;height:100%;background:var(--blue);transition:width .25s ease;border-radius:var(--r-pill)}
.ta-pc__q{font:700 21px/1.35 var(--head);color:var(--navy);margin:0 0 7px;letter-spacing:-.4px}
.ta-pc__h{font:400 15px/1.6 var(--body);color:var(--muted);margin:0 0 20px}
.ta-pc__opts{display:flex;flex-wrap:wrap;gap:10px}
.ta-pc__opt{font:500 15.5px/1 var(--body);color:var(--navy);background:#fff;
  border:1px solid var(--line);border-radius:var(--r-btn);padding:14px 22px;cursor:pointer}
.ta-pc__opt:hover{border-color:var(--blue);background:var(--blue-soft)}
.ta-pc__opt:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.ta-pc__back{background:none;border:0;padding:6px 0;margin-top:16px;cursor:pointer;min-height:24px;
  font:500 14.5px/1 var(--body);color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.ta-pc__res{font:400 16px/1.65 var(--body);color:var(--text)}
.ta-pc__res h3{font:700 22px/1.3 var(--head);color:var(--navy);margin:0 0 10px;letter-spacing:-.4px}
.ta-pc__res p{margin:0 0 16px}
.elementor a.ta-pc__btn,a.ta-pc__btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;
  font:600 16px/1 var(--body);padding:15px 26px;border-radius:var(--r-btn);text-align:center}
.elementor a.ta-pc__btn:hover,a.ta-pc__btn:hover{background:var(--blue-dark);color:#fff}
.elementor a.ta-pc__btn:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.ta-pc__num{display:inline-flex;align-items:center;gap:8px;margin-top:6px}
.ta-pc__num input{width:120px;font:500 16px/1 var(--body);padding:13px 14px;
  border:1px solid var(--line);border-radius:var(--r-btn);color:var(--navy)}

/* ---------- diversen ---------- */
.ta-note{background:var(--mist);border-left:3px solid var(--blue);border-radius:0 8px 8px 0;padding:20px 22px;
  font:400 15.5px/1.65 var(--body);color:var(--text)}
.ta-note strong{color:var(--navy)}
.ta-note p:last-child{margin-bottom:0}
.ta-quiet{font:400 14px/1.65 var(--body);color:var(--muted)}
.ta-hr{height:1px;background:var(--line);border:0;margin:0}
.ta-badge{display:inline-block;background:var(--blue-soft);color:var(--blue-dark);
  font:700 12px/1 var(--body);letter-spacing:.7px;text-transform:uppercase;padding:9px 13px;border-radius:var(--r-pill)}
.ta-badge--light{background:rgba(127,176,240,.16);color:#BFD8F5}
.ta-meta{font:600 12.5px/1 var(--body);letter-spacing:1.1px;text-transform:uppercase;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- knoppen ---------- */
@media(max-width:767px){
  .ta-btnrow{width:100%}
  .ta-btnrow>.elementor-widget-button{width:100%!important}
  .ta-btnrow .elementor-button{width:100%;justify-content:center}
}
.ta-checks li a,.ta-contact__v a{display:inline-block;padding:3px 0;min-height:24px}

/* ---------- zichtbare toetsenbordfocus ---------- */
.elementor-form .elementor-field-textual:focus,
.elementor-form .elementor-field-textual:focus-visible,
.elementor-form select.elementor-field:focus,
.elementor-form textarea.elementor-field:focus{
  outline:3px solid var(--blue);outline-offset:2px;border-color:var(--blue);box-shadow:none}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,
.elementor-button:focus-visible,.elementor-menu-toggle:focus-visible,.elementor-item:focus-visible{
  outline:3px solid var(--blue);outline-offset:2px;border-radius:4px}
/* outline-color apart herhalen: in de shorthand wint soms currentColor,
   waardoor de focusring per element een andere kleur kreeg. */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,
.elementor-form .elementor-field-textual:focus,
.elementor-form .elementor-field-textual:focus-visible,
.elementor-button:focus-visible,.elementor-menu-toggle:focus-visible,.elementor-item:focus-visible{
  outline-color:var(--blue)}
/* Een <select> houdt in Chrome soms currentColor als outline-kleur. De ring is dan
   nog steeds 3px massief en ruim zichtbaar (contrast 14:1), alleen niet merkblauw.
   Deze regel pakt hem waar de browser wel focus-visible zet. */
.elementor-form select:focus-visible{outline-color:var(--blue)!important}
.ta-footer a:focus-visible,.ta-header__bar a:focus-visible,
.ta-checks--light a:focus-visible{outline-color:var(--blue-light)}
.elementor-menu-toggle:focus-visible{box-shadow:none}
.skip-link:focus{background:#fff!important;color:var(--navy)!important;padding:12px 18px!important}

/* ---------- waardenraster op Over ons ---------- */
.ta-vals{display:grid;grid-template-columns:1fr 1fr;gap:30px 40px;margin:0}
.ta-vals>div{border-top:2px solid var(--blue);padding-top:18px}
.ta-vals h3{font:700 18.5px/1.32 var(--head);color:var(--navy);margin:0 0 8px;letter-spacing:-.3px}
.ta-vals p{font:400 15.5px/1.65 var(--body);color:var(--muted);margin:0}
@media(max-width:767px){.ta-vals{grid-template-columns:1fr;gap:24px}}

/* =====================================================================
   Eindronde spacing, uitlijning en responsief gedrag
   ===================================================================== */

/* ---------- dubbele navigatie in de sticky-opvuller ----------
   Elementor zet onder een sticky header een volledige kopie van dat element
   neer om de ruimte op te vullen. Die kopie bevat het hele menu, dus een
   schermlezer leest de navigatie twee keer voor en de tabvolgorde loopt er
   eerst doorheen. visibility:hidden haalt hem uit beide, maar laat de
   opvulhoogte staan: precies waar het element voor bedoeld is. */
.elementor-sticky__spacer{visibility:hidden}

/* ---------- aanraakvlak van een link in een akkoordvinkje ----------
   Dezelfde behandeling als de andere inline links in de huisstijl. */
.elementor-form .elementor-field-type-acceptance a{
  display:inline-block;padding:3px 0;min-height:24px}

/* ---------- microtypografie op mobiel ----------
   De kleine hoofdletterlabels blijven bewust klein, maar 11 tot 12 px is op
   een telefoon te weinig. Een stap erbij, alleen daar. */
@media(max-width:767px){
  .ta-eyebrow .elementor-heading-title{font-size:12.5px;letter-spacing:1.4px}
  .ta-incl__h,.ta-price__for{font-size:12.5px}
  .ta-price__tag{font-size:12px}
  .ta-contact__l{font-size:12.5px}
  .ta-badge{font-size:12.5px}
  .ta-proofcard__m{font-size:13.5px;white-space:normal}
}

/* ---------- artikelkaarten: een uiterlijk voor beide plekken ----------
   Elementor kent twee skins voor dezelfde kaart: "cards" onder een artikel en
   "archive_cards" op het nieuwsarchief. De instellingen van de een werken niet
   op de ander, waardoor /nieuws/ een randloze kaart met een kop van 21 px liet
   zien en dezelfde kaart onder een artikel een omrande kaart met 18,5 px.
   De huisstijl staat daarom hier, een keer, voor allebei. */
.elementor-post__card{
  border:1px solid var(--line)!important;border-radius:var(--r-card)!important;
  background:#fff!important;overflow:hidden}
.elementor-post__card .elementor-post__title,
.elementor-post__card .elementor-post__title a{
  font:700 18.5px/1.35 var(--head)!important;letter-spacing:-.3px;color:var(--navy)}
.elementor-post__card .elementor-post__excerpt p{
  font:400 15.5px/1.6 var(--body)!important;color:var(--muted)!important}
.elementor-post__card .elementor-post__read-more{font:600 15px/1.4 var(--body)!important}
.elementor-post__card .elementor-post-date{font:500 13px/1 var(--body)!important}

/* De uitsnede van het kaartbeeld. Elementor laat de afbeelding op ware hoogte
   staan en centreert hem met top:50% en een transform. De uitsnede valt dan
   precies in het midden, ook als het onderwerp hoger in beeld zit. Met een
   echte cover-uitsnede ligt het zwaartepunt iets boven het midden, wat voor
   foto's van mensen beter uitpakt. De !important is nodig omdat de eigen regel
   van de widget dezelfde specificiteit heeft en later wordt ingeladen. */
.elementor-post__card .elementor-post__thumbnail{position:relative;overflow:hidden}
.elementor-post__card .elementor-post__thumbnail img{
  position:absolute!important;top:0!important;left:0!important;transform:none!important;
  width:100%!important;height:100%!important;object-fit:cover;object-position:50% 42%}

/* ---------- zijmarge op een venster zo breed als de inhoud ----------
   De inhoudskolom is 1180 px. Vanaf 1025 px stond er geen zijmarge omheen,
   dus op een venster van 1025 tot 1244 px liep de tekst tot tegen beide
   schermranden: gemeten op 1180 px was de kolom precies 1180 breed met nul
   marge. De marge komt op de buitenste sectie te staan, niet op de kolom, dus
   op een breder scherm blijft de kolom 1180 en verschuift er niets.
   32 px is dezelfde marge als op tablet; mobiel houdt 20 px. */
@media(min-width:1025px){
  body > .elementor > .e-con-boxed,
  .ta-header > .e-con-boxed,
  .ta-footer > .e-con-boxed{padding-left:32px;padding-right:32px}
}

/* ---------- uitsnede van staande foto's op tablet ----------
   Op desktop staat de herofoto in een smalle staande kolom en klopt een
   uitsnede vanuit het midden. Zodra de kolom op tablet over de volle breedte
   valt, wordt hetzelfde kader 704 bij 420: een liggende strook uit een staande
   foto. Met het midden als zwaartepunt viel het hoofd van de persoon daarbij
   buiten beeld. Het zwaartepunt schuift daarom omhoog op de schermen waar dat
   kader breed en laag wordt. */
@media(max-width:1024px){
  .ta-img-cover img,.ta-fill .elementor-widget-image img{object-position:50% 26%}
}

/* ---------- bewijskaart onder de herofoto op tablet ----------
   De kaart liep over de volle breedte met de inhoud in het midden, waardoor er
   links een leeg vlak van zo'n 200 px overbleef. Links uitlijnen volgt de
   plaatsing op desktop en laat de kaart meegroeien met zijn eigen inhoud. */
@media(max-width:1024px){
  .ta-proofcard{left:16px;right:auto;max-width:calc(100% - 32px);justify-content:flex-start}
}

/* ---------- aanraakvlak van "lees het artikel" ----------
   Een losse blokverwijzing onder een kaart, geen inline link in een zin, dus
   de uitzondering voor inline links geldt hier niet. Zelfde stap als de
   andere losse links in de huisstijl. */
.elementor-post__card .elementor-post__read-more{
  display:inline-block;padding:4px 0;min-height:24px}/* End custom CSS */