:root .pt-shell .pt-kop{ font:700 clamp(1.75rem, 1.2rem + 1.9vw, 2.5rem)/1.1 'Inter Tight',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif; letter-spacing:-.032em; color:var(--to-tekst);
  text-wrap:balance; padding:32px 0 112px; margin:0 0 -64px; background:var(--to-kop-vlak); box-shadow:var(--to-kop-rand); }
:root .pt-shell .pt-kop::before{ content:""; display:block; width:32px; height:4px; margin:0 0 16px; border-radius:2px; background:var(--fam); }
:root .pt-shell .pt-kop:has(+ .pt-sub){ padding-bottom:12px; margin-bottom:0; }
:root .pt-shell .pt-top + .pt-kop{ margin-top:0; }
:root .pt-shell .pt-top:has(.pt-hubnav) ~ .pt-card + .pt-sub{ margin-top:16px; }
:root .pt-shell .pt-top:has(.pt-hubnav) ~ .pt-sub{ background:none; border:0; border-radius:0; box-shadow:none; padding:0; margin:0 0 24px;
  font-size:.98rem; line-height:1.5; color:var(--to-gedempt); gap:12px; max-width:78ch; }
:root .pt-shell .pt-sub .pt-privacy{ background:var(--to-vlak); border:1px solid var(--to-lijn); color:var(--to-tekst-2); font-weight:600;
  box-shadow:0 1px 2px rgba(16,24,40,.04); }
:root .pt-shell .pt-sub .pt-privacy:not(.waarsch) svg{ color:var(--to-goed); }
:root .pt-shell .pt-sub .pt-privacy.waarsch{ background:var(--to-waarsch-vlak); border-color:var(--to-waarsch-lijn); color:var(--to-waarsch); box-shadow:none; }
:root .pt-shell .pt-kop:not(.pt-kop-naam) + .pt-sub :is(.pt-sub-tekst, .pt-kort-strook){ display:none; }
:root .pt-shell:has(.pt-drop .pt-zeker):not(:has(.pt-privacy.waarsch)) .pt-sub .pt-privacy{ display:none; }
:root .pt-shell:has(.pt-drop .pt-zeker):not(:has(.pt-privacy.waarsch)) .pt-kop:not(.pt-kop-naam) + .pt-sub{ display:none; }
:root .pt-shell:has(.pt-drop .pt-zeker):not(:has(.pt-privacy.waarsch)) .pt-kop:not(.pt-kop-naam):has(+ .pt-sub){ padding-bottom:112px; margin-bottom:-64px; }
:root .pt-shell .pt-top:has(.pt-hubnav) ~ .pt-kop + .pt-sub{ max-width:none; padding:0 0 112px; margin:0 0 -64px;
  background:var(--to-kop-vlak); box-shadow:var(--to-kop-rand); }
:root .pt-shell .pt-card{ border:1px solid var(--to-lijn); border-radius:16px; background:var(--to-vlak); box-shadow:var(--to-schaduw-diep); }
:root .pt-shell .pt-drop{ border:1.5px dashed var(--to-drop-rand); border-radius:14px; background:var(--to-drop-vlak); color:var(--to-gedempt);
  transition:background-color .15s, border-color .15s, box-shadow .15s; }
:root .pt-shell .pt-drop:hover{ border-color:var(--to-merk); background:color-mix(in srgb, var(--to-merk) 5%, var(--to-vlak)); color:var(--to-gedempt); }
:root .pt-shell .pt-drop.over{ border-style:solid; border-color:var(--to-merk); background:color-mix(in srgb, var(--to-merk) 10%, var(--to-vlak));
  box-shadow:0 0 0 4px var(--to-ring); }
:root .pt-shell .pt-drop:focus-visible{ outline:2px solid var(--to-merk); outline-offset:3px; }
:root .pt-shell .pt-drop .pt-zeker, :root .pt-shell .pt-drop > .knop{ display:none; }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein){ display:flex; flex-direction:column; align-items:center;
  justify-content:center; box-sizing:border-box; min-height:248px; padding:36px 24px 24px; text-align:center; }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > svg{ flex:none; box-sizing:content-box; width:26px; height:26px;
  padding:13px; border-radius:14px; background:var(--fam-vlak); color:var(--fam-inkt); transition:background-color .15s, color .15s, transform .15s; }
:root .pt-shell .pt-drop.over:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > svg{ background:var(--to-knop); color:var(--to-op-knop); transform:translateY(-3px); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > .knop{ order:1; display:inline-flex; align-items:center; justify-content:center;
  gap:10px; box-sizing:border-box; min-height:48px; margin:20px 0 0; padding:0 28px; border-radius:10px; background:var(--to-knop); color:var(--to-op-knop);
  font-size:1.0625rem; font-weight:600; letter-spacing:-.01em; line-height:1.2; box-shadow:0 1px 2px rgba(16,24,40,.14), 0 10px 22px -12px rgba(34,86,201,.8);
  transition:background-color .15s, transform .1s; }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > .knop::before{ content:""; flex:none; width:18px; height:18px; background:currentColor;
  --ic:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2016V4'/%3E%3Cpath%20d='m7%209%205-5%205%205'/%3E%3Cpath%20d='M5%2020h14'/%3E%3C/svg%3E");
  -webkit-mask:var(--ic) center/18px no-repeat; mask:var(--ic) center/18px no-repeat; }
:root .pt-shell .pt-drop:hover > .knop{ background:var(--to-knop-2); }
:root .pt-shell .pt-drop:active > .knop{ transform:translateY(1px); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .big{ order:2; margin:16px 0 0; font-size:1.125rem; font-weight:600;
  letter-spacing:-.012em; color:var(--to-tekst); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop) .big{ margin-top:14px; font-size:.95rem; font-weight:500;
  letter-spacing:0; color:var(--to-tekst-2); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .small{ order:3; margin:4px 0 0; font-size:.84rem; line-height:1.5; color:var(--to-gedempt); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .fmt{ order:4; margin:2px 0 0; font-size:.84rem; line-height:1.5; color:var(--to-gedempt); }
:root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .small:empty{ display:none; }
:root .pt-shell:has(.pt-privacy):not(:has(.pt-privacy.waarsch)) .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .pt-zeker{ order:9; display:flex;
  flex-wrap:wrap; justify-content:center; align-self:stretch; gap:6px 28px; margin:24px 0 0; padding:16px 0 0; border-top:1px solid var(--to-lijn);
  font-size:.82rem; font-weight:500; line-height:1.4; color:var(--to-gedempt); }
:root .pt-shell .pt-zeker > span{ display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
:root .pt-shell .pt-zeker svg{ flex:none; width:15px; height:15px; color:var(--to-goed); }
:root .pt-shell .pt-drop.pt-laadt::after{ order:10; }
:root .pt-shell .pt-drop:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein),
:root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein){
  display:flex; flex-direction:row; align-items:center; justify-content:flex-start; box-sizing:border-box; gap:12px; min-height:56px; padding:8px 16px 8px 8px;
  text-align:left; border:1px solid var(--to-lijn); border-radius:12px; background:var(--to-vlak); }
:root .pt-shell .pt-drop:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein):hover,
:root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):hover{
  border-color:var(--to-merk); }
:root .pt-shell .pt-drop:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein) > svg,
:root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > svg{
  flex:none; box-sizing:content-box; width:18px; height:18px; padding:11px; border-radius:10px; background:var(--fam-vlak); color:var(--fam-inkt); }
:root .pt-shell .pt-drop:is(.vt-klein,.au-klein,.xp-klein) .big{ font-size:.92rem; font-weight:600; color:var(--to-tekst); }
:root .pt-shell .pt-drop:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein) .small{ font-size:.86rem; }
:root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .big{
  order:0; margin:0; font-size:.86rem; font-weight:600; color:var(--to-merk); }
:root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) :is(.small,.fmt,.knop,.pt-zeker){ display:none; }
:root .pt-shell .pt-card > .pt-drop:first-child:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein){ margin-bottom:16px; }
:root .pt-shell .pt-drop:is(.pt-drop-mini,.up-klein){ box-sizing:border-box; min-height:48px; padding:8px 16px; border-radius:12px; }
:root .pt-shell .pt-drop:is(.pt-drop-mini,.up-klein) .big{ font-size:.9rem; font-weight:600; color:var(--to-merk); }
:root .pt-shell .pt-drop:is(.pt-drop-mini,.up-klein) > svg{ color:var(--to-merk); }
:root .pt-shell .pt-file{ box-sizing:border-box; min-height:48px; border-color:var(--to-lijn); border-radius:12px; background:var(--to-vlak); color:var(--to-tekst); }
:root .pt-shell .pt-file .nm{ font-weight:600; }
:root .pt-shell .pt-file .sz{ font-variant-numeric:tabular-nums; }
:root .pt-shell .pt-file > button:not(.pt-btn){ border-color:transparent; border-radius:8px; background:transparent; color:var(--to-gedempt); }
:root .pt-shell .pt-file > button:not(.pt-btn):hover{ background:var(--to-vlak-2); color:var(--to-tekst); }
:root .pt-shell .pt-card :is(.pt-label, .pt-field > label){ font-size:.84rem; font-weight:600; color:var(--to-tekst); }
:root .pt-shell .pt-card .pt-note{ line-height:1.5; }
:root .pt-shell .pt-card > .pt-note:last-child{ margin-top:16px; }
:root .pt-shell :is(.pt-input, .pt-select){ min-height:40px; border-radius:10px; border-color:var(--to-gedempt-2);
  border-color:color-mix(in srgb, var(--to-gedempt-2) 76%, var(--to-vlak)); }
:root .pt-shell :is(.pt-input, .pt-select):hover{ border-color:var(--to-gedempt-2); }
:root .pt-shell :is(.pt-input, .pt-select):focus{ outline:2px solid transparent; outline-offset:1px; border-color:var(--to-merk); box-shadow:0 0 0 3px var(--to-ring); }
:root .pt-shell .pt-kleur{ height:40px; border-radius:10px; }
:root .pt-shell .pt-row:has(> .pt-input, > .pt-select) > .pt-btn.small{ min-height:40px; }
:root .pt-shell .pt-card :is(input[type=checkbox], input[type=radio], input[type=range]){ accent-color:var(--to-knop); }
:root .pt-shell .pt-card :is(label.pt-row, .pt-check, .pt-selall):not(.pt-keuze > *) > input:is([type=checkbox], [type=radio]){ width:18px; height:18px; }
:root .pt-shell .pt-btn{ transition:background-color .15s, border-color .15s, box-shadow .15s, transform .12s; }
:root .pt-shell .pt-btn:not(.primary, .kaal):hover{ background:var(--to-vlak-2); border-color:var(--to-gedempt-2); }
:root .pt-shell .pt-btn.primary:not(.small):not(.pt-ws-bar *){ min-height:48px; padding:0 24px; border-radius:10px; font-size:1rem; }
:root .pt-shell .pt-btn.primary:not(.small, :disabled):not(.pt-ws-bar *){ box-shadow:0 1px 2px rgba(16,24,40,.12), 0 8px 18px -12px rgba(34,86,201,.75); }
:root .pt-shell .pt-btn.primary:hover:not(:disabled){ background:var(--to-knop-2); border-color:var(--to-knop-2); filter:none; }
:root .pt-shell .pt-btn:active:not(:disabled){ transform:translateY(1px); }
:root .pt-shell .pt-btn:disabled{ opacity:1; cursor:not-allowed; background:var(--to-vlak-2); border-color:var(--to-lijn); color:var(--to-gedempt-2); box-shadow:none; }
:root .pt-shell .pt-btn:focus-visible{ outline:2px solid var(--to-merk); outline-offset:2px; }
:root :where(.pt-shell) .pt-btn{ border-radius:10px; }
:root :where(.pt-shell) .pt-btn:where(.small){ border-radius:8px; }
:root .pt-shell .pt-top .pt-hub-user a:first-child{ background:transparent; border-color:var(--to-lijn-2); color:var(--to-tekst); box-shadow:none; }
:root .pt-shell .pt-top .pt-hub-user a:first-child:hover{ background:var(--to-vlak-2); border-color:var(--to-gedempt-2); color:var(--to-tekst); }
:root .pt-shell:has(.nl-kaart.nl-in:not([hidden]), .pt-result:not(.pt-hidden) li .pt-btn) .pt-btn.primary:not(.small, :disabled):not(.pt-ws-bar *){ background:var(--to-vlak);
  border-color:color-mix(in srgb, var(--to-merk) 55%, var(--to-lijn-2)); color:var(--to-merk); box-shadow:none; }
:root .pt-shell:has(.nl-kaart.nl-in:not([hidden]), .pt-result:not(.pt-hidden) li .pt-btn) .pt-btn.primary:not(.small, :disabled):not(.pt-ws-bar *):hover{
  background:color-mix(in srgb, var(--to-merk) 7%, var(--to-vlak)); border-color:var(--to-merk); }
:root .pt-shell .pt-card .pt-status{ font-size:.875rem; line-height:1.45; }
:root .pt-shell .pt-card .pt-status:empty:not(.pt-ws-bar *){ margin:0; min-height:0; }
:root .pt-shell .pt-card .pt-status:is(.ok,.err,.warn):not(:empty):not(.pt-ws-bar *){ position:relative; display:block; margin-top:16px; padding:12px 16px 12px 44px;
  border:1px solid var(--to-lijn-2); border-radius:12px; background:var(--to-vlak-2); color:var(--to-tekst); font-weight:500; font-variant-numeric:tabular-nums; }
:root .pt-shell .pt-card .pt-status:is(.ok,.err,.warn):not(:empty):not(.pt-ws-bar *)::before{ content:""; position:absolute; left:14px; top:12px; width:20px; height:20px;
  background:var(--st-k); -webkit-mask:var(--st-ic) center/20px no-repeat; mask:var(--st-ic) center/20px no-repeat; }
:root .pt-shell .pt-card .pt-status.ok:not(:empty):not(.pt-ws-bar *){ --st-k:var(--to-goed); border-color:color-mix(in srgb, var(--to-goed) 34%, var(--to-vlak)); background:color-mix(in srgb, var(--to-goed) 8%, var(--to-vlak));
  --st-ic:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='m8%2012%203%203%205-6'/%3E%3C/svg%3E"); }
:root .pt-shell .pt-card .pt-status.err:not(:empty):not(.pt-ws-bar *){ --st-k:var(--to-fout); border-color:color-mix(in srgb, var(--to-fout) 34%, var(--to-vlak)); background:color-mix(in srgb, var(--to-fout) 7%, var(--to-vlak));
  --st-ic:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2.2'%20stroke-linecap='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='M12%207v6M12%2016.5v.5'/%3E%3C/svg%3E"); }
:root .pt-shell .pt-card .pt-status.warn:not(:empty):not(.pt-ws-bar *){ --st-k:var(--to-waarsch); border-color:var(--to-waarsch-lijn); background:var(--to-waarsch-vlak);
  --st-ic:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%203%202%2020h20z'/%3E%3Cpath%20d='M12%2010v4M12%2017v.5'/%3E%3C/svg%3E"); }
:root .pt-shell .pt-card .pt-status a{ color:var(--to-merk); font-weight:600; }
:root .pt-shell .pt-progress{ height:8px; margin-top:16px; border-radius:999px; background:var(--to-vlak-2); }
:root .pt-shell .pt-progress > i{ border-radius:999px; background:var(--to-knop); }
:root .pt-shell .pt-result{ margin-top:16px; border-radius:12px; }
:root .pt-shell .pt-result li .pt-btn{ min-height:36px; padding:0 16px; border-radius:8px; border-color:transparent; background:color-mix(in srgb, var(--to-merk) 12%, var(--to-vlak)); color:var(--to-merk); }
:root .pt-shell .pt-result li .pt-btn:hover{ background:color-mix(in srgb, var(--to-merk) 12%, var(--to-vlak)); border-color:var(--to-merk); }
:root .pt-shell .pt-result li:only-child .pt-btn{ background:var(--to-knop); color:var(--to-op-knop); }
:root .pt-shell .pt-result li:only-child .pt-btn:hover{ background:var(--to-knop-2); }
:root .pt-shell .dlbus-note{ color:var(--to-gedempt); opacity:1; }
:root .pt-shell .dlbus-btn{ box-sizing:border-box; min-height:36px; padding:0 12px; border:1px solid var(--to-lijn-2); border-radius:8px; background:var(--to-vlak);
  color:var(--to-tekst-2); font-size:.86rem; font-weight:500; transition:background-color .15s, border-color .15s, color .15s; }
:root .pt-shell .dlbus-btn:hover{ background:var(--to-vlak-2); border-color:var(--to-gedempt-2); color:var(--to-tekst); }
:root .pt-shell .dlbus-btn.primary{ border-color:color-mix(in srgb, var(--to-merk) 45%, var(--to-lijn-2)); background:var(--to-vlak); color:var(--to-merk); font-weight:600; }
:root .pt-shell .dlbus-btn.primary:hover{ background:color-mix(in srgb, var(--to-merk) 7%, var(--to-vlak)); border-color:var(--to-merk); color:var(--to-merk); }
:root .pt-shell .dlbus-btn:disabled{ border-color:var(--to-lijn); background:var(--to-vlak-2); color:var(--to-gedempt-2); }
:root .pt-shell #tgFb.tg-fb-in{ margin-top:16px; border-radius:12px !important; border-color:var(--to-lijn) !important; background:var(--to-vlak) !important; }
:root .pt-shell #tgFb.tg-fb-in #tgFbKop{ color:var(--to-tekst) !important; }
:root .pt-shell #tgFb.tg-fb-in #tgFbX{ color:var(--to-gedempt) !important; }
:root .pt-shell .pt-card :is(.pt-kort-meer, .ov-x){ position:relative; }
:root .pt-shell .pt-card :is(.pt-kort-meer, .pt-thumb .rm, .ov-x)::after{ content:""; position:absolute; inset:-12px -9px; }
:root .pt-shell .tu-wrap{ margin-top:56px; }
:root .pt-shell .tu-wrap .tu-titel{ margin:0 0 16px; font:600 1.25rem/1.25 'Inter Tight',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif; letter-spacing:-.02em;
  text-transform:none; color:var(--to-tekst); }
:root .pt-shell .tu-blok + .tu-blok{ margin-top:48px; }
:root .pt-shell .tu-stappen{ list-style:none; counter-reset:tu; display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; margin:0; padding:0;
  background:none; border:0; border-radius:0; }
:root .pt-shell .tu-stappen li{ counter-increment:tu; max-width:none; margin:0; padding:20px; background:var(--to-vlak); border:1px solid var(--to-lijn);
  border-radius:14px; box-shadow:0 1px 2px rgba(16,24,40,.04); font-size:.92rem; line-height:1.55; color:var(--to-tekst-2); }
:root .pt-shell .tu-stappen li + li{ margin-top:0; }
:root .pt-shell .tu-stappen li::before{ content:counter(tu); display:grid; place-items:center; width:32px; height:32px; margin:0 0 14px; border-radius:10px;
  background:var(--fam-vlak); color:var(--fam-inkt); font-size:.95rem; font-weight:700; font-variant-numeric:tabular-nums; }
:root .pt-shell .tu-lijst{ border-radius:14px; border-color:var(--to-lijn); box-shadow:0 1px 2px rgba(16,24,40,.04); }
:root .pt-shell .tu-item > summary{ min-height:56px; padding:14px 20px; }
:root .pt-shell .tu-item > summary:hover{ background:var(--to-papier); }
:root .pt-shell .tu-item :is(h2,h3){ font-size:.98rem; font-weight:600; }
:root .pt-shell .tu-tekst{ padding:0 20px 18px; }
:root .pt-shell .pt-related{ margin-top:56px; padding-top:40px; border-top:1px solid var(--to-lijn); }
:root .pt-shell .pt-related h2{ margin:0 0 20px; font:600 1.25rem/1.25 'Inter Tight',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif; letter-spacing:-.02em; color:var(--to-tekst); }
:root .pt-shell .pt-rel-kop{ margin:0 0 10px; font-size:.875rem; font-weight:600; letter-spacing:0; text-transform:none; color:var(--to-gedempt); }
:root .pt-shell .pt-rel-lijst{ gap:8px; margin-bottom:28px; }
:root .pt-shell .pt-rel-lijst a{ min-height:36px; box-sizing:border-box; padding:0 14px; border-radius:9px; border-color:var(--to-lijn-2); background:var(--to-vlak);
  font-weight:500; box-shadow:0 1px 2px rgba(16,24,40,.04); }
:root .pt-shell .pt-rel-kolommen{ column-gap:24px; }
:root .pt-shell .pt-rel-kolommen a{ padding-left:0; font-size:.9rem; }
:root .pt-shell .pt-rel-kolommen a::before{ content:none; }
:root .pt-shell .pt-rel-kolommen a:hover{ color:var(--to-merk); text-decoration:underline; text-underline-offset:3px; }
@media (min-width:1100px){
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))){ display:grid; grid-template-columns:minmax(0,3fr) minmax(0,2fr); column-gap:24px; grid-auto-flow:row dense; align-items:start; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > *{ grid-column:1 / -1; min-width:0; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card:has(> .pt-drop:first-child){ grid-column:1; align-self:stretch; display:flex; flex-direction:column; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child{ flex:1 1 auto; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap{ display:contents; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap > .tu-blok{ grid-column:1 / -1; margin-top:48px; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap > .tu-blok:has(> .tu-stappen){ grid-column:2; align-self:stretch; box-sizing:border-box; margin-top:0; padding:24px;
    border:1px solid var(--to-lijn); border-radius:16px; background:var(--to-vlak); box-shadow:var(--to-schaduw-diep); }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap .tu-blok:has(> .tu-stappen) .tu-titel{ margin-bottom:20px; font-size:1.125rem; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap .tu-stappen{ display:block; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap .tu-stappen li{ position:relative; min-height:32px; padding:4px 0 0 48px; border:0; border-radius:0; background:none; box-shadow:none; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap .tu-stappen li + li{ margin-top:20px; }
  :root .pt-shell:has(> .pt-card:not(.pt-hidden,[hidden]) > .pt-drop:first-child:not(.pt-hidden,[hidden],.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein)):has(> .tu-wrap .tu-stappen):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .tu-wrap .tu-stappen li::before{ position:absolute; left:0; top:0; margin:0; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))){ display:grid; grid-template-columns:auto auto minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; justify-items:start;
    column-gap:20px; row-gap:2px; min-height:0; padding:32px 36px; text-align:left; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > svg{ grid-column:1; grid-row:1 / span 2; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > .knop{ grid-column:2; grid-row:1 / span 2; margin:0; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > .big{ grid-column:3; grid-row:1; align-self:end; margin:0; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > :is(.small, .fmt){ grid-column:3; grid-row:2; align-self:start; margin:0; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > .big:not(:has(~ :is(.small, .fmt):not(:empty))){ grid-row:1 / span 2; align-self:center; }
  :root .pt-shell:not(:has(> .tu-wrap .tu-stappen)):not(:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden))) > .pt-card > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein):has(> .knop):not(:has(> :not(svg, .knop, .big, .small, .fmt, .pt-zeker, input))) > .pt-zeker{ grid-column:4; grid-row:1 / span 2; align-self:center; flex-direction:column; flex-wrap:nowrap; gap:8px; margin:0; padding:4px 0 4px 28px; border-top:0; border-left:1px solid var(--to-lijn); }
}
@media (prefers-reduced-motion:reduce){
  :root .pt-shell .pt-drop, :root .pt-shell .pt-drop > svg, :root .pt-shell .pt-drop > .knop, :root .pt-shell .pt-btn, :root .pt-shell .dlbus-btn{ transition:none; }
}
@media (pointer:coarse), (max-width:640px){
  :root .pt-shell .pt-card :is(.pt-seg, .au-seg) > button:not(.pt-ws-bar *), :root .pt-shell .pt-card .pt-keuze > label{ min-height:44px; }
  :root .pt-shell .pt-card .pt-btn.small:not(.pt-ws-bar *){ min-height:44px; }
  :root .pt-shell :is(.pt-input, .pt-select){ min-height:44px; }
  :root .pt-shell .pt-kleur{ height:44px; }
  :root .pt-shell .pt-row:has(> .pt-input, > .pt-select) > .pt-btn.small{ min-height:44px; }
  :root .pt-shell .dlbus-btn{ min-height:44px; }
  :root .pt-shell .pt-rel-lijst a{ min-height:44px; }
  :root .pt-shell .pt-file > button:not(.pt-btn){ min-width:44px; min-height:44px; }
  :root .pt-shell .pt-card :is(label.pt-row, .pt-check, .pt-selall):not(.pt-keuze > *) > input:is([type=checkbox], [type=radio]){ width:20px; height:20px; }
  :root .pt-shell .nl-kaart.nl-in .nl-x, :root .pt-shell #tgFb.tg-fb-in #tgFbX{ width:44px; height:44px; top:0 !important; right:0 !important; }
  :root .pt-shell #tgFb.tg-fb-in #tgFbKop{ padding-right:40px !important; }
  :root .pt-shell #tgFb.tg-fb-in #tgFbGezichten button{ min-width:44px; min-height:44px; padding:0; }
  :root .pt-shell .pt-card :is(.pt-kort-meer, .pt-thumb .rm, .ov-x)::after{ inset:-14px -10px; }
}
@media (max-width:640px){
  :root .pt-shell .pt-card :is(.pt-actions, .pt-row):has(> .pt-btn.primary:not(.small)):not(:has(> .pt-field, > .pt-input, > .pt-select)):not(:has(> :not(input, template, script, .pt-hidden, [hidden]) ~ :not(input, template, script, .pt-hidden, [hidden]) ~ :not(input, template, script, .pt-hidden, [hidden]))){ position:sticky; bottom:0; z-index:3;
    padding:8px 0 calc(8px + env(safe-area-inset-bottom, 0px)); margin-bottom:-8px; background:var(--to-vlak); box-shadow:0 -8px 8px var(--to-vlak); }
  :root .pt-shell .pt-card :is(.pt-actions, .pt-row):has(> .pt-btn.primary:not(.small)):not(:has(> .pt-field, > .pt-input, > .pt-select)) > .pt-btn.primary:not(.small){ flex:1 1 100%; justify-content:center; }
  :root .pt-shell .pt-naast > .pt-bedien{ display:contents; }
  :root .pt-shell .pt-kop, :root .pt-shell .pt-kop:has(+ .pt-sub),
  :root .pt-shell:has(.pt-drop .pt-zeker):not(:has(.pt-privacy.waarsch)) .pt-kop:not(.pt-kop-naam):has(+ .pt-sub){ font-size:1.75rem; line-height:1.14; padding:16px 0 80px; margin:0 0 -48px; }
  :root .pt-shell .pt-kop::before{ margin-bottom:12px; }
  :root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein){ min-height:0; padding:28px 16px 20px; }
  :root .pt-shell .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) > .knop{ width:100%; max-width:320px; padding:0 20px; }
  :root .pt-shell:has(.pt-privacy):not(:has(.pt-privacy.waarsch)) .pt-drop:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein) .pt-zeker{ display:grid; grid-template-columns:auto; justify-content:center; justify-items:start; gap:6px; margin-top:20px; padding-top:14px; font-size:.8rem; }
  :root .pt-shell .pt-card:has(.pt-filelist .pt-file, .ov-list .ov-row, #csDlRij:not(.pt-hidden)) > .pt-drop:first-child:not(.pt-drop-klein,.pt-drop-mini,.vt-klein,.au-klein,.xp-klein,.up-klein){ min-height:56px; padding:8px 16px 8px 8px; }
  :root .pt-shell .pt-drop:is(.vt-klein,.au-klein,.xp-klein) .big{ font-size:.86rem; }
  :root .pt-shell .pt-drop:is(.pt-drop-klein,.vt-klein,.au-klein,.xp-klein) .small{ font-size:.8rem; }
  :root .pt-shell .pt-drop.xp-klein{ padding-left:16px; }
  :root .pt-shell .tu-wrap{ margin-top:40px; }
  :root .pt-shell .tu-wrap .tu-titel, :root .pt-shell .pt-related h2{ font-size:1.125rem; margin-bottom:12px; }
  :root .pt-shell .tu-blok + .tu-blok{ margin-top:32px; }
  :root .pt-shell .tu-stappen{ grid-template-columns:minmax(0,1fr); gap:8px; }
  :root .pt-shell .tu-stappen li{ display:grid; grid-template-columns:32px minmax(0,1fr); column-gap:14px; align-items:start; padding:16px; }
  :root .pt-shell .tu-stappen li::before{ margin:0; }
  :root .pt-shell .tu-item > summary{ padding:14px 16px; }
  :root .pt-shell .tu-tekst{ padding:0 16px 16px; }
  :root .pt-shell .pt-related{ margin-top:40px; padding-top:32px; }
}