.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* Header: positie & megamenu. Item beslaat de volle rijhoogte zodat de muis zonder 'gat' naar het paneel kan. */
.elementor .e-con.ts-hd-row-in, .elementor .e-con.ts-hd-nav, .elementor .e-con.ts-hd-item { position: static; }
.elementor .e-con.ts-hd-nav { align-self: stretch; }
.elementor .e-con.ts-hd-item { margin-block: -16px; padding-block: 16px; }
.elementor .ts-hd-panel { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-8px); box-shadow: 0 24px 60px -28px rgba(20, 18, 16, .32); transition: opacity .2s cubic-bezier(.22, .61, .36, 1), transform .2s cubic-bezier(.22, .61, .36, 1), visibility .2s; }
.elementor .ts-hd-item:hover .ts-hd-panel, .elementor .ts-hd-item:focus-within .ts-hd-panel { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
.elementor .ts-hd-link { background-image: repeating-linear-gradient(90deg, #E8301F 0 7px, transparent 7px 11px); background-repeat: no-repeat; background-position: 0 100%; background-size: 0% 2px; transition: background-size .32s cubic-bezier(.22, .61, .36, 1); }
.elementor .ts-hd-item:hover .ts-hd-link, .elementor .ts-hd-item:focus-within .ts-hd-link { background-size: 100% 2px; }
.elementor .ts-hd-mlink:focus-visible, .elementor .ts-hd-feat:focus-visible, .elementor .ts-hd-burger:focus-visible { outline: 2px solid #E8301F; outline-offset: 3px; }

/* Vaste header bij scrollen (JS zet .is-fixed): donkere balk, bovenbalk verborgen */
.elementor .ts-hd.is-fixed { position: fixed; animation: ts-hd-in .35s cubic-bezier(.22, .61, .36, 1) both; }
.elementor .ts-hd.is-fixed .ts-hd-top { display: none; }
.elementor .ts-hd.is-fixed .ts-hd-row { background-color: #141210; box-shadow: 0 10px 30px -18px rgba(0, 0, 0, .6); }
.admin-bar .elementor .ts-hd.is-fixed { top: 32px; }
@media (max-width: 782px) { .admin-bar .elementor .ts-hd.is-fixed { top: 46px; } }
@keyframes ts-hd-in { from { transform: translateY(-100%); } to { transform: none; } }

/* Mobiel menu (JS zet body.ts-menu-open) */
.elementor .ts-hd-drawer { height: 100vh; height: 100dvh; }
body.ts-menu-open { overflow: hidden; }
body.ts-menu-open .elementor .ts-hd-drawer { display: flex; animation: ts-drawer-in .3s cubic-bezier(.22, .61, .36, 1) both; }
@keyframes ts-drawer-in { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .elementor .ts-hd-panel, .elementor .ts-hd-link { transition: none; } .elementor .ts-hd.is-fixed, body.ts-menu-open .elementor .ts-hd-drawer { animation: none; } }/* End custom CSS */