/* Ronde 7: alle overige pagina's */

/* Kruimelpad op donker */
.tb-yhero:not(.tb-yhero--plain) .tb-crumbs,.tb-yhero:not(.tb-yhero--plain) .tb-crumbs li{color:#C9D8DC}
.tb-yhero:not(.tb-yhero--plain) .elementor-widget-text-editor.tb-crumbs a{color:#fff}
.tb-yhero:not(.tb-yhero--plain) .tb-crumbs li+li::before{color:#8FA6AC}

/* Paginahero: foto over de breedte, rechts een compacte actiekaart */
@media (min-width:1025px){
.e-con.tb-yhero--page:not(.tb-yhero--plain),.e-con.tb-yhero--prod:not(.tb-yhero--plain){min-height:520px}
.tb-yhero--page .tb-yhero-form{flex:0 0 360px}
.tb-yhero--page .tb-yhero-txt,.tb-yhero--prod .tb-yhero-txt{max-width:620px}
.tb-yhero--page .tb-yh1 .elementor-heading-title,.tb-yhero--prod .tb-yh1 .elementor-heading-title{font-size:clamp(2.2rem,1.4rem + 2vw,3.2rem)}
.tb-yhero--lang .tb-yhero-form{flex:0 0 460px;align-self:center}
.e-con.tb-yhero--lang:not(.tb-yhero--plain){padding-block:40px!important}
.tb-yhero--lang>.tb-xhero-img img{object-position:60% 60%!important}
}
.e-con.tb-ycardcta{background:#fff;border-radius:var(--rl);box-shadow:var(--sh2);padding:26px!important;--row-gap:10px}
.tb-ycardcta-t p{margin:0;font:500 1.2rem/1.25 Outfit,system-ui,sans-serif;color:var(--text-main)}
.tb-ycardcta .tb-cta,.tb-ycardcta .tb-cta .elementor-button-wrapper,.tb-ycardcta .tb-cta .elementor-button{width:100%!important}
.tb-ycardcta .tb-tel{text-align:center}
.tb-ycardcta .tb-tel p{margin:0;color:var(--text-muted)!important}
.tb-yhero .tb-ycardcta .elementor-widget-text-editor.tb-tel a{color:var(--text-main)!important}
.tb-yherochip{position:absolute!important;left:auto!important;right:18px;bottom:14px;z-index:1}
.tb-yherochip p{background:rgba(9,26,38,.6);color:#fff;backdrop-filter:blur(4px)}
.tb-yherologo-w{margin-bottom:2px}
.tb-yherologo-w p{margin:0}
.tb-yherologo{width:150px;height:36px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);display:block}

/* Merkhero met productbeeld */
.e-con.tb-yhero--prod:not(.tb-yhero--plain){background:linear-gradient(120deg,#0B2230 0%,#10394A 60%,#0F5468 100%)!important}
.e-con.tb-yprod{flex:0 0 420px;position:relative;background:#fff;border-radius:var(--rl);overflow:hidden;box-shadow:var(--sh2);padding:18px!important;align-self:center}
.tb-yprod-img img{width:100%;height:380px;object-fit:contain;display:block}

/* Grote tekstbeelden en band */
.tb-ylead p{font-size:1.08rem;line-height:1.65;color:var(--text-muted)}
.e-con.tb-xsplit-media{min-height:460px;box-shadow:var(--sh1)}
.e-con.tb-ycert{background:#fff;padding:24px!important}
.tb-ycert .tb-xsplit-img{position:static!important;height:auto}
.tb-ycert .tb-xsplit-img img{height:auto!important;object-fit:contain}
.e-con.tb-yband{--flex-direction:row;--flex-wrap:nowrap;--column-gap:clamp(24px,5vw,72px);--align-items:flex-start;background:linear-gradient(120deg,var(--ta),var(--tb));border-radius:var(--rl);padding:clamp(28px,4.5vw,56px)!important;width:100%}
.e-con.tb-yband-k{--width:auto;flex:0 0 40%;--row-gap:14px;min-width:0}
.e-con.tb-yband-t{--width:auto;flex:1 1 0;min-width:0}
.tb-yband-t p{font-size:1.06rem;line-height:1.65}
.tb-yband .tb-tile .elementor-icon{background:#fff}

/* Kaarten rijker */
.e-con.tb-xcardb{transition:box-shadow .15s,transform .15s}
.e-con.tb-xcardb:hover{box-shadow:var(--sh2);transform:translateY(-2px)}
.e-con.tb-xcards>.tb-xcardb{height:100%}
.tb-xcardb p{color:var(--text-muted);font-size:.99rem;line-height:1.6}
.e-con.tb-xcardb.tb-ybrand{--row-gap:10px}
.tb-ybrandlogo-w p{margin:0}
.e-con.tb-xcardb.tb-ybrand .tb-ybrandlogo-w{display:flex;align-items:center;height:64px;padding:0 16px;background:var(--soft);border-radius:12px;margin-bottom:6px}
.tb-ybrandlogo{width:150px;height:34px;object-fit:contain;object-position:left center;filter:brightness(0);opacity:.85;display:block}

/* Stappen: horizontaal en genummerd */
.e-con.tb-ysteps{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));counter-reset:ys}
.e-con.tb-ysteps .tb-xstep{counter-increment:ys;border-top:0;position:relative;padding-top:64px!important;overflow:hidden}
.tb-ysteps .tb-xstep::before{content:counter(ys);position:absolute;left:26px;top:20px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--cta-bg);color:#fff;font:600 .98rem Outfit,sans-serif}
.tb-ysteps .tb-xstep p{color:var(--text-muted);font-size:.99rem}

/* Stroomschema met tekst */
.e-con.tb-flowtxt{--row-gap:12px;background:#fff;border-radius:var(--rm);box-shadow:var(--sh2);padding:26px!important;width:100%}
.tb-flowtxt p{font-size:.99rem;line-height:1.6;color:var(--text-muted)}
.e-con.tb-flowcard--t{--justify-content:center;--align-items:center;display:flex}

/* Contact */
.e-con.tb-ytiles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.e-con.tb-ytile{--width:auto;--flex-direction:row;--flex-wrap:nowrap;--column-gap:12px;--align-items:center;background:#fff;border-radius:var(--rm);padding:16px!important;box-shadow:var(--sh1);min-width:0}
.tb-ytile p{margin:0;font-size:.95rem;line-height:1.35;overflow-wrap:anywhere}
.tb-ytile .elementor-widget-text-editor{flex:1;min-width:0;width:auto}
.e-con.tb-xformkol{position:sticky;top:96px;align-self:flex-start}

/* FAQ-pagina */
.e-con.tb-ynarrow{max-width:860px;margin:0 auto;width:100%}

/* Reviewblok als template */
.tb-ytpl{width:100%}
.tb-ytpl .elementor{width:100%}

/* Project-grid op de overzichtspagina */
.rp-project-card{transition:box-shadow .15s,transform .15s}
.rp-project-card:hover{box-shadow:var(--sh2);transform:translateY(-2px)}

/* Juridische pagina's */
body.page:not(.elementor-page) .site-content{padding:clamp(28px,4vw,56px) 16px}
body.page:not(.elementor-page) .inside-article{max-width:860px;margin:0 auto;background:#fff;border-radius:var(--rl);box-shadow:var(--sh1);padding:clamp(24px,4vw,56px)}
body.page:not(.elementor-page) .site-main,body.page:not(.elementor-page) .content-area{background:transparent;width:100%;float:none}
body.page:not(.elementor-page) .site-content .grid-container,body.page:not(.elementor-page) .grid-container{max-width:none}
body.page:not(.elementor-page) .entry-title{font:500 clamp(2rem,1.5rem + 1.6vw,2.8rem)/1.1 Outfit,system-ui,sans-serif;color:var(--text-main);margin-bottom:.6em}
body.page:not(.elementor-page) .entry-content h2{font:500 1.35rem/1.25 Outfit,system-ui,sans-serif;margin:1.6em 0 .5em;color:var(--text-main)}
body.page:not(.elementor-page) .entry-content hr{display:none}
body.page:not(.elementor-page) .entry-content a{color:var(--link);text-decoration:underline}
body.page:not(.elementor-page) .entry-content p,body.page:not(.elementor-page) .entry-content li{color:var(--text-muted)}

/* Tablet en mobiel */
@media (max-width:1024px){
.tb-yhero--page .tb-yhero-form{order:3}
.tb-yherochip{display:none!important}
.e-con.tb-yhero--prod:not(.tb-yhero--plain){padding-bottom:28px!important}
.e-con.tb-yprod{width:calc(100% - 32px);max-width:520px;margin:18px auto 0!important}
.tb-yprod-img img{height:300px}
.e-con.tb-yband{--flex-wrap:wrap;--row-gap:14px}
.e-con.tb-yband-k,.e-con.tb-yband-t{flex:1 1 100%}
.e-con.tb-xformkol{position:static}
.e-con.tb-xsplit-media{min-height:340px}
.tb-yhero--lang .tb-yhero-form{max-width:640px}
}
@media (max-width:767px){
.e-con.tb-ytiles{grid-template-columns:minmax(0,1fr)}
.e-con.tb-xcards>.tb-xcardb{height:auto}
.tb-yhero:not(.tb-yhero--plain) .tb-yhero-txt{padding-top:22px!important}
.tb-yhero>.tb-xhero-img{height:clamp(210px,56vw,300px)!important}
.tb-yhero--page .tb-yhero-form{margin-top:-30px!important}
}
.e-con.tb-ytplwrap{--width:100%;width:100%;padding:0!important}
/* Vijf stappen: 3 + 2 zonder losse kaart */
@media (min-width:1025px){
.e-con.tb-ysteps:has(>.tb-xstep:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}
.tb-ysteps:has(>.tb-xstep:nth-child(5):last-child)>.tb-xstep{grid-column:span 2}
.tb-ysteps:has(>.tb-xstep:nth-child(5):last-child)>.tb-xstep:nth-child(n+4){grid-column:span 3}
}
@media (max-width:1024px){
.tb-yhero--prod:not(.tb-yhero--plain) .tb-yhero-form.tb-yprod{margin:20px auto 0!important}
.tb-yhero--prod:not(.tb-yhero--plain) .tb-yhero-txt{padding-bottom:0!important}
}

/* Tekstband strakker: icoon en kop op één lijn, tekst ernaast, verticaal gecentreerd */
.e-con.tb-yband{--align-items:center;align-items:center;padding:clamp(26px,3.6vw,44px) clamp(24px,4vw,52px)!important}
.e-con.tb-yband-k{--flex-direction:column;--align-items:flex-start;flex:0 0 36%;--row-gap:12px}
.tb-yband .tb-xh2 .elementor-heading-title{font-size:clamp(1.5rem,1.25rem + .9vw,2.05rem);line-height:1.14}
.e-con.tb-yband-t{align-self:center}
.tb-yband-t p{font-size:1.02rem;line-height:1.62;margin:0 0 .75em;color:var(--text-main)}
.tb-yband-t p:last-child{margin-bottom:0}

/* Merk: cijfers */
.e-con.tb-ystats{--flex-direction:row;--flex-wrap:nowrap;--align-items:center;--column-gap:clamp(24px,4vw,56px);background:linear-gradient(120deg,#0B2230,#10394A 65%,#0F5468);border-radius:var(--rl);padding:clamp(28px,4.5vw,56px)!important;width:100%}
.e-con.tb-ystats-t{--width:auto;flex:0 0 38%;--row-gap:12px;min-width:0}
.tb-ystats-t .elementor-heading-title{color:#fff!important}
.tb-ystats-t p{color:#D5E2E5;margin:0}
.tb-ystats-n p{font-size:.84rem;color:#A8BEC3;line-height:1.45}
.e-con.tb-ystats-l{--width:auto;flex:1 1 0;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}
.e-con.tb-ystat{--width:auto;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--rm);padding:22px 18px!important;min-width:0}
.tb-ystat .tb-ystat-n{font:500 clamp(1.5rem,1.2rem + .8vw,2.05rem)/1.1 Outfit,system-ui,sans-serif;color:#fff;margin:0 0 8px}
.tb-ystat .tb-ystat-l{font-size:.9rem;line-height:1.4;color:#C9D8DC;margin:0}

/* Merk: vijf sterke punten (3 + 2) */
@media (min-width:1025px){
.e-con.tb-yvijf{grid-template-columns:repeat(6,minmax(0,1fr))}
.tb-yvijf>.tb-xcardb{grid-column:span 2}
.tb-yvijf>.tb-xcardb:nth-child(n+4){grid-column:span 3}
}
.tb-points--ruim ul{gap:12px}
.tb-points--ruim li{font-size:1.04rem;line-height:1.45}
.tb-ylead a{color:var(--link)}
@media (max-width:1024px){
.e-con.tb-ystats{--flex-wrap:wrap;--row-gap:22px}
.e-con.tb-ystats-t,.e-con.tb-ystats-l{flex:1 1 100%}
}
@media (max-width:767px){
.e-con.tb-ystats-l{grid-template-columns:minmax(0,1fr)}
.e-con.tb-ystat{padding:18px!important}
.e-con.tb-yband-k{flex:1 1 100%}
}

/* Eén vast ritme tussen secties: de zichtbare ruimte is overal 2x --tb-r */
:root{--tb-r:clamp(24px,2.8vw,38px)}
.e-con.tb-x{padding-block:var(--tb-r)}
.e-con.tb-x.tb-x--tight{padding-block:var(--tb-r)}
.e-con.tb-x.tb-x--tight:has(.tb-xproof){padding-block:18px var(--tb-r)}
.e-con.tb-x.tb-x--hero{padding-block:8px var(--tb-r)}
.e-con.tb-x.tb-x--last{padding-block:var(--tb-r) calc(var(--tb-r)*2)}
.e-con.tb-yrev{margin-block:var(--tb-r)}
.e-con.tb-ycta{margin-top:var(--tb-r)}
.e-con.tb-yhero + .e-con.tb-x:not(.tb-x--tight),.e-con.tb-ycta + .e-con.tb-x{padding-top:calc(var(--tb-r)*2)}

/* Ads-pagina's: merklogo wit op de donkere hero */
.tb-yads .tb-yherologo{filter:brightness(0) invert(1);height:34px;width:auto;max-width:190px;display:block}
.e-con.tb-ybrand a{font-weight:600}
.tb-only-m{display:none}
@media (max-width:767px){
.tb-only-d{display:none!important}
.tb-only-m{display:block}
/* Ads mobiel: formulier direct in beeld, bellen zit in de kop */
.tb-yads>.tb-xhero-img,.tb-yads>.tb-yherochip,.tb-yads .tb-yhero-txt .tb-points,.tb-yads .tb-yhero-txt .tb-tel{display:none!important}
.e-con.tb-yads{padding:18px 0 22px!important}
.tb-yads .tb-yh1 .elementor-heading-title{font-size:1.75rem;line-height:1.14}
.tb-yads .e-con.tb-yhero-txt{--row-gap:10px}
.tb-yads .e-con.tb-yhero-in{--row-gap:16px}
.tb-yads .tb-yherologo{height:26px}
.tb-header-in .tb-tel p,.tb-header-in .tb-htel p{font-size:0;line-height:1;margin:0}
.tb-header-in .tb-tel a,.tb-header-in .tb-htel a{font-size:.98rem;white-space:nowrap}
/* Aanvraagpagina mobiel: formulier voor de uitleg */
.e-con.tb-yhero--flow .tb-yhero-txt{display:contents}
.tb-yhero--flow .tb-yhero-form{order:3}
.tb-yhero--flow .tb-ynext{order:4}
.tb-yhero--flow .tb-tel{order:5}
}
@media (max-width:767px){
.tb-yads .e-con.tb-yhero-txt{flex:0 0 auto!important;height:auto!important;min-height:0!important;overflow:visible}
.tb-yads .e-con.tb-yhero-form{margin-top:0!important;flex:0 0 auto!important;position:relative;transform:none!important}
.tb-yads .tb-yintro{margin-bottom:2px}
.tb-yads .tb-yintro p{margin:0}
}
