@font-face{font-family:TBI Sans;src:url(/assets/TBISans-Regular-BoUj57Wm.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:TBI Sans;src:url(/assets/TBISans-Medium-IF9GUR_B.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:TBI Sans;src:url(/assets/TBISans-Bold-Bws1SHaq.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:TBI Sans;src:url(/assets/TBISans-ExtraBold-CUyZh55E.woff2) format("woff2");font-weight:800;font-display:swap}:root{--accent: #630d80;--accent-dark: #4c0a63;--lime: #aed244;--ink: #2b2b2b;--muted: #63635b;--slate: #3c4052;--line: #eaeae6;--line-2: #e3e3dd;--chip: #f4f4f0;--track: #e7e7e1;--dot: #c9c9c1;--column: 760px;--gutter: clamp(16px, 4.5vw, 28px);--bar-gutter: clamp(14px, 4vw, 28px);--accent-soft: rgba(99, 13, 128, .07);--accent-faint: rgba(99, 13, 128, .06);--accent-edge: rgba(99, 13, 128, .22);--accent-done: rgba(99, 13, 128, .35);--lime-soft: rgba(174, 210, 68, .2)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:#fff;color:var(--ink);font-family:TBI Sans,Inter,system-ui,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;height:100%;overflow:hidden;overscroll-behavior:none}a{color:var(--accent)}a:hover{color:var(--accent-dark)}::-webkit-scrollbar{height:0;width:0}@keyframes scl-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.app{height:100vh;height:100dvh;background:#fff;display:flex;flex-direction:column}.hdr{position:relative;flex:none;z-index:50;background:#fffffff0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}.hdr__top{max-width:var(--column);margin:0 auto;width:100%;padding:10px var(--bar-gutter);display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto}.brand__logo{height:auto;width:100%;min-width:0;object-fit:contain;display:block}.brand__logo--hazenberg{max-width:118px}.brand__logo--nicodebont{max-width:124px}.brand__rule{width:1px;height:16px;background:var(--line);flex:none}.langmenu{position:relative;flex:none}.langmenu__btn{display:flex;align-items:center;gap:6px;border:1px solid var(--line-2);font:inherit;font-weight:800;font-size:13px;padding:7px 10px;border-radius:999px;cursor:pointer;background:#fff;color:var(--accent);transition:background .14s ease,border-color .14s ease}.langmenu__btn:hover,.langmenu__btn[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent-edge)}.langmenu__code{letter-spacing:.04em}.langmenu__chev{display:flex;color:var(--muted);transition:transform .14s ease}.langmenu__chev--open{transform:rotate(180deg)}.langmenu__list{position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:60;min-width:170px;padding:6px;background:#fff;border:1px solid var(--line-2);border-radius:14px;box-shadow:0 12px 28px #2b2b2b24;display:flex;flex-direction:column;gap:2px}.langmenu__item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;font:inherit;font-size:15px;color:var(--ink);text-align:start;padding:9px 10px;border-radius:10px;cursor:pointer;transition:background .14s ease}.langmenu__item:hover{background:var(--chip)}.langmenu__item--active{background:var(--lime-soft);font-weight:700}.langmenu__item-code{flex:none;font-weight:800;font-size:11px;letter-spacing:.08em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:3px 7px;min-width:30px;text-align:center}.langmenu__item--active .langmenu__item-code{background:var(--lime);color:var(--ink)}.scroller{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}.main{max-width:var(--column);width:100%;margin:0 auto;padding:0 var(--gutter);display:flex;flex-direction:column}.screen{background:#fff;padding:clamp(20px,6vw,40px) 0 28px;flex:1;animation:scl-in .26s ease both}.meta{display:flex;align-items:center;gap:8px;margin:0 0 14px}.meta__kicker,.meta__counter{font-size:11px;letter-spacing:.14em;text-transform:uppercase}.meta__kicker{font-weight:800;color:var(--accent)}.meta__counter{font-weight:700;color:var(--muted)}.meta__dot{width:3px;height:3px;border-radius:999px;background:var(--dot);display:block}.title{font-weight:800;color:var(--accent);font-size:clamp(27px,7.4vw,40px);line-height:1.06;letter-spacing:-.022em;margin:0 0 16px;text-wrap:balance}.para{font-size:clamp(16px,4.2vw,17px);margin:0 0 14px;text-wrap:pretty}.figure{display:flex;justify-content:center;margin:0 0 18px}.figure__img{width:100%;height:auto;display:block}.figure__img--team{max-width:460px}.figure__img--folder{max-width:380px}.ladder{display:flex;flex-direction:column-reverse;gap:4px;margin:22px 0 4px}.rung{display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid transparent;border-radius:12px 12px 12px 4px;background:var(--accent-faint);color:var(--ink)}.rung--here{background:var(--accent);border-color:var(--accent);color:#fff}.rung--top{background:#fff;border-color:var(--track);color:var(--muted)}.rung__n{flex:none;width:24px;height:24px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;background:#630d801a;color:var(--accent)}.rung--here .rung__n{background:#ffffff38;color:#fff}.rung__label{min-width:0;font-weight:600;font-size:16px}.rung--here .rung__label{font-weight:800}.rung__tag{margin-inline-start:auto;flex:none;font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;background:var(--lime);color:var(--ink);padding:4px 9px;border-radius:999px}.bullets__title{font-weight:700;font-size:16px;margin:22px 0 10px}.bullets{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.bullet{display:flex;gap:12px;align-items:flex-start;background:var(--lime-soft);border-radius:12px;padding:13px 15px;font-size:16px;line-height:1.45;text-wrap:pretty}.bullet__dot{flex:none;width:9px;height:9px;border-radius:999px;background:var(--accent);margin-top:8px}.after{font-weight:700;font-size:clamp(16px,4.2vw,17px);color:var(--accent);margin:20px 0 0;text-wrap:pretty}.summary{display:flex;flex-direction:column;align-items:center;margin:24px 0 0}.circle{list-style:none;margin:18px 0 0;padding:0;width:100%;display:flex;flex-direction:column;gap:8px}.circle__item{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.4;color:var(--slate)}.circle__dot{flex:none;width:7px;height:7px;border-radius:999px;background:var(--accent);margin-top:8px}.disclaimer{font-size:13px;line-height:1.45;color:var(--muted);margin:28px 0 0;padding-top:14px;border-top:1px solid var(--line);text-wrap:pretty}.navbar{flex:none;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}.navbar__inner{max-width:var(--column);margin:0 auto;width:100%;padding:0 var(--bar-gutter)}.segs{display:flex;gap:4px;padding:10px 0 0}.seg{flex:1;min-width:0;height:16px;padding:6px 0 0;border:0;background:transparent;cursor:pointer;display:block}.seg__pill{display:block;height:4px;border-radius:999px;background:var(--track);transition:background .18s ease}.seg--done .seg__pill{background:var(--accent-done)}.seg__fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .12s ease}.nav{display:flex;gap:10px;align-items:stretch;padding:6px 0 12px}.nav__prev{flex:none;width:58px;min-height:56px;border:1px solid var(--accent-edge);background:#fff;color:var(--accent);font:inherit;font-weight:700;font-size:19px;border-radius:16px;cursor:pointer;transition:background .14s ease}.nav__prev:hover:not(:disabled){background:var(--accent-faint)}.nav__prev:disabled{opacity:.3;cursor:default}.nav__next{flex:1;min-width:0;min-height:56px;border:0;background:var(--accent);color:#fff;font:inherit;padding:8px 18px;border-radius:16px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:start;transition:background .14s ease}.nav__next:hover{background:var(--accent-dark)}.nav__next-text{min-width:0;display:flex;flex-direction:column;gap:1px}.nav__next-kicker{font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.72}.nav__next-label{font-weight:800;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav__next-icon{flex:none;font-size:19px}:where(.langmenu__btn,.langmenu__item,.seg,.nav__prev,.nav__next):focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
