:root{--cp-cat-amber:#a66c23;--cp-cat-teal:#0f8a72;--cp-cat-blue:#3f63a8;--cp-cat-plum:#a34a72;--cp-cat-violet:#6e63c0;--cp-cat-brick:#8e4a3c;--cp-cat-slate:var(--p4-n-600);--cp-cat-orange-200:var(--p4-o-200);--cp-cat-orange-200-on:var(--p4-n-800);--cp-cat-orange-200-ink:var(--p4-o-700);--cp-cat-orange-300:var(--p4-o-300);--cp-cat-orange-300-on:var(--p4-n-800);--cp-cat-orange-300-ink:var(--p4-o-700);--cp-cat-orange-400:var(--p4-o-400);--cp-cat-orange-400-on:var(--p4-n-800);--cp-cat-orange-400-ink:var(--p4-o-700);--cp-cat-orange-500:var(--p4-o-500);--cp-cat-orange-500-on:var(--p4-n-800);--cp-cat-orange-500-ink:var(--p4-o-700)}.cp-page{color-scheme:light;--ground:var(--p4-n-0);--paper:var(--p4-n-0);--paper-2:var(--p4-n-100);--ink:var(--p4-text-heading);--ink-2:var(--p4-text-body);--ink-3:var(--p4-text-meta);--ink-4:var(--p4-text-faint);--line:var(--p4-hairline);--line-2:var(--p4-hairline-strong);--line-3:var(--p4-n-500);--accent:var(--p4-o-500);--accent-2:var(--p4-o-600);--accent-ink:var(--p4-o-700);--accent-tint:var(--p4-o-50);--state:var(--accent);--state-2:var(--accent-2);--state-ink:var(--accent-ink);--ok:var(--p4-status-live);--track-empty:var(--p4-n-100);--bar-shadow:0 1px 2px #1e160a1a;--grid-q:#1e160a1c;--rowh:60px;--card-shadow:0 1px 2px #1e160a0d, 0 10px 26px -16px #1e160a29;--flat-shadow:none;--grid:#1e160a0e;--pk-head-ls:-.02em;--pk-track-ls:.1em;--pk-swatch-r:3px;background:var(--ground);color:var(--ink);font-family:var(--p4-font-body);font-size:var(--p4-size-body-sm);-webkit-font-smoothing:antialiased;padding-bottom:1px;line-height:1.55}.cp-page *{box-sizing:border-box}.cp-page a{color:inherit;text-decoration:none}.cp-page h1,.cp-page h2,.cp-page h3{font-family:var(--p4-font-display);font-weight:var(--p4-weight-heading);letter-spacing:var(--pk-head-ls);text-wrap:balance;margin:0}.cp-page .mono{font-family:var(--p4-font-mono);font-variant-numeric:tabular-nums}.cp-page section[id]{scroll-margin-top:calc(var(--v2-header-offset,4.5rem) + var(--pk-nav-h,4rem))}.cp-page .wrap{width:min(calc(100% - 2 * var(--p4-gutter)), var(--p4-container));margin-inline:auto;padding-bottom:96px}.cp-page .hero{padding-top:var(--p4-space-10);padding-bottom:var(--p4-space-8);align-items:start;gap:var(--p4-space-8);grid-template-columns:1fr auto;display:grid}.cp-page .hero-in{max-width:640px}.cp-page .tagpill{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--p4-radius-pill);font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--ink-2);box-shadow:var(--bar-shadow);align-items:center;gap:9px;padding:5px 6px 5px 13px;display:inline-flex}.cp-page .tagpill .bd{background:var(--accent);color:var(--p4-n-0);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);border-radius:var(--p4-radius-pill);font-size:var(--p4-size-mono-xs);padding:2px 8px}.cp-page .hero h1{font-size:var(--p4-size-display-xl);margin-top:16px;line-height:1}.cp-page .hero .lead{font-size:var(--p4-size-lede-hero);color:var(--ink-2);max-width:56ch;margin-top:18px;line-height:1.5}.cp-page .hero .lead b{color:var(--ink);font-weight:var(--p4-weight-medium)}.cp-page .partners{font-size:var(--p4-size-body-xs);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:7px 9px;margin-top:28px;display:flex}.cp-page .partners .pl{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--ink-4);margin-right:3px}.cp-page .partners b{font-weight:var(--p4-weight-medium);color:var(--ink)}.cp-page .partners .d{color:var(--line-3)}@media (width<=720px){.cp-page .hero{grid-template-columns:1fr}}.cp-page .sec{padding-top:48px}.cp-page .sec-h{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.cp-page .sec-h h2{font-size:var(--p4-size-h3)}.cp-page .sec-h .sub{font-size:var(--p4-size-body-xs);color:var(--ink-3);max-width:62ch;margin-top:6px}.cp-page .sec-h .r{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);color:var(--ink-3);text-align:right;white-space:nowrap}.cp-page .dgrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=760px){.cp-page .dgrid{grid-template-columns:1fr}}.cp-page .dcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--p4-radius-lg);box-shadow:var(--flat-shadow);padding:20px 22px}.cp-page .dcard h3{font-size:var(--p4-size-body)}.cp-page .dcard .sub{font-size:var(--p4-size-body-xs);color:var(--ink-3);margin-top:3px}.cp-page .dcard .hr{background:var(--line);height:1px;margin:14px 0 2px}.cp-page .dcard .subhead{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink);margin:14px 0 2px}.cp-page .drow{border-top:1px solid var(--line);grid-template-columns:16px 1fr auto;align-items:center;column-gap:13px;padding:13px 0;display:grid}.cp-page .drow:first-of-type{border-top:none}.cp-page .drow .mk{box-sizing:border-box;border-radius:50%;align-self:center;width:14px;height:14px}.cp-page .drow .mk.ring{border:2px solid var(--state);background:0 0}.cp-page .drow .mk.check{background:var(--ok);border:none;position:relative}.cp-page .drow .mk.check:after{content:"";border:solid var(--p4-n-0);border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:1.5px;left:4px;transform:rotate(42deg)}.cp-page .drow .tx{min-width:0}.cp-page .drow .tx .t1{font-size:var(--p4-size-nav);font-weight:var(--p4-weight-medium);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.cp-page .drow .tx .t2{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);color:var(--ink-3);margin-top:3px}.cp-page .drow .rt{text-align:right;white-space:nowrap}.cp-page .drow .rt .big{font-family:var(--p4-font-display);font-weight:var(--p4-weight-heading);font-size:var(--p4-size-body);letter-spacing:var(--pk-head-ls);line-height:1}.cp-page .drow .rt .sm{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);color:var(--ink-3);margin-top:4px}.cp-page .measure{border-top:1px solid var(--line);padding:11px 0}.cp-page .measure:first-of-type{border-top:none}.cp-page .measure .mt{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink)}.cp-page .measure .md{font-size:var(--p4-size-body-xs);color:var(--ink-2);margin-top:4px;line-height:1.5}.cp-page .pillrow{flex-wrap:wrap;gap:6px;display:flex}.cp-page .pill{font-size:var(--p4-size-eyebrow);font-weight:var(--p4-weight-medium);border-radius:var(--p4-radius-pill);border:1px solid var(--line-2);background:var(--paper-2);color:var(--ink-2);white-space:nowrap;padding:3px 9px}.cp-page .pill.lead{border-color:color-mix(in srgb, var(--accent) 34%, var(--line-2));background:var(--accent-tint);color:var(--accent-ink)}.cp-page .cp-tl{--labelw:var(--tl-labelw,244px);--tl-scale:1;--tl-fitmin:56px}.cp-page .tl-legend{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:14px;display:flex}.cp-page .tl-legend .ph{font-size:var(--p4-size-body-xs);color:var(--ink-2);font-weight:var(--p4-weight-medium);align-items:center;gap:7px;display:inline-flex}.cp-page .tl-legend .sw{border-radius:var(--pk-swatch-r);width:11px;height:11px}.cp-page .tl-legend .mk{font-size:var(--p4-size-eyebrow);color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-left:auto;display:inline-flex}.cp-page .tl-legend .lk{align-items:center;gap:6px;display:inline-flex}.cp-page .tl-legend .dia{background:var(--state);border-radius:1.5px;width:9px;height:9px;transform:rotate(45deg)}.cp-page .tl-legend .shd{background:var(--ok);border-radius:2px;width:9px;height:9px}.cp-page .tl-legend .pin{background:var(--ink-3);border-radius:50%;width:8px;height:8px}.cp-page .tl-legend .tl{background:var(--state);border-radius:1px;width:2px;height:12px}.cp-page .tl-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--p4-radius-lg);box-shadow:var(--card-shadow);overflow:hidden}.cp-page .tl-scroll{scrollbar-width:thin;overflow:auto visible}.cp-page .tl-scroll::-webkit-scrollbar{height:10px}.cp-page .tl-scroll::-webkit-scrollbar-thumb{background:var(--line-3);border-radius:var(--p4-radius-sm);border:3px solid var(--paper)}.cp-page .tl-inner{width:calc(var(--labelw) + var(--tl-months,12) * var(--tl-ppm,112) * var(--tl-scale) * 1px);position:relative}.cp-page .cp-tl.fit .tl-inner{width:max(100%, calc(var(--labelw) + var(--tl-months,12) * var(--tl-fitmin)))}.cp-page .tl-axis{grid-template-columns:var(--labelw) minmax(0, 1fr);border-bottom:1px solid var(--line-2);background:var(--paper-2);display:grid}.cp-page .tl-axis .cap{z-index:6;background:var(--paper-2);border-right:1px solid var(--line-2);align-items:center;padding:10px 16px;display:flex;position:sticky;left:0}.cp-page .tl-axis .cap span{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--ink-3)}.cp-page .tl-qs{height:44px;position:relative}.cp-page .tl-q{border-left:1px solid var(--grid-q);white-space:nowrap;padding:7px 0 0 9px;position:absolute;top:0;bottom:0;overflow:hidden}.cp-page .tl-q .qy{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow);font-weight:var(--p4-weight-medium);color:var(--ink-2)}.cp-page .tl-q .qm{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);color:var(--ink-4);margin-top:1px}.cp-page .cp-tl[data-axis=quarters-months] .tl-qs{height:54px}.cp-page .tl-q.qtr{height:26px;padding-top:5px;bottom:auto}.cp-page .tl-q.mon{border-top:1px solid var(--grid-q);padding:5px 0 0 7px;top:26px}.cp-page .tl-q.mon .qy{font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-body);color:var(--ink-3)}.cp-page .tl-out{grid-template-columns:var(--labelw) minmax(0, 1fr);border-bottom:1px solid var(--line);background:var(--paper);display:grid}.cp-page .tl-out.tl-dash{border-top:1px dashed var(--line-2);margin-top:-1px}.cp-page .tl-out .cap{z-index:6;background:var(--paper);border-right:1px solid var(--line-2);align-items:center;gap:8px;padding:0 16px;display:flex;position:sticky;left:0}.cp-page .tl-out .cap span{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--ink-3)}.cp-page .tl-outtrack{background-image:repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px calc(100% / var(--tl-months,12)));height:46px;position:relative}.cp-page .tl-mk,.cp-page .tl-mk-group{height:46px;color:inherit;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;top:0;transform:translate(-50%)}.cp-page .tl-mk-group .syms{gap:3px;display:flex}.cp-page .tl-mk-group .mmk{color:inherit;display:inline-flex}.cp-page .tl-mk .dia{background:var(--state);width:12px;height:12px;box-shadow:var(--bar-shadow);border-radius:2px;transform:rotate(45deg)}.cp-page .tl-mk-group .dia{background:var(--state);width:10px;height:10px;box-shadow:var(--bar-shadow);border-radius:2px;transform:rotate(45deg)}.cp-page .k-diamond .oc{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);color:var(--state-ink);white-space:nowrap}.cp-page .k-shield{gap:3px}.cp-page .k-shield .shd{width:15px;height:15px;color:var(--ok)}.cp-page .k-shield .oc{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);color:var(--ok);white-space:nowrap}.cp-page .tl-mk .pin{background:var(--ink-3);width:11px;height:11px;box-shadow:var(--bar-shadow);border-radius:50%}.cp-page .tl-mk-group .pin{background:var(--ink-3);width:9px;height:9px;box-shadow:var(--bar-shadow);border-radius:50%}.cp-page .tl-tip{z-index:20;background:var(--paper);border:1px solid var(--line-2);border-radius:var(--p4-radius-md);box-shadow:var(--card-shadow);white-space:normal;opacity:0;visibility:hidden;pointer-events:none;max-width:260px;padding:8px 12px;transition:opacity .12s;position:absolute;top:0;left:0;transform:translate(-50%,calc(-100% - 12px))}.cp-page .tl-tip.below{transform:translate(-50%,12px)}.cp-page .tl-tip.show{opacity:1;visibility:visible}.cp-page .tl-tip .tl-tip-t{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink)}.cp-page .tl-tip .tl-tip-d{font-size:var(--p4-size-eyebrow);color:var(--ink-3);margin-top:3px;line-height:1.4}.cp-page .tl-body{position:relative}.cp-page .tl-group{border-bottom:1px solid var(--line)}.cp-page .tl-group:last-of-type{border-bottom:none}.cp-page .grp-h{grid-template-columns:var(--labelw) minmax(0, 1fr);background:var(--paper-2);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border:none;border-top:1px solid var(--line);padding:0;display:grid}.cp-page .tl-group:first-child .grp-h{border-top:none}.cp-page .grp-h .gi{z-index:5;background:var(--paper-2);border-right:1px solid var(--line-2);border-left:4px solid var(--pc);align-items:center;gap:11px;padding:11px 14px 11px 16px;display:flex;position:sticky;left:0}.cp-page .grp-h .car{color:var(--ink-3);flex:none;transition:transform .18s;display:flex}.cp-page .grp-h .car svg{width:13px;height:13px}.cp-page .tl-group.col .grp-h .car{transform:rotate(-90deg)}.cp-page .grp-h .gtx{min-width:0}.cp-page .grp-h .gtx .gn{font-family:var(--p4-font-display);font-weight:var(--p4-weight-heading);font-size:var(--p4-size-nav);letter-spacing:var(--pk-head-ls);align-items:center;gap:8px;display:flex}.cp-page .grp-h .gtx .gn .cnt{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);color:var(--pc-ink,var(--pc));background:color-mix(in srgb, var(--pc) 13%, var(--paper));border:1px solid color-mix(in srgb, var(--pc) 30%, transparent);border-radius:var(--p4-radius-pill);padding:1px 7px}.cp-page .grp-h .gtx .gf{font-size:var(--p4-size-eyebrow);color:var(--ink-3);max-width:calc(var(--labelw) - 60px);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;line-height:1.3;display:-webkit-box;overflow:hidden}.cp-page .grp-h .gspan{position:relative}.cp-page .grp-h .gspan .sp{background:color-mix(in srgb, var(--pc) 42%, var(--paper));border:1px solid color-mix(in srgb, var(--pc) 55%, transparent);border-radius:4px;height:7px;position:absolute;top:50%;transform:translateY(-50%)}.cp-page .grp-h .gspan .gdt{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);color:var(--ink-4);white-space:nowrap;position:absolute;top:9px;transform:translate(-50%)}.cp-page .tl-group.col .tl-rows{display:none}.cp-page .tl-row{grid-template-columns:var(--labelw) minmax(0, 1fr);border-top:1px solid var(--line);width:100%;display:grid}.cp-page .tl-row:hover{background:color-mix(in srgb, var(--pc) 5%, transparent)}.cp-page .tl-lab{z-index:4;background:var(--paper);border-right:1px solid var(--line-2);min-height:var(--rowh);align-items:center;gap:10px;padding:8px 14px 8px 16px;display:flex;position:sticky;left:0}.cp-page .tl-row:hover .tl-lab{background:color-mix(in srgb, var(--pc) 5%, var(--paper))}.cp-page .tl-lab .st{border-radius:50%;flex:none;width:9px;height:9px;margin-top:4px}.cp-page .tl-lab .st.done{background:var(--pc)}.cp-page .tl-lab .st.doing{background:var(--state);box-shadow:0 0 0 3px color-mix(in srgb, var(--state) 22%, transparent)}.cp-page .tl-lab .st.todo{border:1.5px solid var(--line-3);background:0 0}.cp-page .tl-lab .lt{min-width:0}.cp-page .tl-lab .lt .nm{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.cp-page .tl-lab .lt .wk{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);color:var(--ink-4);margin-top:2px}.cp-page .tl-track{min-height:var(--rowh);background-image:repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px calc(100% / var(--tl-months,12)));position:relative}.cp-page .tl-bar{border-radius:var(--p4-radius-sm);height:28px;box-shadow:var(--bar-shadow);align-items:center;gap:6px;min-width:8px;padding:0 10px;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.cp-page .tl-bar.done{background:linear-gradient(180deg, color-mix(in srgb, var(--pc) 88%, var(--p4-n-0)) 0, var(--pc) 42%)}.cp-page .tl-bar.doing{background:linear-gradient(90deg, var(--pc) 0 var(--prog), color-mix(in srgb, var(--pc) 30%, var(--paper)) var(--prog) 100%)}.cp-page .tl-bar.todo{background:color-mix(in srgb, var(--pc) 17%, var(--paper));border:1px solid color-mix(in srgb, var(--pc) 52%, var(--paper))}.cp-page .tl-bar .ob{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);white-space:nowrap}.cp-page .tl-bar.done .ob,.cp-page .tl-bar.doing .ob{color:var(--pc-on,color-mix(in srgb, var(--p4-n-0) 86%, var(--pc)))}.cp-page .tl-bar.todo .ob{color:color-mix(in srgb, var(--pc-ink,var(--pc)) 82%, var(--ink))}.cp-page .tl-rlab{font-size:var(--p4-size-eyebrow);font-weight:var(--p4-weight-medium);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.cp-page .tl-rlab.lft{text-align:right}.cp-page .tl-row:hover .tl-rlab{color:var(--ink)}.cp-page .tl-group.flat .tl-rows>:first-child,.cp-page .tl-group.flat .tl-rows>.tl-epic:first-child>.epic-h{border-top:none}.cp-page .tl-epic{--pc:var(--ink-3)}.cp-page .epic-h{border:none;border-top:1px solid var(--line);background:var(--paper);font:inherit;color:inherit;text-align:left;cursor:pointer;padding:0}.cp-page .epic-h .tl-lab{background:var(--paper);gap:8px}.cp-page .epic-h:hover,.cp-page .epic-h:hover .tl-lab{background:var(--paper-2)}.cp-page .epic-h:focus-visible{outline:var(--p4-focus-ring);outline-offset:-2px}.cp-page .epic-h .car{color:var(--ink-3);flex:none;transition:transform .18s;display:flex}.cp-page .epic-h .car svg{width:13px;height:13px}.cp-page .tl-epic.col .epic-h .car{transform:rotate(-90deg)}.cp-page .tl-epic.col .tl-erows{display:none}.cp-page .epic-h .lt .nm{font-family:var(--p4-font-display);font-weight:var(--p4-weight-heading);font-size:var(--p4-size-body-xs);letter-spacing:var(--pk-head-ls);align-items:center;gap:7px;display:flex}.cp-page .epic-h .cnt{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);color:var(--ink-3);background:var(--paper-2);border:1px solid var(--line-2);border-radius:var(--p4-radius-pill);padding:0 6px}.cp-page .tl-ebar{border:2px solid var(--ink-2);border-bottom:none;border-radius:3px 3px 0 0;min-width:8px;height:10px;position:absolute;top:50%;transform:translateY(-50%)}.cp-page .tl-ebar.todo{border-color:var(--line-3)}.cp-page .tl-ebar.doing{border-color:var(--state)}.cp-page .epic-h .tl-rlab{color:var(--ink-3);font-weight:var(--p4-weight-body)}.cp-page .tl-row.in-epic .tl-lab{padding-left:37px}.cp-page .tl-row.in-epic .tl-lab:before{content:"";background:var(--line-2);width:1px;position:absolute;top:0;bottom:0;left:22px}.cp-page .tl-toolbar{flex-wrap:wrap;align-items:center;gap:12px;min-height:34px;margin-bottom:12px;display:flex}.cp-page .tl-hint{font-size:var(--p4-size-eyebrow);color:var(--ink-3)}.cp-page .cp-tl:not(.scrolls) .tl-hint{visibility:hidden}.cp-page .tl-navcluster{align-items:center;gap:8px;margin-left:auto;display:flex}.cp-page .tl-navcluster[hidden]{display:none}.cp-page .tl-nav{border:1px solid var(--line-2);background:var(--paper);height:34px;color:var(--ink-2);border-radius:var(--p4-radius-md);font:inherit;font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);cursor:pointer;padding:0 13px;transition:border-color .14s,color .14s}.cp-page .tl-nav:hover{border-color:var(--ink-3);color:var(--ink)}.cp-page .tl-nav.ic{justify-content:center;align-items:center;width:36px;padding:0;font-size:19px;line-height:1;display:inline-flex}.cp-page .tl-nav:focus-visible{outline:var(--p4-focus-ring);outline-offset:var(--p4-focus-offset)}@media (width<=560px){.cp-page .tl-hint{display:none}}.cp-page .tl-today{top:0;bottom:0;left:calc(var(--labelw) + (100% - var(--labelw)) * var(--at,0));background:var(--state);z-index:5;pointer-events:none;width:2px;position:absolute}.cp-page .tl-today:before{content:"TODAY";font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);color:var(--p4-n-0);background:var(--state);border-radius:var(--p4-radius-sm);white-space:nowrap;box-shadow:var(--bar-shadow);padding:2px 6px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.cp-page .tl-today:after{content:"";background:var(--state);width:8px;height:8px;box-shadow:var(--bar-shadow);border-radius:50%;position:absolute;top:0;left:-3px}.cp-page .cp-lanes[hidden]{display:none}.cp-page .t-light{background:var(--p4-o-300)}.cp-page .t-mid{background:var(--p4-o-500)}.cp-page .t-dark{background:var(--p4-o-700)}.cp-page.cp-ink-state{--state:var(--ink);--state-2:var(--p4-n-700);--state-ink:var(--ink)}.cp-page.cp-ink-state .tl-bar.todo{background:color-mix(in srgb, var(--pc) 42%, var(--paper));border-color:var(--pc)}.cp-page.cp-ink-state .grp-h .gspan .sp{background:var(--pc);border-color:color-mix(in srgb, var(--pc) 80%, var(--ink))}.cp-page .lg-legend{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:14px;display:flex}.cp-page .lg-legend .st{font-size:var(--p4-size-body-xs);color:var(--ink-2);font-weight:var(--p4-weight-medium);align-items:center;gap:7px;display:inline-flex}.cp-page .lg-legend .st b{font-weight:var(--p4-weight-medium);color:var(--ink-3)}.cp-page .lg-legend .sw{border-radius:var(--pk-swatch-r);flex:none;width:11px;height:11px}.cp-page .lg-card{--lg-labelw:150px;background:var(--paper);border:1px solid var(--line);border-radius:var(--p4-radius-lg);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.cp-page .lg-head{grid-template-columns:var(--lg-labelw) 1fr;background:var(--paper-2);border-bottom:1px solid var(--line-2);display:grid}.cp-page .lg-head .cap{border-right:1px solid var(--line-2);font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--ink-3);align-items:center;padding:9px 16px;display:flex}.cp-page .lg-months{grid-template-columns:repeat(var(--lg-months,6), 1fr);display:grid}.cp-page .lg-months span{text-align:center;font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);color:var(--ink-4);border-left:1px solid var(--grid);padding:9px 0}.cp-page .lg-row{grid-template-columns:var(--lg-labelw) 1fr;border-top:1px solid var(--line);display:grid}.cp-page .lg-row:first-child{border-top:none}.cp-page .lg-today{top:0;bottom:0;left:calc(var(--lg-labelw) + (100% - var(--lg-labelw)) * var(--at,0));background:var(--state);z-index:3;pointer-events:none;width:2px;margin-left:-1px;position:absolute}.cp-page .lg-today:before{content:"";background:var(--state);width:8px;height:8px;box-shadow:0 0 0 2px var(--paper-2);border-radius:50%;position:absolute;top:0;left:50%;transform:translate(-50%)}.cp-page .lg-legend .tl{background:var(--state);border-radius:1px;width:2px;height:12px}.cp-page .lg-lab{border-right:1px solid var(--line-2);flex-direction:column;justify-content:center;gap:3px;padding:14px 16px;display:flex}.cp-page .lg-lab .ln{font-family:var(--p4-font-display);font-weight:var(--p4-weight-heading);font-size:var(--p4-size-body-sm);letter-spacing:var(--pk-head-ls)}.cp-page .lg-track{background-image:repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px calc(100% / var(--lg-months,6)));min-height:52px;padding:13px 0;position:relative}.cp-page .lg-seg{border-radius:var(--p4-radius-sm);height:26px;box-shadow:var(--bar-shadow);justify-content:center;align-items:center;padding:0 5px;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.cp-page .lg-seg span{font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);color:var(--p4-n-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cp-page .lg-seg.t-light span{color:var(--p4-o-900)}.cp-page .lg-note{font-size:var(--p4-size-eyebrow);color:var(--ink-3);margin-top:12px}.cp-page .lg-note[hidden]{display:none}.cp-page .lnlink{color:inherit;align-items:center;gap:4px;text-decoration:none;transition:color .12s;display:inline-flex}.cp-page .lnlink:hover{color:var(--accent)}.cp-page .lnlink .exti{opacity:.45;transition:opacity .12s,transform .12s}.cp-page .lnlink:hover .exti{opacity:1;transform:translate(1px,-1px)}@media (width<=560px){.cp-page .lg-card{--lg-labelw:118px}.cp-page .lg-lab{padding:12px}.cp-page .lg-seg span{font-size:var(--p4-size-mono-xs)}}.cp-page .scrim{opacity:0;pointer-events:none;z-index:1150;backdrop-filter:blur(1.5px);background:#140e0457;transition:opacity .22s;position:fixed;inset:0}.cp-page .scrim.open{opacity:1;pointer-events:auto}.cp-page .draw{background:var(--paper);border-left:1px solid var(--line-2);z-index:1151;flex-direction:column;width:min(452px,94vw);height:100%;transition:transform .28s cubic-bezier(.4,.02,.15,1);display:flex;position:fixed;top:0;right:0;transform:translate(102%);box-shadow:-18px 0 44px -22px #140e0480}.cp-page .draw.open{transform:translate(0)}.cp-page .draw .dh{border-bottom:1px solid var(--line);padding:22px 24px 18px;position:relative}.cp-page .draw .dh .ph{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--pc-ink,var(--pc));align-items:center;gap:7px;display:inline-flex}.cp-page .draw .dh .ph .sw{background:var(--pc);border-radius:2.5px;width:9px;height:9px}.cp-page .draw .dh h3{font-size:var(--p4-size-card-title);max-width:30ch;margin-top:11px;line-height:1.16}.cp-page .draw .dh .x{border:1px solid var(--line-2);background:var(--paper);border-radius:var(--p4-radius-md);cursor:pointer;width:32px;height:32px;color:var(--ink-2);justify-content:center;align-items:center;display:flex;position:absolute;top:16px;right:16px}.cp-page .draw .dh .x:hover{color:var(--ink);border-color:var(--line-3)}.cp-page .draw .db{flex:1;padding:8px 24px 40px;overflow-y:auto}.cp-page .draw .db .drow:first-of-type{border-top:none}@media (width<=720px){.cp-page{--rowh:64px}.cp-page .cp-tl{--labelw:148px;--tl-scale:.65;--tl-fitmin:48px}.cp-page .wrap{padding-inline:0}.cp-page .sec-h{flex-direction:column;align-items:flex-start;gap:4px}.cp-page .sec-h .r{text-align:left;white-space:normal}.cp-page .grp-h .gtx .gf{display:none}}@media (prefers-reduced-motion:reduce){.cp-page *{transition:none!important}}.cp-page .page-note{margin:var(--p4-space-10) 0 0;padding-top:var(--p4-space-4);border-top:1px solid var(--line);font-size:var(--p4-size-body-xs);color:var(--ink-3)}.cp-page .ah-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:13px;display:grid}.cp-page .ah-card{border:1px solid var(--line);border-radius:var(--p4-radius-lg);background:var(--paper);box-shadow:var(--flat-shadow);flex-direction:column;display:flex;overflow:hidden}.cp-page .ah-preview{aspect-ratio:1200/630;border-bottom:1px solid var(--line);background:var(--paper-2);display:block;overflow:hidden}.cp-page .ah-preview img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.cp-page .ah-preview.is-contain img{object-fit:contain;padding:var(--p4-space-3)}.cp-page .ah-preview:hover img{transform:scale(1.015)}.cp-page .ah-body{flex-direction:column;flex:1;padding:18px 22px 20px;display:flex}.cp-page .ah-kind{font-family:var(--p4-font-mono);font-size:var(--p4-size-mono-xs);font-weight:var(--p4-weight-medium);letter-spacing:var(--pk-track-ls);text-transform:uppercase;color:var(--accent-ink)}.cp-page .ah-title{font-size:var(--p4-size-card-title);margin-top:var(--p4-space-2);line-height:1.2}.cp-page .ah-desc{font-size:var(--p4-size-body-xs);color:var(--ink-3);margin:var(--p4-space-2) 0 0;max-width:60ch;line-height:1.5}.cp-page .ah-people{gap:var(--p4-space-3) var(--p4-space-6);margin-top:var(--p4-space-4);flex-wrap:wrap;display:flex}.cp-page .ah-person{align-items:center;gap:var(--p4-space-3);display:flex}.cp-page .ah-person img{object-fit:cover;border-radius:50%;flex:none;width:2.5rem;height:2.5rem}.cp-page .ah-pname{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink)}.cp-page .ah-prole{font-size:var(--p4-size-eyebrow);color:var(--ink-3)}.cp-page .ah-links{align-items:center;gap:var(--p4-space-2) var(--p4-space-5);padding-top:var(--p4-space-5);flex-wrap:wrap;margin-top:auto;display:flex}.cp-page .ah-btn{border-radius:var(--p4-radius-pill);background:var(--paper-2);border:1px solid var(--line-2);font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--ink);align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.cp-page .ah-btn:hover{border-color:var(--line-3)}.cp-page .ah-link{font-size:var(--p4-size-body-xs);font-weight:var(--p4-weight-medium);color:var(--accent-ink)}.cp-page .ah-link:hover{text-decoration:underline}.cp-page .ah-ext{opacity:.6;font-size:.9em}@media (width<=720px){.cp-page .ah-grid{grid-template-columns:1fr}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--p4-bg-page);color:var(--p4-text-heading);font-family:var(--p4-font-body)}a{color:inherit}.v2-header[data-astro-cid-zu7hhhhx]{z-index:1100;background:var(--p4-n-0);border-bottom:var(--p4-border-width) solid var(--p4-hairline);position:sticky;top:0}.v2-header__inner[data-astro-cid-zu7hhhhx]{width:min(calc(100% - 2 * var(--p4-gutter)), var(--p4-container));align-items:center;gap:var(--p4-space-3);height:4.5rem;margin-inline:auto;display:flex}.v2-header--wide[data-astro-cid-zu7hhhhx] .v2-header__inner[data-astro-cid-zu7hhhhx],.v2-header--wide[data-astro-cid-zu7hhhhx]+main[data-astro-cid-zu7hhhhx]+.v2-footer[data-astro-cid-zu7hhhhx] .v2-footer__inner[data-astro-cid-zu7hhhhx]{width:calc(100% - 2 * var(--p4-gutter))}.v2-header__admin[data-astro-cid-zu7hhhhx]{border:var(--p4-border-width) solid var(--p4-hairline-strong);border-radius:var(--p4-radius-md);width:2.25rem;height:2.25rem;color:var(--p4-text-meta);justify-content:center;align-items:center;margin-left:auto;transition:color .14s,border-color .14s;display:inline-flex}.v2-header__admin[data-astro-cid-zu7hhhhx]:hover{color:var(--p4-ink);border-color:var(--p4-n-500)}.v2-header__admin[data-astro-cid-zu7hhhhx]:focus-visible{outline:var(--p4-focus-ring);outline-offset:var(--p4-focus-offset)}.v2-header__logo[data-astro-cid-zu7hhhhx]{width:auto;height:1.25rem;color:var(--p4-ink);flex:none}.v2-header__client[data-astro-cid-zu7hhhhx]{font-family:var(--p4-font-mono);font-size:var(--p4-size-eyebrow-sm);font-weight:var(--p4-weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--p4-text-meta);padding-left:var(--p4-space-3);border-left:var(--p4-border-width) solid var(--p4-hairline)}.v2-footer[data-astro-cid-zu7hhhhx]{border-top:var(--p4-border-width) solid var(--p4-hairline);padding-block:var(--p4-space-6)}.v2-footer__inner[data-astro-cid-zu7hhhhx]{width:min(calc(100% - 2 * var(--p4-gutter)), var(--p4-container));font-size:var(--p4-size-body-xs);color:var(--p4-text-meta);margin-inline:auto}
