@font-face {
  font-family: 'Varsity Team';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/VarsityTeam-Bold.otf) format('opentype');
}

@font-face {
  font-family: 'Gochi Hand';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/c90d7920ea41.woff2) format('truetype');
}
@font-face {
  font-family: 'Graduate';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/0a1e5437d69f.woff2) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-regular.woff2) format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-bold.woff2) format('woff2');
}


:root { --tf-purple:var(--e-global-color-primary,#2F1B4E); --tf-orange:var(--e-global-color-accent,#E65026); }
html { scroll-behavior:smooth; scroll-padding-top:96px; }
body { margin:0; }
.elementor .elementor-widget-text-editor p:last-child { margin-bottom:0; }
.elementor .elementor-heading-title { overflow-wrap:normal; }
.tf-section { isolation:isolate; }
.tf-section > .e-con-inner { position:relative; z-index:1; }
.elementor-location-header { min-height:80px; }
.tf-header { position:fixed; inset:0 0 auto; z-index:1000; width:100%; box-shadow:0 4px 10px #2f1b4e20; }
.admin-bar .tf-header { top:32px; }
.tf-brand .elementor-heading-title { white-space:nowrap; }
.tf-header-row > .tf-brand,.tf-header-row > .tf-language-toggle,.tf-header-row > .tf-header-enroll { flex:0 0 auto; width:auto; }
.tf-header-row > .tf-main-menu { flex:1 1 auto; width:auto; min-width:0; }
.tf-header .elementor-nav-menu--main .tf-mobile-only { display:none; }
.tf-header .elementor-nav-menu--dropdown { top:100%; }
.tf-main-menu .elementor-nav-menu--dropdown a { padding:16px 24px; }
.tf-main-menu .elementor-nav-menu--dropdown .tf-mobile-only a { background:var(--tf-orange)!important; color:#000!important; font-weight:700; }
.tf-language-toggle .elementor-button { line-height:1; }
.tf-header .elementor-menu-toggle { padding:8px; color:#fff; background:transparent; }
.tf-header .elementor-menu-toggle svg { fill:currentColor; }
.tf-button-row > .elementor-widget { flex:0 0 auto; width:auto; }
.tf-button-row .elementor-button { white-space:nowrap; }
.tf-home-hero { position:relative; }
.tf-home-hero:before,.tf-home-hero:after { content:''; position:absolute; pointer-events:none; z-index:0; opacity:.2; }
.tf-home-hero:before { top:-10%;left:-5%;width:50%;height:120%;background:#E65026;transform:rotate(12deg);transform-origin:top left; }
.tf-home-hero:after { bottom:-10%;right:-5%;width:40%;height:100%;background:#6E4499;transform:rotate(-6deg);transform-origin:bottom right; }
.tf-home-hero-copy { position:relative;z-index:1; }
.tf-value-card { transition:transform .3s ease; }
.tf-value-card:hover { transform:translateY(-8px); }
.tf-home-art { position:relative; }
.tf-home-badge { position:absolute;bottom:-40px;left:-40px;transform:rotate(-6deg); }
.tf-dance-panel { box-shadow:0 24px 40px #180c3250; }
.tf-activity-preview { position:relative;overflow:hidden; }
.tf-activity-preview:before { content:'';position:absolute;inset:0;background:linear-gradient(to top,#2F1B4ECC,transparent);pointer-events:none; }
.tf-activity-preview > .elementor-widget { position:relative;z-index:1; }
.tf-activity-preview .elementor-heading-title:after { content:'';display:block;background:#E65026;height:4px;margin-top:8px;transform:scaleX(0);transform-origin:left;transition:transform .3s; }
.tf-activity-preview:hover .elementor-heading-title:after { transform:scaleX(1); }
.tf-home-cta { position:relative; }
.tf-home-cta:before { content:'TALENT FABRIEK 053 • TALENT FABRIEK 053 •';position:absolute;top:50%;left:0;transform:translateY(-50%);white-space:nowrap;font:700 120px/1 'Varsity Team',serif;color:#fff;opacity:.1;pointer-events:none; }
.tf-home-cta-button { flex:0 0 auto;width:auto;white-space:nowrap; }
.tf-footer .elementor-widget-text-editor a { color:inherit;overflow-wrap:anywhere; }
.tf-footer a:hover { color:#fff; }
.tf-footer .elementor-icon-list-icon { display:none; }
.tf-footer .elementor-icon-list-text { padding-inline-start:0!important; }
.tf-footer-columns > .e-con { flex-shrink:1; }
.tf-rooster-note { position:relative; }
.tf-rooster-note::before { content:'';position:absolute;top:0;bottom:0;right:-128px;left:auto;inset-inline-start:auto;width:256px;background:#C9AF2E;opacity:.1;transform:skewX(12deg);pointer-events:none; }
.tf-rooster-note > .elementor-widget { position:relative;z-index:1; }
.tf-site-skip { position:fixed;top:-100px;left:16px;z-index:5000;padding:12px 20px;background:#fff;color:#2F1B4E; }
.tf-site-skip:focus { top:16px; }
.tf-section a:focus-visible,.tf-footer a:focus-visible,.tf-header a:focus-visible,.tf-header button:focus-visible { outline:3px solid #C9AF2E;outline-offset:5px; }
@media(max-width:1200px) and (min-width:1025px) {
  .tf-header-row { column-gap:16px !important; }
  .tf-header .tf-main-menu { --e-nav-menu-horizontal-menu-item-margin:0px !important; }
  .tf-main-menu .elementor-nav-menu--main > ul { gap:14px; }
  .tf-header .tf-brand .elementor-heading-title { font-size:21px !important; }
  .tf-header-enroll .elementor-button { padding:10px 16px !important; }
}
@media(max-width:1024px) {
  .tf-home-badge { display:none; }
  .tf-header-row > .tf-brand { order:0; }
  .tf-header-row > .tf-language-toggle,.tf-header-row > .tf-language-native { order:1;margin-left:auto; }
  .tf-header-row > .tf-main-menu { order:2;flex:0 0 auto; }
  .tf-header-row > .tf-header-enroll { display:none; }
  .tf-activity-preview-row { flex-wrap:wrap; }
  .tf-activity-preview-row > .e-con { width:calc(50% - 12px);flex:0 0 calc(50% - 12px); }
  .tf-home-hero-copy { max-width:768px; }
}
@media(max-width:767px) {
  .admin-bar .tf-header { top:46px; }
  .tf-brand .elementor-heading-title { white-space:nowrap; }
  .tf-header-row > .elementor-widget { --width:auto;width:auto; }
  .tf-header-row > .tf-brand { max-width:calc(100% - 108px); }
  .tf-header .tf-brand .elementor-heading-title { font-size:18px !important; }
  .tf-header .tf-language-toggle .elementor-button { padding:6px 9px !important; }
  .tf-home-hero-copy { max-width:100%; }
  .tf-home-title .elementor-heading-title { overflow-wrap:anywhere; }
  .tf-button-row { align-items:stretch; }
  .tf-button-row > .elementor-widget,.tf-button-row .elementor-button { width:100%; }
  .tf-button-row .elementor-button { white-space:normal; }
  .tf-activity-preview-row { flex-direction:row; }
  .tf-activity-preview-row > .e-con { width:100%;flex:0 0 100%; }
  .tf-home-cta-button { width:100%;text-align:center; }
  .tf-home-cta .elementor-heading-title,.tf-home-cta .elementor-widget-text-editor { text-align:center; }
  .tf-footer-columns > .e-con { width:100%; }
}
@media(max-width:360px) { .tf-header .tf-brand .elementor-heading-title { font-size:16px !important; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation:none !important;transition:none !important; } }


/* Supporting decoration for pages-info.mjs. Text, colors and ordinary spacing
   remain controlled by the individual native Elementor widgets. */

.tf-activities-hero.e-con,
.tf-about-hero.e-con,
.tf-activity-callout.e-con,
.tf-activity-card-top.e-con {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.tf-activities-hero.e-con::before,
.tf-about-hero.e-con::before,
.tf-activity-callout.e-con::before,
.tf-activity-card-top.e-con::before {
  content: "";
  display: block;
  position: absolute;
  inset-inline-start: auto;
  left: auto;
  pointer-events: none;
  z-index: 0;
}

.tf-activities-hero.e-con::before {
  top: 0;
  right: 0;
  width: 33.333%;
  height: 100%;
  background: #E65026;
  opacity: 0.2;
  transform: translateX(80px) skewX(12deg);
}

.tf-about-hero.e-con::before {
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: #6E4499;
  opacity: 0.2;
  transform: translateX(128px) skewX(-12deg);
}

.tf-activity-card-top.e-con::before {
  top: -12%;
  right: -26%;
  width: 58%;
  height: 125%;
  border-radius: 0;
  background: rgb(255 255 255 / 6%);
  transform: skewX(-18deg);
  transition: transform 300ms ease;
}

.tf-activity-card.e-con:hover > .tf-activity-card-top.e-con::before,
.tf-activity-card.e-con:focus-within > .tf-activity-card-top.e-con::before {
  transform: translateX(-12px) skewX(-18deg);
}

.tf-activity-callout.e-con::before {
  inset-block-start: auto;
  top: -20%;
  right: -8%;
  bottom: auto;
  width: 40%;
  height: 140%;
  background: #6E4499;
  opacity: 0.24;
  transform: skewX(-18deg);
}

.tf-activities-hero.e-con > .e-con-inner,
.tf-about-hero.e-con > .e-con-inner,
.tf-activity-callout.e-con > .e-con,
.tf-activity-card-top.e-con > .elementor-widget {
  position: relative;
  z-index: 1;
}

.tf-activity-squares.e-con {
  --flex-direction: row;
  --flex-wrap: wrap;
  flex-direction: row;
  flex-wrap: wrap;
}

.tf-activity-squares.e-con > .tf-square.e-con {
  --width: calc((100% - 16px) / 2);
  --min-height: 0;
  width: calc((100% - 16px) / 2);
  min-width: 0;
  min-height: 0;
  flex: 0 0 calc((100% - 16px) / 2);
  aspect-ratio: 1;
}

.tf-square.tf-rotate-3,
.tf-portrait-placeholder.tf-rotate-3 { transform: rotate(3deg); }
.tf-square.tf-rotate-6 { transform: rotate(6deg); }
.tf-square.tf-rotate-minus-3,
.tf-portrait-placeholder.tf-rotate-minus-3 { transform: rotate(-3deg); }
.tf-square.tf-rotate-minus-6 { transform: rotate(-6deg); }

.tf-plan-card.e-con {
  position: relative;
  min-width: 0;
  overflow: visible;
}

.tf-plan-card.e-con > .tf-plan-badge.e-con {
  position: absolute;
  top: 0;
  left: 50%;
  right: auto;
  bottom: auto;
  --width: max-content;
  width: max-content;
  max-width: calc(100% - 24px);
  transform: translate(-50%, -50%);
  z-index: 2;
}

.tf-plan-badge.e-con .elementor-widget-text-editor {
  white-space: nowrap;
  text-transform: uppercase;
}

@media (min-width: 1025px) {
  .tf-plan-featured.e-con {
    transform: scale(1.05);
    z-index: 1;
  }
}

/* These short labels must keep their content width instead of row()'s grow=1. */
.tf-price-amount.e-con {
  --flex-direction: row;
  --flex-wrap: wrap;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: baseline;
}

.tf-price-amount.e-con > .elementor-widget.elementor-widget-heading,
.tf-price-amount.e-con > .elementor-widget.tf-price-period {
  --container-widget-width: auto;
  width: auto;
  max-width: 100%;
  min-width: 0;
  flex: 0 1 auto;
}

.tf-price-amount.e-con > .elementor-widget.tf-price-period {
  white-space: nowrap;
}

.tf-financial-info.e-con > .elementor-widget.elementor-widget-icon {
  --container-widget-width: 32px;
  width: 32px;
  min-width: 32px;
  flex: 0 0 32px;
}

.tf-financial-info.e-con > .e-con {
  --width: auto;
  width: auto;
  min-width: 0;
  flex: 1 1 0;
}

.tf-about-portraits.e-con {
  min-width: 0;
  padding: 8px 8px 24px;
}

.tf-about-portraits.e-con > .tf-portrait-placeholder.e-con {
  --width: calc((100% - 16px) / 2);
  --min-height: 0;
  width: calc((100% - 16px) / 2);
  min-width: 0;
  min-height: 0;
  flex: 0 0 calc((100% - 16px) / 2);
  aspect-ratio: 3 / 4;
  position: relative;
  overflow: hidden;
}

.tf-portrait-placeholder.e-con::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}

.tf-portrait-orange.e-con::after {
  background: linear-gradient(to top, rgb(230 80 38 / 40%), transparent);
}

.tf-portrait-gold.e-con::after {
  background: linear-gradient(to top, rgb(201 175 46 / 40%), transparent);
}

.tf-value-card.e-con {
  min-width: 0;
  transition: box-shadow 300ms ease;
}

.tf-value-card.e-con > .tf-value-icon.e-con {
  flex-shrink: 0;
  transition: background-color 300ms ease;
}

.tf-value-card.e-con:hover {
  box-shadow: 0 20px 25px -5px rgb(47 27 78 / 12%);
}

.tf-value-card.e-con:hover > .tf-value-icon.e-con {
  background-color: #E65026;
}

.tf-space-card.e-con {
  min-width: 0;
  transition: border-color 300ms ease;
}

.tf-space-card.e-con:hover { border-color: #C9AF2E; }

.tf-space-heading.e-con,
.tf-space-booking.e-con {
  --flex-direction: row;
  --flex-wrap: wrap;
  flex-direction: row;
  flex-wrap: wrap;
}

.tf-space-heading.e-con > .elementor-widget.elementor-widget-heading {
  --container-widget-width: auto;
  width: auto;
  min-width: 0;
  flex: 1 1 9rem;
}

.tf-space-heading.e-con > .tf-space-capacity.e-con {
  --width: max-content;
  width: max-content;
  max-width: 100%;
  flex: 0 1 auto;
}

.tf-space-booking.e-con > .elementor-widget.elementor-widget-heading {
  --container-widget-width: auto;
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
}

.tf-space-booking.e-con > .elementor-widget.elementor-widget-button {
  --container-widget-width: auto;
  width: auto;
  max-width: 100%;
  flex: 0 1 auto;
}

.tf-about-cta-buttons.e-con > .elementor-widget.elementor-widget-button,
.tf-hall-cta-buttons.e-con > .elementor-widget.elementor-widget-button {
  --container-widget-width: auto;
  width: auto;
  min-width: 0;
  max-width: 100%;
  flex: 0 1 auto;
}

.tf-about-cta-buttons.e-con .elementor-button,
.tf-hall-cta-buttons.e-con .elementor-button,
.tf-space-booking.e-con .elementor-button {
  max-width: 100%;
  white-space: normal;
}

/* Long headings and lists must remain inside their editable card at all sizes. */
.tf-activity-card.e-con .elementor-heading-title,
.tf-plan-card.e-con .elementor-heading-title,
.tf-value-card.e-con .elementor-heading-title,
.tf-space-card.e-con .elementor-heading-title {
  overflow-wrap: anywhere;
}

.tf-activity-card.e-con .elementor-icon-list-text,
.tf-plan-card.e-con .elementor-icon-list-text,
.tf-space-card.e-con .elementor-icon-list-text {
  min-width: 0;
  overflow-wrap: break-word;
}

@media (max-width: 1024px) {
  .tf-about-story.e-con {
    --flex-direction: column;
    flex-direction: column;
  }

  .tf-about-story.e-con > .tf-about-portraits.e-con {
    order: -1;
    --width: 100%;
    width: 100%;
    max-width: 680px;
  }

  .tf-about-story.e-con > .tf-about-story-copy.e-con {
    --width: 100%;
    width: 100%;
  }

  .tf-plan-featured.e-con { transform: none; }
}

@media (max-width: 767px) {
  .tf-plan-card.e-con > .tf-plan-badge.e-con {
    max-width: calc(100% - 16px);
  }

  .tf-values-grid.e-con > .tf-value-card.e-con {
    --width: 100%;
    width: 100%;
  }

  .tf-activity-squares.e-con,
  .tf-about-portraits.e-con {
    --flex-direction: row;
    flex-direction: row;
  }

  .tf-about-cta-buttons.e-con > .elementor-widget.elementor-widget-button,
  .tf-hall-cta-buttons.e-con > .elementor-widget.elementor-widget-button {
    --container-widget-width: 100%;
    width: 100%;
    text-align: center;
  }

  .tf-about-cta-buttons.e-con .elementor-button-wrapper,
  .tf-hall-cta-buttons.e-con .elementor-button-wrapper { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .tf-activity-card-top.e-con::before,
  .tf-value-card.e-con,
  .tf-value-icon.e-con,
  .tf-space-card.e-con { transition: none; }

  .tf-activity-card.e-con:hover > .tf-activity-card-top.e-con::before,
  .tf-activity-card.e-con:focus-within > .tf-activity-card-top.e-con::before {
    transform: skewX(-18deg);
  }
}


/* The complete offering stays native Elementor content, including every link. */
.tf-catalog-v2 { scroll-margin-top: 16px; }
.tf-catalog-v2 .tf-catalog-heading .elementor-heading-title { max-width: 850px; }
.tf-catalog-v2 .tf-catalog-jumps { flex-direction: row; flex-wrap: wrap; }
.tf-catalog-v2 .tf-catalog-jumps > .elementor-widget {
  width: auto; flex: 0 0 auto; --container-widget-width: auto;
}
.tf-catalog-v2 .tf-catalog-jump .elementor-button { min-height: 44px; }
.tf-catalog-v2 .tf-catalog-group { scroll-margin-top: 16px; }
.tf-catalog-v2 .tf-catalog-group-heading { flex-direction: row; flex-wrap: wrap; }
.tf-catalog-v2 .tf-catalog-group-heading > .elementor-widget {
  flex: 0 0 auto; width: auto; --container-widget-width: auto;
}
.tf-catalog-v2 .tf-catalog-group-heading > .tf-catalog-group-title {
  flex: 1 1 auto; min-width: 0;
}
.tf-catalog-v2 .tf-catalog-group-icon .elementor-icon-wrapper { display: flex; }
.tf-catalog-v2 .tf-catalog-count { white-space: nowrap; }
.tf-catalog-v2 .tf-catalog-grid { flex-direction: row; flex-wrap: wrap; }
.tf-catalog-v2 .tf-catalog-grid > .tf-catalog-card {
  --width: calc((100% - 40px) / 3);
  width: calc((100% - 40px) / 3); flex: 1 1 calc((100% - 40px) / 3);
  min-width: 0; min-height: 240px;
  position: relative; isolation: isolate; overflow: hidden;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.tf-catalog-v2 .tf-catalog-card::before {
  content: ''; position: absolute; display: block;
  left: auto; top: -60px; right: -44px; width: 120px; height: 280px;
  transform: rotate(23deg); background: #FFFFFF; opacity: .055;
  pointer-events: none; z-index: -1;
}
.tf-catalog-v2 .tf-catalog-card:nth-child(3n+2)::before { right: -68px; transform: rotate(-19deg); }
.tf-catalog-v2 .tf-catalog-card:hover,
.tf-catalog-v2 .tf-catalog-card:focus-within {
  transform: translateY(-3px); box-shadow: 0 12px 24px #2F1B4E24;
}
.tf-catalog-v2 .tf-catalog-title .elementor-heading-title { overflow-wrap: break-word; }
.tf-catalog-v2 .tf-catalog-description { max-width: 44ch; }
.tf-catalog-v2 .tf-catalog-link { margin-top: auto; }
.tf-catalog-v2 .tf-catalog-link,
.tf-catalog-v2 .tf-catalog-link .elementor-widget-container,
.tf-catalog-v2 .tf-catalog-link .elementor-button-wrapper,
.tf-catalog-v2 .tf-catalog-link .elementor-button { position: static; }
.tf-catalog-v2 .tf-catalog-link .elementor-button { display: flex; width: 100%; text-align: left; }
.tf-catalog-v2 .tf-catalog-link .elementor-button-content-wrapper {
  align-items: center; justify-content: space-between; gap: 12px; width: 100%;
}
.tf-catalog-v2 .tf-catalog-link .elementor-button-text { flex: 1; }
.tf-catalog-v2 .tf-catalog-link .elementor-button-icon {
  display: flex; align-items: center; justify-content: center; flex: 0 0 36px;
  width: 36px; height: 36px; border-radius: 50%; margin: 0;
  background: #E65026; color: #FFFFFF;
}
.tf-catalog-v2 .tf-catalog-card--music .elementor-button-icon { background: #C9AF2E; color: #2F1B4E; }
.tf-catalog-v2 .tf-catalog-card--lifestyle .elementor-button-icon { background: #FFFFFF; color: #76397A; }
.tf-catalog-v2 .tf-catalog-link .elementor-button-icon svg { width: 14px; height: 14px; fill: currentColor !important; }
.tf-catalog-v2 .tf-catalog-link .elementor-button::after {
  content: ''; position: absolute; inset: 0; z-index: 2;
}
.tf-catalog-v2 .tf-catalog-card:focus-within { outline: 3px solid #C9AF2E; outline-offset: 4px; }
.tf-catalog-v2 .tf-catalog-jump a:focus-visible { outline: 3px solid #E65026; outline-offset: 4px; }
.tf-catalog-v2 .tf-catalog-card--single > .elementor-widget:not(.tf-catalog-record):not(.tf-catalog-link) { max-width: 65%; }
.tf-catalog-v2 .tf-catalog-record {
  position: absolute; right: 56px; top: 44px; width: auto; opacity: .13; pointer-events: none;
}
@media (max-width: 1024px) {
  .tf-catalog-v2 .tf-catalog-grid > .tf-catalog-card {
    width: calc((100% - 20px) / 2); flex-basis: calc((100% - 20px) / 2);
  }
}
@media (max-width: 767px) {
  .tf-catalog-v2 .tf-catalog-grid > .tf-catalog-card { width: 100%; flex-basis: 100%; min-height: 220px; }
  .tf-catalog-v2 .tf-catalog-group-heading > .tf-catalog-count { flex-basis: 100%; padding-left: 38px; margin-top: -8px; }
  .tf-catalog-v2 .tf-catalog-card--single > .elementor-widget:not(.tf-catalog-record):not(.tf-catalog-link) { max-width: 100%; }
  .tf-catalog-v2 .tf-catalog-record { right: -24px; top: -24px; opacity: .055; }
}
@media (prefers-reduced-motion: reduce) {
  .tf-catalog-v2 .tf-catalog-card { transition: none; }
  .tf-catalog-v2 .tf-catalog-card:hover,
  .tf-catalog-v2 .tf-catalog-card:focus-within { transform: none; }
}



.tf-contact-hero{background-image:radial-gradient(circle at 50% 45%,rgba(230,80,38,.08),transparent 65%)}
.tf-contact-line>.tf-contact-icon{flex:0 0 80px!important;width:80px!important;min-width:80px}
.tf-contact-line>.tf-contact-line-copy{flex:1 1 0!important;min-width:0}
.tf-contact-line-copy a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.tf-contact-line-copy a:hover{color:#E65026;text-decoration:underline}
.tf-contact-form-card{position:relative}
.tf-contact-form-card>.tf-contact-badge{position:absolute;right:40px;top:0;transform:translateY(-50%);width:auto!important;box-shadow:0 10px 15px -3px #0002;z-index:2}
.tf-contact-form .elementor-field-textual,.tf-registration-form .elementor-field-textual{padding:24px;min-height:76px}
.tf-contact-form textarea.elementor-field-textual{min-height:170px;resize:vertical}
.tf-contact-form input:focus,.tf-contact-form textarea:focus,.tf-registration-form input:focus,.tf-registration-form select:focus{outline:2px solid #E65026;outline-offset:1px}
.tf-contact-form .elementor-button{box-shadow:0 20px 25px -5px #0002}
.tf-contact-title .elementor-heading-title{overflow-wrap:anywhere}
.tf-contact-social .elementor-social-icon{border-radius:12px}
.tf-registration-card{position:relative;isolation:isolate}
.tf-registration-card:before{content:"";position:absolute;inset:0 auto 0 0;width:33.333%;background:#2F1B4E;border-radius:40px 0 0 40px;z-index:-1}
.tf-registration-form{width:100%;margin:0!important}
.tf-registration-form .elementor-form{display:grid;grid-template-columns:1fr 2fr;align-items:start;position:relative;min-height:678px}
.tf-registration-form .e-form__indicators{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;gap:48px;padding:48px;margin:0!important;color:#fff}
.tf-registration-form .e-form__indicators__indicator{display:flex;flex-direction:row;justify-content:flex-start;gap:16px;align-items:center;margin:0;min-width:0;text-align:left}
.tf-registration-form .e-form__indicators__indicator__number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;padding:0;border:0!important;border-radius:50%}
.tf-registration-form .e-form__indicators__indicator__label{margin:0;color:#fff;font-size:14px;letter-spacing:1.4px;font-weight:700;text-transform:uppercase;white-space:nowrap}
.tf-registration-form .e-form__indicators__indicator--state-inactive{opacity:.4}
.tf-registration-form .e-form__indicators__indicator:nth-of-type(1) .e-form__indicators__indicator__number{background:#E65026;color:#fff}
.tf-registration-form .e-form__indicators__indicator:nth-of-type(3) .e-form__indicators__indicator__number{background:#C9AF2E;color:#fff}
.tf-registration-form .e-form__indicators__indicator:nth-of-type(5) .e-form__indicators__indicator__number{background:#6E4499;color:#fff}
.tf-registration-form .e-form__indicators__indicator__separator{display:none}
.tf-registration-form .elementor-form-fields-wrapper{grid-column:2;grid-row:1;margin:0!important;padding:64px;min-width:0;box-sizing:border-box}
.tf-registration-form .elementor-form-fields-wrapper>.e-form__step{width:100%}
.tf-registration-form .elementor-field-group{padding-left:0;padding-right:0}
.tf-registration-form .tf-form-step-title{font:700 30px/1.2 Inter,sans-serif;color:#2F1B4E;margin:0}
.tf-registration-form .elementor-field-group-activities>.elementor-field-label,.tf-registration-form .elementor-field-group-processing_consent>.elementor-field-label{display:none}
.tf-registration-form .elementor-field-group-activities .elementor-field-subgroup{display:flex;flex-direction:column;gap:16px;width:100%}
.tf-registration-form .elementor-field-group-activities .elementor-field-option{display:flex;align-items:center;gap:16px;background:#F8F8F8;border:2px solid transparent;border-radius:12px;padding:24px}
.tf-registration-form .elementor-field-group-activities .elementor-field-option:has(input:checked){border-color:#C9AF2E;background:#C9AF2E0D}
.tf-registration-form .elementor-field-group-activities input[type=checkbox]{width:24px;height:24px;min-width:24px;accent-color:#C9AF2E}
.tf-registration-form .elementor-field-group-activities label{font-weight:700;color:#2F1B4E;line-height:1.4}
.tf-registration-form .elementor-field-group-processing_consent .elementor-field-option{display:flex;align-items:flex-start;gap:16px;color:#2F1B4E}
.tf-registration-form .elementor-field-group-processing_consent input{width:24px;min-width:24px;height:24px;accent-color:#E65026}
.tf-registration-form .elementor-field-group-processing_consent label{font-size:14px;font-weight:700;line-height:1.5}
.tf-registration-notice{background:#E650260D;border:2px dashed #E650264D;border-radius:16px;padding:24px;color:#666;line-height:1.65}
.tf-registration-notice p{margin:0 0 16px}
.tf-registration-notice p:last-child{margin-bottom:0}
.tf-registration-notice a{color:#2F1B4E;font-weight:700;text-decoration:underline}
.tf-registration-quote{position:absolute;left:48px;top:344px;width:calc(33.333% - 96px)!important}
.tf-registration-pending button[type=submit]{display:none!important}
.tf-registration-form .elementor-message{grid-column:2;padding:0 64px 32px}
@media(max-width:1024px) and (min-width:768px){
 .tf-registration-form .e-form__indicators{padding:40px 24px}
 .tf-registration-form .elementor-form-fields-wrapper{padding:48px 32px}
 .tf-registration-form .e-form__indicators__indicator{gap:10px}
 .tf-registration-form .e-form__indicators__indicator__label{font-size:12px;letter-spacing:.5px}
 .tf-registration-quote{left:24px;width:calc(33.333% - 48px)!important}
}
@media(max-width:767px){
 .tf-contact-line>.tf-contact-icon{width:80px!important}
 .tf-contact-form-card>.tf-contact-badge{right:40px;max-width:calc(100% - 48px)}
 .tf-registration-card:before{display:none}
 .tf-registration-form .elementor-form{display:block;min-height:0}
 .tf-registration-form .e-form__indicators{padding:48px;background:#2F1B4E;border-radius:40px 40px 0 0;min-height:312px}
 .tf-registration-form .elementor-form-fields-wrapper{padding:32px}
 .tf-registration-quote{display:none!important}
 .tf-registration-form .elementor-message{padding:0 32px 32px}
 .tf-registration-form .e-form__buttons__wrapper__button{font-size:16px;padding:20px 12px}
}



.tf-enroll-choice .tf-enroll-choice-button{margin-top:auto!important;padding-top:8px}
.tf-enroll-choice .elementor-heading-title{overflow-wrap:anywhere}
.tf-enroll-copy a,.tf-enroll-back a{color:inherit;font-weight:700;text-decoration:underline}
.tf-enroll-choice a:focus-visible,.tf-enroll-copy a:focus-visible,.tf-enroll-back a:focus-visible{outline:3px solid #E65026;outline-offset:4px}
.tf-enrollment-overview .tf-enroll-choice-button .elementor-button:hover{background:#6E4499!important;color:#fff!important}
@media(max-width:767px){.tf-enrollment-overview .elementor-button{width:100%}.tf-enrollment-overview .elementor-heading-title{overflow-wrap:anywhere}}



/* Official transparent Talentfabriek 053 logo */
.tf-brand-logo a,.tf-brand-logo img{display:block}
.tf-brand-logo img{height:auto;max-width:100%;object-fit:contain}
.tf-header .tf-brand-logo{width:224px!important;flex:0 0 224px!important}
.tf-footer .tf-brand-logo{width:280px!important;max-width:100%}
@media(max-width:1200px) and (min-width:1025px){.tf-header .tf-brand-logo{width:200px!important;flex-basis:200px!important}}
@media(max-width:1024px){.tf-header .tf-brand-logo{width:200px!important;flex-basis:200px!important}}
@media(max-width:767px){.tf-header .tf-brand-logo{width:180px!important;flex-basis:180px!important;max-width:calc(100% - 114px)}.tf-footer .tf-brand-logo{width:240px!important}}
@media(max-width:360px){.tf-header .tf-brand-logo{width:160px!important;flex-basis:160px!important}}

/* Expanded pages */

.tf-detail-cta-v2 .tf-detail-cta-card{position:relative;overflow:hidden;border-left:6px solid #C9AF2E}
.tf-detail-cta-v2 .tf-detail-cta-card:before{content:"";position:absolute;right:-65px;top:-100px;width:230px;height:430px;background:#6E4499;opacity:.25;transform:rotate(22deg);pointer-events:none}
.tf-detail-cta-v2 .tf-detail-cta-card>.e-con{position:relative;z-index:1}
.tf-detail-cta-v2 .tf-detail-cta-message{flex:1 1 60%!important;min-width:0}
.tf-detail-cta-v2 .tf-detail-cta-actions{flex:0 0 280px!important;max-width:100%}
.tf-detail-cta-v2 .tf-detail-cta-title .elementor-heading-title{max-width:620px;overflow-wrap:normal}
.tf-detail-cta-v2 .tf-detail-cta-copy{max-width:590px}
.tf-detail-cta-v2 .elementor-widget-button,.tf-detail-cta-v2 .elementor-button{width:100%}
.tf-detail-cta-v2 .tf-detail-cta-secondary a{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#FFFFFF66}
.tf-detail-cta-v2 a:focus-visible{outline:3px solid #C9AF2E;outline-offset:4px}
@media(max-width:1024px){.tf-detail-cta-v2 .tf-detail-cta-card{flex-direction:column;align-items:stretch}.tf-detail-cta-v2 .tf-detail-cta-message,.tf-detail-cta-v2 .tf-detail-cta-actions{width:100%!important;flex:0 0 auto!important}.tf-detail-cta-v2 .tf-detail-cta-actions{max-width:320px}.tf-detail-cta-v2 .tf-detail-cta-title .elementor-heading-title{font-size:36px}}
@media(max-width:767px){.tf-detail-cta-v2 .tf-detail-cta-title .elementor-heading-title{font-size:30px;overflow-wrap:anywhere}.tf-detail-cta-v2 .tf-detail-cta-actions{max-width:100%}.tf-detail-cta-v2 .tf-detail-cta-card{border-radius:20px}}

.tf-detail-prose{color:#45404b}.tf-detail-prose p{margin:0 0 1.25em}.tf-detail-prose p:last-child{margin-bottom:0}.tf-detail-prose ul,.tf-detail-prose ol{padding-left:1.5em;margin:0 0 1.25em}.tf-detail-prose li{margin:0 0 .65em}.tf-detail-prose a{color:#2F1B4E;text-decoration:underline;overflow-wrap:anywhere}.tf-detail-prose h2,.tf-detail-prose h3{font-family:Inter,sans-serif;color:#2F1B4E;line-height:1.3;margin:1.5em 0 .75em}.tf-detail-prose table{font-size:15px;width:100%;border-collapse:collapse}.tf-detail-prose td,.tf-detail-prose th{padding:12px;border:1px solid #e7e3eb;text-align:left}.tf-detail-prose th{background:#2F1B4E;color:#fff}.tf-detail-content .elementor-heading-title{overflow-wrap:anywhere}.tf-detail-hero-photo img{max-height:380px;object-fit:contain;background:#fff}.tf-detail-gallery>.e-con{flex:0 1 calc(50% - 10px)!important;width:calc(50% - 10px)!important}.tf-detail-gallery img{height:260px;object-fit:contain}.tf-directory-grid>.tf-directory-card{flex:0 1 calc(33.333% - 16px)!important;width:calc(33.333% - 16px)!important}.tf-directory-card .elementor-widget-button{margin-top:auto!important}.tf-detail-prices{flex-wrap:wrap!important}.tf-detail-prices>.e-con{min-width:200px;flex:1 1 200px!important}.tf-detail-cta .e-con .elementor-widget-button{flex-grow:0!important}
.tf-language-native a{display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#fff!important;background:#6E4499;border-radius:99px;font:700 13px/1 Inter,sans-serif;padding:8px 12px;text-decoration:none!important}.tf-language-native a::before{content:"";display:block;flex:0 0 14px;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cpath d='M3 12h18'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cpath d='M3 12h18'/%3E%3C/svg%3E") center/contain no-repeat}.tf-language-native a:focus-visible{outline:3px solid #C9AF2E;outline-offset:3px}.tf-language-native ul{margin:0;padding:0;list-style:none}.tf-language-native{width:auto!important;flex:0 0 auto!important}
@media(max-width:1024px){.tf-directory-grid>.tf-directory-card{flex-basis:calc(50% - 12px)!important;width:calc(50% - 12px)!important}}@media(max-width:767px){.tf-directory-grid>.tf-directory-card,.tf-detail-gallery>.e-con{flex-basis:100%!important;width:100%!important}.tf-detail-content .elementor-widget-text-editor{overflow-x:auto}.tf-detail-prose table{min-width:560px}.tf-detail-hero-photo img{max-height:300px}.tf-detail-hero .elementor-heading-title{overflow-wrap:anywhere}.tf-detail-cta .elementor-button{width:100%}}
