/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Instrument Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--spacing:.25rem;--breakpoint-sm:641px;--breakpoint-md:901px;--font-weight-semibold:600;--radius-sm:6px;--radius-md:12px;--radius-lg:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-chalk:"Caveat", "Segoe Print", "Bradley Hand", cursive;--radius-pill:999px;--shadow-card-hover:0 18px 40px -24px #1d2a2259;--text-display-xl:clamp(48px, 6vw + 26px, 88px);--text-display-lg:clamp(40px, 4vw + 26px, 64px);--text-heading-1:clamp(32px, 2vw + 24px, 44px);--text-heading-2:clamp(26px, 1vw + 22px, 32px);--text-chalk-title:clamp(36px, 3vw + 24px, 52px);--breakpoint-nav:1081px;--container-text:68ch;--container-page:1200px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}a,a:hover{color:var(--forest)}:where(a,button,[tabindex]):focus-visible{outline:2px solid var(--tomato-ink);outline-offset:3px}}@layer components{.pf-root :where(*){box-sizing:content-box}.pf-root :where(button,input,select,textarea){box-sizing:border-box}.ap-pad{padding:var(--space-12)}.ap-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.ap-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.ap-display-xl,.ap-display-lg,.ap-h1,.ap-h2,.ap-h3{font-family:var(--font-display);font-variation-settings:"SOFT" 50;color:var(--ink);margin:0;font-weight:500}.ap-display-xl{font-size:var(--fs-display-xl,clamp(48px, 6vw + 26px, 88px));letter-spacing:-.02em;line-height:1.05}.ap-display-lg{font-size:var(--fs-display-lg,clamp(40px, 4vw + 26px, 64px));letter-spacing:-.015em;line-height:1.06}.ap-h1{font-size:var(--fs-heading-1,clamp(32px, 2vw + 24px, 44px));letter-spacing:-.01em;line-height:1.18}.ap-h2{font-size:var(--fs-heading-2,clamp(26px, 1vw + 22px, 32px));line-height:1.25}.ap-h3{font-size:24px;line-height:1.33}.ap-prose{max-width:var(--measure-text);font-size:17px;line-height:1.65}.ap-prose>*+*{margin-top:var(--space-4)}.ap-prose>:first-child{margin-top:0}.ap-prose h2{margin-top:var(--space-12);font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-weight:500;font-size:var(--fs-heading-2,clamp(26px, 1vw + 22px, 32px));margin-bottom:.83em;line-height:1.25}.ap-prose h3{margin-bottom:1em;margin-top:var(--space-8);font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-size:24px;font-weight:500;line-height:1.33}.ap-prose p,.ap-prose ul,.ap-prose ol{margin-bottom:0}.ap-prose ul,.ap-prose ol{padding-left:var(--space-6)}.ap-prose ul{list-style:outside}.ap-prose ol{list-style:decimal}.ap-prose li+li{margin-top:var(--space-2)}.ap-prose ul li::marker{color:var(--forest)}.ap-prose a{color:var(--forest);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:4px;text-decoration-thickness:1px;transition:text-decoration-color .15s}.ap-prose a:hover{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato);text-decoration-thickness:2px}.ap-prose code{font-family:var(--font-mono);border-radius:var(--radius-sm);background:var(--surface-sunken);padding:1px 6px;font-size:.85em}.ap-prose strong{font-weight:600}.ap-btn{align-items:center;gap:var(--space-2);box-sizing:border-box;height:48px;padding:0 var(--space-6);border-radius:var(--radius-md);font:600 15px/20px var(--font-sans);cursor:pointer;border:1px solid #0000;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,text-decoration-color .15s;display:inline-flex}.ap-btn-label{text-underline-offset:5px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:2px;transition:text-decoration-color .15s}.ap-btn-primary{background:var(--forest);color:var(--on-forest);border-color:var(--forest)}.ap-btn-primary:hover .ap-btn-label{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.ap-btn-primary:active{background:var(--ink);border-color:var(--ink);color:var(--surface)}.ap-btn-quiet{color:var(--ink);border-color:var(--line-strong);background:0 0}.ap-btn-quiet:hover{background:var(--forest-soft);border-color:var(--forest)}.ap-btn-quiet:active{background:var(--surface-sunken)}.ap-btn-link{height:auto;color:var(--forest);background:0 0;border:0;border-radius:2px;padding:0}.ap-btn-link .ap-btn-label{-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-decoration-thickness:1px}.ap-btn-link:hover .ap-btn-label{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato);text-decoration-thickness:2px}.ap-arrow{color:var(--tomato)}.ap-btn-primary .ap-arrow{color:inherit}.ap-btn[aria-disabled=true],.ap-btn:disabled{opacity:.45;cursor:not-allowed}.ap-btn[aria-disabled=true] .ap-btn-label,.ap-btn:disabled .ap-btn-label{text-decoration-color:#0000}.ap-btn-quiet[aria-disabled=true]:hover,.ap-btn-quiet:disabled:hover{border-color:var(--line-strong);background:0 0}.ap-tag{align-items:center;gap:var(--space-2);font:600 13px/20px var(--font-sans);letter-spacing:.02em;border-radius:var(--radius-pill);background:var(--forest-soft);color:var(--forest);padding:4px 12px;display:inline-flex}.ap-tag-stack{font:500 13px/20px var(--font-mono);letter-spacing:0;border-radius:var(--radius-sm);border:1px solid var(--line-strong);color:var(--ink);background:0 0;padding:1px 8px}.ap-sh{max-width:var(--measure-text)}.ap-eyebrow{align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);display:flex}.ap-eyebrow:before{content:"";border-radius:var(--radius-pill);background:var(--tomato);flex:none;width:8px;height:8px}.ap-sh-intro{margin:var(--space-4) 0 0;color:var(--ink-muted);font-size:20px;line-height:1.6}.ap-card{gap:var(--space-6);box-sizing:border-box;padding:var(--space-8);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);color:var(--ink);flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.ap-card.is-linked:hover{border-color:var(--forest);box-shadow:var(--shadow-card-hover)}.ap-card-top{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.ap-card-meta{color:var(--ink-muted);font-size:14px;line-height:1.57}.ap-card-title a{color:inherit;text-decoration:none}.ap-card-title a:after{content:"";border-radius:inherit;position:absolute;inset:0}.ap-card-title a:focus-visible{outline:none}.ap-card:has(.ap-card-title a:focus-visible){outline:2px solid var(--tomato-ink);outline-offset:3px}.ap-card-summary{margin:var(--space-2) 0 0;color:var(--ink-muted)}.ap-card-stack{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ap-card-foot{z-index:1;padding-top:var(--space-6);border-top:1px solid var(--line);gap:var(--space-6);margin-top:auto;position:relative}.ap-card .ap-arrow{color:var(--ink-muted);transition:color .15s}.ap-card a:hover .ap-arrow,.ap-card a:focus-visible .ap-arrow{color:var(--tomato)}.ap-figure{margin:0}.ap-frame{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface-raised);overflow:hidden}.ap-frame-bar{align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-4);border-bottom:1px solid var(--line);background:var(--surface-sunken);display:flex}.ap-frame-url{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:500 13px/20px var(--font-mono);color:var(--ink-muted);flex:1;overflow:hidden}.ap-frame-media{width:100%;height:auto;aspect-ratio:var(--ap-ratio,16 / 10);object-fit:cover;object-position:top;background:var(--surface-sunken);display:block}.ap-frame-empty{padding:var(--space-8);box-sizing:border-box;text-align:center;color:var(--ink-muted);place-items:center;font-size:14px;display:grid}.ap-figure.is-plain .ap-frame-bar{display:none}.ap-figcaption{margin-top:var(--space-4);color:var(--ink-muted);max-width:var(--measure-text);font-size:14px;line-height:1.57}.ap-facts{gap:var(--space-8);padding:var(--space-8) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0;display:grid}.ap-fact dt{margin:0 0 var(--space-2);font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.ap-fact dd{font-family:var(--font-display);font-variation-settings:"SOFT" 50;margin:0;font-size:24px;font-weight:500;line-height:1.33}.ap-fact dd a{color:var(--forest);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:5px;text-decoration-thickness:1px}.ap-fact dd a:hover{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato);text-decoration-thickness:2px}.ap-skip{left:var(--space-4);z-index:10;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--forest);color:var(--on-forest);font:600 15px/20px var(--font-sans);text-decoration:none;position:absolute;top:-100px}.ap-skip:focus{top:var(--space-4)}.ap-header{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-6) 0;flex-wrap:wrap;display:flex}.ap-header-end{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.ap-wordmark{font-family:var(--font-display);font-variation-settings:"SOFT" 50;color:var(--ink);font-size:22px;font-weight:500;line-height:1.2;text-decoration:none}.ap-nav ul{align-items:center;gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ap-nav a{color:var(--ink);font:600 15px/20px var(--font-sans);text-underline-offset:6px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:2px;transition:text-decoration-color .15s}.ap-nav a:hover{-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.ap-nav a[aria-current=page]{color:var(--forest);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.ap-theme{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line-strong);color:var(--ink);font:600 13px/20px var(--font-sans);cursor:pointer;background:0 0;transition:background-color .15s;display:inline-flex}.ap-theme:hover{background:var(--forest-soft)}.ap-theme-dot{border-radius:var(--radius-pill);background:var(--ink);width:12px;height:12px;box-shadow:inset -4px 0 0 var(--surface)}.ap-footer{padding:var(--space-24) 0 var(--space-12);border-top:1px solid var(--line)}.ap-footer-text{margin:var(--space-4) 0 0;max-width:var(--measure-text);color:var(--ink-muted);font-size:20px;line-height:1.6}.ap-footer-mail{margin-top:var(--space-8);font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-weight:500;font-size:var(--fs-heading-2,clamp(26px, 1vw + 22px, 32px));color:var(--forest);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:8px;overflow-wrap:anywhere;line-height:1.25;text-decoration-thickness:2px;display:inline-block}.ap-footer-mail:hover{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.ap-footer-bottom{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-16);color:var(--ink-muted);flex-wrap:wrap;font-size:14px;display:flex}.ap-footer-links{gap:var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ap-footer-links a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:4px}.ap-footer-links a:hover{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.ap-board{box-sizing:border-box;border-radius:var(--radius-lg);background-color:var(--chalkboard);color:var(--chalk);border:10px solid var(--chalkboard-frame);isolation:isolate;position:relative;overflow:hidden;container-type:inline-size}.ap-board:before{content:"";z-index:-1;opacity:.16;pointer-events:none;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.ap-board-inner{padding:var(--space-16)}.ap-board :focus-visible{outline-color:var(--chalk-tomato)}.ap-board-svgdefs{width:0;height:0;position:absolute}.ap-chalk{font-family:var(--font-chalk);text-shadow:0 0 1px #efeadf8c}.ap-board-eyebrow{margin:0 0 var(--space-2);font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--chalk-muted)}.ap-board-title{margin:0 0 var(--space-12);font-size:var(--fs-chalk-title,clamp(36px, 3vw + 24px, 52px));font-weight:600;line-height:1.08;display:inline-block;position:relative}.ap-underline{width:calc(100% + 12px);height:16px;position:absolute;bottom:-14px;left:-4px;overflow:visible}.ap-underline path{fill:none;stroke:var(--chalk-tomato);stroke-width:3px;stroke-linecap:round}.ap-steps{grid-template-columns:repeat(var(--ap-steps,3), minmax(0, 1fr));gap:var(--space-8);margin:0;padding:0;list-style:none;display:grid}.ap-step{padding-right:var(--space-8);position:relative}.ap-step-n{width:48px;height:48px;margin-bottom:var(--space-2);color:var(--chalk-muted);place-items:center;font-size:30px;font-weight:700;line-height:1;display:inline-grid;position:relative}.ap-step-n svg{width:56px;height:56px;position:absolute;inset:-4px;overflow:visible}.ap-step-n ellipse{fill:none;stroke:var(--chalk-muted);stroke-width:2.5px;stroke-linecap:round}.ap-step-text,.ap-step-note{display:block}.ap-step-text>span,.ap-step-note>span{max-width:100%;display:inline-block}.ap-step-text{font-size:28px;font-weight:500;line-height:1.29}.ap-step-note{margin-top:var(--space-1);color:var(--chalk-muted);font-size:22px;line-height:1.27}.ap-step-arrow{width:24px;height:16px;display:block;position:absolute;top:20px;right:0}.ap-step-arrow svg{width:24px;height:16px;display:block;overflow:visible}.ap-step-arrow path{fill:none;stroke:var(--chalk-muted);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.ap-board-foot{margin:var(--space-12) 0 0;color:var(--chalk-muted);font-size:24px;line-height:1.33}.ap-board-foot>span{max-width:100%;display:inline-block}.ap-board-foot b{color:var(--chalk-tomato);font-weight:600}.ap-step-items{margin:var(--space-3) 0 0;color:var(--chalk-muted);padding:0;font-size:21px;line-height:1.3;list-style:none}.ap-step-items li{margin-top:var(--space-1);padding-left:18px;position:relative}.ap-step-items li:before{content:"–";position:absolute;left:0}.ap-step-items li>span{max-width:100%;display:inline-block}.ap-board[data-steps="1"] .ap-step{max-width:64ch;padding-right:0}.ap-board-nav{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-12);flex-wrap:wrap;display:flex}.ap-board-page{font:600 13px/20px var(--font-sans);letter-spacing:.12em;color:var(--chalk-muted)}.ap-board-more{box-sizing:border-box;color:var(--chalk);cursor:pointer;background:0 0;border:2px solid #efeadf8c;border-radius:16px 22px 14px 24px/20px 14px 22px 16px;padding:8px 20px 10px;font-size:26px;font-weight:600;line-height:1.1;transition:border-color .15s,background-color .15s,transform .15s}.ap-board-more:hover{border-color:var(--chalk);background-color:#efeadf12}.ap-board-more:active{transform:scale(.97)}.ap-board-more:disabled{cursor:progress;opacity:.6}.ap-board-trail{z-index:2;pointer-events:none;filter:blur(10px);width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ap-board-trail line{fill:none;stroke:var(--chalk);stroke-opacity:.045;stroke-linecap:round}.ap-sponge{z-index:3;pointer-events:none;visibility:hidden;opacity:0;filter:drop-shadow(0 8px 10px #00000059);will-change:transform;width:120px;height:70px;position:absolute;top:0;left:0}.ap-sponge svg{display:block}@container (width<=759px){.ap-board-inner{padding:var(--space-12) var(--space-8)}.ap-board .ap-steps{gap:var(--space-4);grid-template-columns:1fr}.ap-board .ap-step{padding-right:0}.ap-board .ap-step-arrow{margin:var(--space-4) 0 0 12px;position:static;transform:rotate(90deg)}}@container (width<=999px){.ap-board[data-steps="4"] .ap-steps,.ap-board[data-steps="5"] .ap-steps{gap:var(--space-4);grid-template-columns:1fr}.ap-board[data-steps="4"] .ap-step,.ap-board[data-steps="5"] .ap-step{padding-right:0}.ap-board[data-steps="4"] .ap-step-arrow,.ap-board[data-steps="5"] .ap-step-arrow{margin:var(--space-4) 0 0 12px;position:static;transform:rotate(90deg)}}@container (width<=1239px){.ap-board[data-steps="5"] .ap-steps{gap:var(--space-4);grid-template-columns:1fr}.ap-board[data-steps="5"] .ap-step{padding-right:0}.ap-board[data-steps="5"] .ap-step-arrow{margin:var(--space-4) 0 0 12px;position:static;transform:rotate(90deg)}}.ap-board.is-armed .ap-write{clip-path:inset(-20% 100% -20% 0)}.ap-board.is-armed .ap-draw{stroke-dasharray:1;stroke-dashoffset:1px}.ap-board.is-drawn .ap-write{animation:ap-write var(--ap-dur,.5s) steps(12, end) var(--ap-delay,0s) forwards}.ap-board.is-drawn .ap-draw{animation:ap-draw .4s ease-out var(--ap-delay,0s) forwards}@keyframes ap-write{to{clip-path:inset(-20% -5% -20% 0)}}@keyframes ap-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.ap-board.is-armed .ap-write,.ap-board.is-drawn .ap-write{clip-path:none;animation:none}.ap-board.is-armed .ap-draw,.ap-board.is-drawn .ap-draw{stroke-dasharray:none;stroke-dashoffset:0;animation:none}}@media print{.ap-board .ap-write{clip-path:none!important;animation:none!important}.ap-board .ap-draw{stroke-dasharray:none!important;stroke-dashoffset:0!important;animation:none!important}}.ap-tl{gap:var(--space-16);margin:0;padding:0;list-style:none;display:grid}.ap-tl-era{gap:var(--space-8);grid-template-columns:200px 1fr;display:grid}.ap-tl-when{font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);padding-top:8px}.ap-tl-body{padding-left:var(--space-8);border-left:2px solid var(--line);position:relative}.ap-tl-body:before{content:"";border-radius:var(--radius-pill);background:var(--surface);border:2px solid var(--forest);box-sizing:border-box;width:12px;height:12px;position:absolute;top:12px;left:-7px}.ap-tl-era.is-current .ap-tl-body:before{background:var(--tomato);border-color:var(--tomato)}.ap-tl-title{font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-weight:500;font-size:var(--fs-heading-2,clamp(26px, 1vw + 22px, 32px));margin:0;line-height:1.25}.ap-tl-text{margin:var(--space-2) 0 0;color:var(--ink-muted);max-width:var(--measure-text)}.ap-tl-items{gap:var(--space-2);margin:var(--space-6) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}@media (width<=640px){.ap-pad{padding:var(--space-6)}.ap-tl-era{gap:var(--space-2);grid-template-columns:1fr}.ap-card{padding:var(--space-6)}}.pf-wrap{max-width:var(--measure-page);padding:0 var(--space-24);margin:0 auto}.pf-section{padding:var(--space-32) 0;scroll-margin-top:var(--space-6)}.pf-band{background:var(--surface-sunken)}.pf-gap{margin-bottom:var(--space-16)}.pf-header{z-index:30;background:var(--surface);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.pf-header{background:color-mix(in srgb, var(--surface) 90%, transparent)}}.pf-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.pf-header-row{align-items:center;gap:var(--space-6);height:76px;display:flex}.pf-brand{font:700 24px/1 var(--font-display);letter-spacing:-.01em;color:var(--ink);white-space:nowrap;margin-right:auto;text-decoration:none}.pf-brand:hover{color:var(--forest)}.pf-nav ul{align-items:center;gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.pf-nav a{border-radius:var(--radius-pill);height:40px;color:var(--ink);font:600 15px/1 var(--font-sans);align-items:center;padding:0 14px;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.pf-nav a:hover{background:var(--forest-soft);color:var(--ink)}.pf-nav a[aria-current=true]{background:var(--forest-soft);color:var(--forest)}.pf-header-tools{align-items:center;gap:var(--space-2);display:flex}.pf-icon-btn{border-radius:var(--radius-pill);border:1px solid var(--line-strong);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;place-items:center;padding:0;transition:background-color .15s;display:inline-grid}.pf-icon-btn:hover,.pf-icon-btn[aria-expanded=true]{background:var(--forest-soft)}.pf-icon-btn:focus-visible,.pf-nav a:focus-visible,.pf-cta:focus-visible,.pf-brand:focus-visible,.pf-menu a:focus-visible,.pf-menu-theme:focus-visible{outline:2px solid var(--tomato-ink);outline-offset:3px}.pf-cta{border-radius:var(--radius-pill);background:var(--tomato-fill);height:44px;color:var(--on-tomato);font:700 15px/1 var(--font-sans);white-space:nowrap;align-items:center;padding:0 20px;text-decoration:none;transition:background-color .15s;display:inline-flex}.pf-cta:hover{background:var(--tomato-hover);color:var(--on-tomato)}.pf-menu-btn{display:none}.pf-root .ap-skip{z-index:40}.pf-menu{border-top:1px solid var(--line);max-height:calc(100dvh - 64px);padding:var(--space-2) var(--space-6) var(--space-8);background:var(--surface);overflow-y:auto}.pf-menu ul{margin:0;padding:0;list-style:none}.pf-menu-link{border-bottom:1px solid var(--line);min-height:60px;color:var(--ink);font:600 26px/1.2 var(--font-display);justify-content:space-between;align-items:center;text-decoration:none;display:flex}.pf-menu-link:hover{color:var(--forest)}.pf-menu-link span:last-child{color:var(--ink-muted);font-size:22px}.pf-menu-foot{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);display:flex}.pf-menu-theme{border-radius:var(--radius-pill);border:1px solid var(--line-strong);height:44px;color:var(--ink);font:600 15px/1 var(--font-sans);cursor:pointer;background:0 0;padding:0 18px}@media (width>=1081px){.pf-menu{display:none}}@media (width<=1080px){.pf-nav,.pf-header-tools>.pf-cta,.pf-theme-btn{display:none}.pf-menu-btn{display:inline-grid}.pf-header-row{gap:var(--space-3);height:64px}.pf-brand{font-size:21px}}.pf-util{padding-top:var(--space-4);justify-content:flex-end;align-items:center;display:flex}.pf-langdd{position:relative}.pf-lang-btn{align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-3) 0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink);font:600 13px/20px var(--font-sans);letter-spacing:.06em;cursor:pointer;background:0 0;transition:background-color .15s;display:inline-flex}.pf-lang-btn:hover,.pf-lang-btn[aria-expanded=true]{background:var(--forest-soft)}.pf-lang-btn:focus-visible{outline:2px solid var(--tomato-ink);outline-offset:3px}.pf-globe{color:var(--forest);flex:none;display:block}.pf-globe-spin{animation:2.4s linear infinite pf-globe-spin}.pf-lang-btn[aria-expanded=true] .pf-globe-spin{animation-play-state:paused}@keyframes pf-globe-spin{0%{transform:translate(0)}to{transform:translate(6px)}}@media (prefers-reduced-motion:reduce){.pf-globe-spin{animation:none}}.pf-chev{color:var(--ink-muted);transition:transform .15s;display:block}.pf-lang-btn[aria-expanded=true] .pf-chev{transform:rotate(180deg)}.pf-lang-menu{right:0;top:calc(100% + var(--space-2));z-index:20;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-md);min-width:220px;box-shadow:var(--shadow-card-hover);margin:0;padding:6px;list-style:none;position:absolute}.pf-lang-opt{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:44px;padding:0 var(--space-3);color:var(--ink);font:500 15px/20px var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;transition:background-color .15s;display:flex}.pf-lang-opt:hover{background:var(--forest-soft)}.pf-lang-opt:focus-visible{outline:2px solid var(--tomato-ink);outline-offset:-2px}.pf-lang-opt[aria-current=true]{color:var(--forest);font-weight:600}.pf-lang-optcode{font:500 13px/20px var(--font-mono);color:var(--ink-muted)}.pf-lang-opt[aria-current=true] .pf-lang-optcode{color:var(--forest)}.pf-hero{padding-top:var(--space-16)}.pf-hero-intro{margin:var(--space-6) 0 0;max-width:60ch;color:var(--ink-muted);font-size:20px;line-height:1.6}.pf-actions{align-items:center;gap:var(--space-3) var(--space-6);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.pf-actions-btns{gap:var(--space-3);flex-wrap:wrap;display:flex}.pf-stage{--stage-fs:clamp(72px, 20.5vw, 296px);margin-top:var(--space-24);position:relative}.pf-stage-word{font-family:var(--font-display);font-variation-settings:"SOFT" 50, "opsz" 144;font-weight:600;font-size:var(--stage-fs);letter-spacing:-.045em;color:var(--ink);text-align:center;white-space:nowrap;margin:0;line-height:.8}.pf-stage-above{margin:0 0 var(--space-4);text-align:center;font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.pf-devices{z-index:1;gap:var(--space-8);margin-top:calc(var(--stage-fs) * -.26);grid-template-columns:minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr);align-items:end;display:grid;position:relative}.pf-stage-word,.pf-stage-above,.pf-devices{will-change:transform}.pf-devices.is-two{grid-template-columns:minmax(0,2.6fr) minmax(0,1fr);max-width:980px;margin-left:auto;margin-right:auto}.pf-dev{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.pf-phone{width:100%;max-width:190px;margin:0 auto;container-type:inline-size}.pf-phone-body{background:linear-gradient(145deg,#2d322f,#0e110f 60%);border-radius:20cqi;padding:3.6cqi;position:relative;box-shadow:inset 0 0 0 1.5px #4a504c,0 30px 50px -18px #16241d8c,0 8px 16px -8px #16241d66}.pf-phone-body:before,.pf-phone-body:after{content:"";background:#2a2f2c;border-radius:1cqi;width:1.6cqi;position:absolute}.pf-phone-body:before{height:11%;top:27%;right:-1.2cqi}.pf-phone-body:after{background:linear-gradient(#2a2f2c 0 30%,#0000 30% 42%,#2a2f2c 42%);height:22%;top:19%;left:-1.2cqi}.pf-phone-screen{background:#121212;border-radius:16.5cqi;padding-top:10cqi;position:relative;overflow:hidden}.pf-phone-screen:before{content:"";z-index:1;background:#000;border-radius:99px;width:28cqi;height:8cqi;margin-left:-14cqi;position:absolute;top:2.4cqi;left:50%}.pf-phone-screen:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(115deg,#ffffff21,#0000 36%);position:absolute;inset:0}.pf-phone-bar{box-sizing:border-box;height:10cqi;font:600 5.2cqi/1 var(--font-sans);color:#fff;justify-content:space-between;align-items:center;padding:1.2cqi 10cqi 0 12cqi;display:flex;position:absolute;inset:0 0 auto}.pf-phone-batt{box-sizing:border-box;background:linear-gradient(90deg,#fff 0 70%,#0000 70%) content-box content-box;border:1px solid #ffffffb3;border-radius:1.2cqi;width:7.4cqi;height:3.6cqi;padding:1px}.pf-phone .ap-frame{border:0;border-radius:0}.pf-laptop{container-type:inline-size}.pf-laptop-lid{background:#111513;border-radius:2.4cqi 2.4cqi .6cqi .6cqi;margin:0 6.5cqi;padding:1.6cqi 1.6cqi 2cqi;position:relative;box-shadow:inset 0 0 0 1.5px #3a403c}.pf-laptop-lid:before{content:"";background:#303833;border-radius:50%;width:.6cqi;height:.6cqi;margin-left:-.3cqi;position:absolute;top:.55cqi;left:50%}.pf-laptop-lid .ap-frame{border:0;border-radius:.4cqi}.pf-laptop-base{background:linear-gradient(#d6cebf,#a69d8d);border-radius:0 0 3cqi 3cqi/0 0 1.8cqi 1.8cqi;height:2.2cqi;position:relative;box-shadow:inset 0 1px #fff9,0 24px 40px -16px #16241d80}.pf-laptop-base:before{content:"";background:#8f8677;border-radius:0 0 1cqi 1cqi;width:16cqi;height:.8cqi;margin-left:-8cqi;position:absolute;top:0;left:50%}.pf-devices.is-cluster{grid-template-columns:minmax(0,.8fr) minmax(0,3.4fr) minmax(0,.8fr);gap:0}.pf-dev-side{z-index:2}.pf-dev-tilt{position:relative}.pf-dev-side.is-left{margin:0 -52% 0 52%}.pf-dev-side.is-right{margin:0 52% 0 -52%}.pf-dev-side.is-left .pf-dev-tilt{transform:translateY(-14%)rotate(-7deg)}.pf-dev-side.is-right .pf-dev-tilt{transform:translateY(-14%)rotate(6deg)}.pf-dev-side .pf-phone-body{box-shadow:inset 0 0 0 1.5px #4a504c, 0 0 0 5px var(--surface), 0 34px 50px -16px #16241d99}.pf-cap{justify-content:center;gap:2px var(--space-2);color:var(--ink-muted);text-align:center;flex-wrap:wrap;font-size:14px;line-height:1.57;display:flex}.pf-cap a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:4px;font-weight:600;transition:text-decoration-color .15s}.pf-cap a:hover{color:var(--ink);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.pf-back:hover{color:var(--forest)}.pf-root .ap-footer-links a:hover,.pf-root .ap-nav a:hover{color:var(--ink)}.pf-cards{gap:var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pf-cards-3{gap:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.pf-two{gap:var(--space-16);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;display:grid}.pf-sub{margin:0 0 var(--space-6);font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-size:24px;font-weight:500;line-height:1.33}.pf-chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pf-more{margin-top:var(--space-12)}.pf-small{margin:var(--space-4) 0 0;color:var(--ink-muted);font-size:14px;line-height:1.57}.pf-tabs{gap:var(--space-3);margin:0 0 var(--space-8);flex-wrap:wrap;padding:0;list-style:none;display:flex}.pf-tab{height:48px;padding:0 var(--space-6);border-radius:var(--radius-pill);border:1px solid var(--line-strong);color:var(--ink);font:600 15px/20px var(--font-sans);white-space:nowrap;cursor:pointer;background:0 0;transition:background-color .15s,border-color .15s,color .15s}.pf-tab:hover{background:var(--forest-soft);border-color:var(--forest)}.pf-tab.is-on{background:var(--forest);border-color:var(--forest);color:var(--on-forest)}.pf-tab:focus-visible{outline:2px solid var(--tomato-ink);outline-offset:3px}.pf-board-foot{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.pf-feature{gap:var(--space-12);padding:var(--space-12) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;display:grid}.pf-feature-meta{margin:0 0 var(--space-2);font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.pf-feature-title{font-family:var(--font-display);font-variation-settings:"SOFT" 50;font-weight:500;font-size:var(--fs-heading-2);margin:0;line-height:1.25}.pf-feature-text{margin:var(--space-4) 0 var(--space-6);max-width:52ch;color:var(--ink-muted)}.pf-events{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.pf-event{gap:var(--space-8);padding:var(--space-6) 0;border-bottom:1px solid var(--line);grid-template-columns:220px minmax(0,1fr);display:grid}.pf-event-when{font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);padding-top:4px}.pf-event-title{font-family:var(--font-display);font-variation-settings:"SOFT" 50;margin:0;font-size:24px;font-weight:500;line-height:1.33}.pf-event-text{margin:var(--space-1) 0 0;max-width:60ch;color:var(--ink-muted)}.pf-stack-group+.pf-stack-group{margin-top:var(--space-6)}.pf-stack-label{margin:0 0 var(--space-2);font:600 13px/20px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.pf-langs{margin:var(--space-2) 0 0;color:var(--ink)}.pf-root[data-font=wonky]{--pf-dvs:"SOFT" 100, "WONK" 1;--pf-dw:600}.pf-root[data-font=bricolage]{--font-display:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-sans:"DM Sans", "Segoe UI", system-ui, sans-serif;--pf-dw:700;--pf-dls:-.03em}.pf-root[data-font=fredoka]{--font-display:"Fredoka", "Segoe UI", system-ui, sans-serif;--font-sans:"Nunito", "Segoe UI", system-ui, sans-serif;--pf-dw:600;--pf-dls:-.01em}.pf-root[data-font=shantell]{--font-display:"Shantell Sans", "Segoe Print", system-ui, sans-serif;--pf-dw:700;--pf-dls:-.02em}.pf-root :is(.ap-display-xl,.ap-display-lg,.ap-h1,.ap-h2,.ap-h3,.ap-prose h2,.ap-prose h3,.ap-fact dd,.ap-wordmark,.ap-tl-title,.ap-footer-mail,.ap-card-title,.pf-sub,.pf-feature-title,.pf-event-title){font-variation-settings:var(--pf-dvs,"SOFT" 50);font-weight:var(--pf-dw,500)}.pf-root :is(.ap-display-xl,.ap-display-lg){letter-spacing:var(--pf-dls,-.02em)}.pf-root .pf-stage-word{font-variation-settings:var(--pf-dvs,"SOFT" 50), "opsz" 144;font-weight:calc(var(--pf-dw,500) + 100)}.pf-root:not([data-paper=plain]),.pf-root:not([data-paper=plain]) .pf-band{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .11 0 0 0 0 .16 0 0 0 0 .13 0 0 0 .11 0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23g)'/%3E%3C/svg%3E");background-size:220px 220px}.pf-stage{isolation:isolate}.pf-hero>:not(.pf-stage):not(.pf-doodle),.pf-stage~*,.pf-case-head{z-index:2;position:relative}.pf-stage:before{content:"";z-index:-1;pointer-events:none;position:absolute;top:52%;left:50%}.pf-root[data-paper=spotlight] .pf-stage:before{background:radial-gradient(closest-side, var(--surface-raised) 0%, var(--surface-raised) 35%, transparent 100%);width:1700px;height:1100px;margin:-550px 0 0 -850px}.pf-root[data-paper=sunburst] .pf-stage:before{background:repeating-conic-gradient(from 0deg, var(--surface-sunken) 0deg 6deg, transparent 6deg 12deg);width:2400px;height:2400px;margin:-1200px 0 0 -1200px;animation:180s linear infinite pf-spin;-webkit-mask-image:radial-gradient(closest-side,#000 22%,#0000 62%);mask-image:radial-gradient(closest-side,#000 22%,#0000 62%)}.pf-root[data-paper=rings] .pf-stage:before{background:repeating-radial-gradient(circle, transparent 0 54px, var(--line) 54px 56px);width:2000px;height:2000px;margin:-1000px 0 0 -1000px;animation:7s ease-in-out infinite alternate pf-breathe;-webkit-mask-image:radial-gradient(closest-side,#000 25%,#0000 70%);mask-image:radial-gradient(closest-side,#000 25%,#0000 70%)}@keyframes pf-spin{to{transform:rotate(360deg)}}@keyframes pf-breathe{0%{transform:scale(1)}to{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.pf-stage:before{animation:none!important}}.pf-border-word{z-index:0;font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;color:var(--line-strong);pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;font-size:clamp(76px,15vw,230px);font-weight:700;line-height:.8;position:absolute;top:0;transform:translateY(-52%)}.pf-border-word.is-left{left:var(--space-16)}.pf-border-word.is-right{right:var(--space-16)}.pf-border-word.is-center{left:50%;transform:translate(-50%,-52%)}.pf-border-word.is-filled{color:var(--surface-sunken);-webkit-text-stroke:0;opacity:1}.pf-root[data-doodles=off] .pf-border-word{display:none}@media (width<=900px){.pf-border-word.is-left{left:var(--space-4)}.pf-border-word.is-right{right:var(--space-4)}}.pf-section,.pf-hero,.pf-dood-host,.pf-section>.pf-wrap{position:relative}.pf-section,main{overflow-x:clip}.pf-doodle{z-index:0;pointer-events:none;fill:none;stroke:var(--line-strong);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;opacity:.7;position:absolute;overflow:visible}.pf-doodle.is-forest{stroke:var(--forest);opacity:.55}.pf-doodle .fill{fill:var(--forest-soft)}.pf-root[data-doodles=off] .pf-doodle,.pf-root[data-doodles=off] .pf-note,.pf-root[data-doodles=off] .pf-sticker{display:none}.pf-hero>:not(.pf-doodle),.pf-section>.pf-wrap>:not(.pf-doodle){z-index:1;position:relative}.pf-hl{color:var(--tomato-ink)}.pf-note{z-index:3;font-family:var(--font-chalk);color:var(--forest);-webkit-text-stroke:10px var(--surface);paint-order:stroke fill;white-space:nowrap;pointer-events:none;margin:0;font-weight:700;line-height:.95;position:absolute}.pf-note-xl{font-size:clamp(44px,6vw,92px);transform:rotate(-6deg)}.pf-note-md{font-size:clamp(28px,2.6vw,40px);transform:rotate(-4deg)}.pf-note svg{fill:none;stroke:var(--forest);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;-webkit-text-stroke:0;margin-top:4px;display:block;overflow:visible}.pf-sticker{z-index:3;border-radius:var(--radius-pill);background:var(--tomato-fill);color:var(--on-tomato);font:700 24px/1.1 var(--font-chalk);box-shadow:0 0 0 4px var(--surface);pointer-events:none;padding:2px 14px 4px;position:absolute;transform:rotate(8deg)}.pf-dev,.pf-feature-media{position:relative}@media (width<=900px){.pf-doodle.sm-hide,.pf-note.sm-hide{display:none}.pf-doodle{transform:scale(.75)}.pf-note{-webkit-text-stroke-width:7px}}.pf-back{align-items:center;gap:var(--space-2);min-height:44px;color:var(--forest);font:600 15px/20px var(--font-sans);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:5px;display:inline-flex}.pf-back:hover{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.pf-case-head{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-8);flex-wrap:wrap;display:flex}.pf-case-intro{max-width:56ch;margin:var(--space-12) auto 0;text-align:center;color:var(--ink-muted);font-size:20px;line-height:1.6}.pf-case-tags{justify-content:center;gap:var(--space-2);margin-top:var(--space-6);flex-wrap:wrap;display:flex}@media (width<=900px){.pf-wrap{padding:0 var(--space-6)}.pf-section{padding:var(--space-24) 0}.pf-gap{margin-bottom:var(--space-12)}.pf-hero{padding-top:var(--space-8)}.pf-stage{margin-top:var(--space-16)}.pf-devices,.pf-devices.is-two{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.pf-dev-main{order:-1;grid-column:1/-1}.pf-devices.is-two .pf-dev:not(.pf-dev-main){grid-column:1/-1}.pf-devices.is-cluster{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.pf-dev-side.is-left,.pf-dev-side.is-right{margin:var(--space-4) 0 0}.pf-dev-side.is-left .pf-dev-tilt{transform:rotate(-4deg)}.pf-dev-side.is-right .pf-dev-tilt{transform:rotate(4deg)}.pf-cards,.pf-cards-3,.pf-two{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.pf-feature{gap:var(--space-6);padding:var(--space-8) 0;grid-template-columns:minmax(0,1fr)}.pf-feature-media{order:-1}.pf-event{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}.pf-tabs{margin-inline:calc(var(--space-6) * -1);padding-inline:var(--space-6);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.pf-tab{flex:none}}.pf-root ::selection{background:var(--tomato);color:#fff}.pf-root .ap-btn-primary{background:var(--tomato-fill);border-color:var(--tomato-fill);color:var(--on-tomato)}.pf-root .ap-btn-primary:hover{background:var(--tomato-hover);border-color:var(--tomato-hover)}.pf-root .ap-btn-primary:hover .ap-btn-label{-webkit-text-decoration-color:var(--on-tomato);-webkit-text-decoration-color:var(--on-tomato);-webkit-text-decoration-color:var(--on-tomato);text-decoration-color:var(--on-tomato)}.pf-root .ap-btn-primary:active{background:var(--ink);border-color:var(--ink);color:var(--surface)}.pf-root .ap-card.is-linked:hover{border-color:var(--tomato)}.pf-root .ap-footer-mail{-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);-webkit-text-decoration-color:var(--tomato);text-decoration-color:var(--tomato)}.pf-root .ap-footer-mail:hover{color:var(--tomato-ink)}.pf-nav a[aria-current=true]:before{content:"";border-radius:var(--radius-pill);background:var(--tomato);width:7px;height:7px;margin-right:8px}.pf-sticker.is-forest{background:var(--forest);color:var(--on-forest)}.pf-note-xl{color:var(--tomato-ink)}.pf-dot{color:var(--tomato);-webkit-text-stroke:0}.pf-doodle.is-tomato{stroke:var(--tomato);opacity:.9}.pf-nav{position:relative}.pf-nav-mark{width:100px;height:9px;color:var(--tomato);transform:translateX(var(--mark-x)) scaleX(var(--mark-s));transform-origin:0;opacity:0;pointer-events:none;transition:opacity .2s;position:absolute;bottom:3px;left:0}.pf-nav-mark.is-on{opacity:1}.pf-nav-mark.is-sliding{transition:opacity .2s,transform .38s cubic-bezier(.2,.8,.2,1)}.pf-nav-mark svg{width:100%;height:100%;display:block;overflow:visible}.pf-nav-mark path{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;vector-effect:non-scaling-stroke}.pf-menu-btn{position:relative}.pf-read-ring{pointer-events:none;width:calc(100% + 2px);height:calc(100% + 2px);position:absolute;inset:-1px;overflow:visible;transform:rotate(-90deg)}.pf-read-ring circle{fill:none;stroke:var(--tomato);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.pf-menu-btn.is-read{animation:.6s ease-out pf-nudge}@keyframes pf-nudge{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}50%{transform:rotate(8deg)}75%{transform:rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.pf-nav-mark.is-sliding{transition:opacity .2s}.pf-menu-btn.is-read{animation:none}}.pf-bw{filter:url(#pf-outline);will-change:transform;display:inline-block}.pf-border-word .pf-dot,.pf-stage-word .pf-dot{transform-origin:50% 85%;display:inline-block}.pf-outline-ink{flood-color:var(--line-strong);flood-opacity:.55}}@layer utilities{.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-2{bottom:calc(var(--spacing) * 2)}.left-2{left:calc(var(--spacing) * 2)}.col-span-full{grid-column:1/-1}.m-0{margin:calc(var(--spacing) * 0)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.contents{display:contents}.grid{display:grid}.inline-block{display:inline-block}.table{display:table}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.min-h-screen{min-height:100vh}.max-w-\[15ch\]{max-width:15ch}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-mt-6{scroll-margin-top:calc(var(--spacing) * 6)}.place-items-center{place-items:center}.rounded-full{border-radius:3.40282e38px}.border-0{border-style:var(--tw-border-style);border-width:0}.bg-chalkboard-frame\/85{background-color:var(--chalkboard-frame)}@supports (color:color-mix(in lab, red, red)){.bg-chalkboard-frame\/85{background-color:color-mix(in oklab, var(--chalkboard-frame) 85%, transparent)}}.bg-surface{background-color:var(--surface)}.font-sans{font-family:var(--font-sans)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-chalk{color:var(--chalk)}.text-ink{color:var(--ink)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-chalkboard-frame:hover{background-color:var(--chalkboard-frame)}}}:root{--surface:#eee5d4;--surface-raised:#f8f3ea;--surface-sunken:#e3d7c2;--line:#d2c3a8;--line-strong:#7d7260;--ink:#1d2a22;--ink-muted:#545c52;--forest:#1d4a35;--on-forest:#f6f1e7;--forest-soft:#d6e2d6;--tomato:#f2462e;--tomato-ink:#bb331d;--tomato-fill:#bb331d;--on-tomato:#fbf3ea;--tomato-hover:#9c2816;--chalkboard:#1e3b2d;--chalkboard-frame:#16241d;--chalk:#efeadf;--chalk-muted:#b4c0b3;--chalk-tomato:#f28d77;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--space-32:128px;--space-40:160px;--measure-text:68ch;--measure-page:1200px;--fs-display-xl:clamp(48px, 6vw + 26px, 88px);--fs-display-lg:clamp(40px, 4vw + 26px, 64px);--fs-heading-1:clamp(32px, 2vw + 24px, 44px);--fs-heading-2:clamp(26px, 1vw + 22px, 32px);--fs-chalk-title:clamp(36px, 3vw + 24px, 52px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--surface:#141a16;--surface-raised:#1c241f;--surface-sunken:#0f1411;--line:#34413a;--line-strong:#6a786e;--ink:#efe8da;--ink-muted:#aeb5a9;--forest:#8fc3a3;--on-forest:#122019;--forest-soft:#22342a;--tomato-ink:#f2563d;--tomato-fill:#d93a22;--on-tomato:#fff7f2;--tomato-hover:#b92c18;--chalkboard:#263d31;--chalkboard-frame:#56735f;--shadow-card-hover:0 18px 40px -24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--surface:#141a16;--surface-raised:#1c241f;--surface-sunken:#0f1411;--line:#34413a;--line-strong:#6a786e;--ink:#efe8da;--ink-muted:#aeb5a9;--forest:#8fc3a3;--on-forest:#122019;--forest-soft:#22342a;--tomato-ink:#f2563d;--tomato-fill:#d93a22;--on-tomato:#fff7f2;--tomato-hover:#b92c18;--chalkboard:#263d31;--chalkboard-frame:#56735f;--shadow-card-hover:0 18px 40px -24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
