/*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-outline-style:solid;--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{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--rd-font-sans);--default-mono-font-family:var(--rd-font-mono)}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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]){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;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:where(:not(iframe)){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}html{font-family:var(--rd-font-sans);background:var(--rd-bg);color:var(--rd-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-feature-settings:"liga" 1, "calt" 1}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-size:var(--rd-text-base);line-height:var(--rd-leading-base);margin:0;overflow-x:clip}h1,h2,h3,h4{font-weight:var(--rd-weight-semibold);text-wrap:balance}p{text-wrap:pretty}button{cursor:pointer}::selection{background:var(--rd-selection)}:focus-visible{outline:2px solid var(--rd-focus-ring);outline-offset:2px}:focus:not(:focus-visible){outline:none}code,kbd,pre,samp,.mono{font-family:var(--rd-font-mono);font-feature-settings:normal}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer components{.t-display{font-size:var(--rd-text-display);line-height:var(--rd-leading-display);letter-spacing:var(--rd-tracking-display);font-weight:600}.t-5xl{font-size:var(--rd-text-5xl);line-height:var(--rd-leading-5xl);letter-spacing:var(--rd-tracking-5xl);font-weight:600}.t-4xl{font-size:var(--rd-text-4xl);line-height:var(--rd-leading-4xl);letter-spacing:var(--rd-tracking-4xl);font-weight:600}.t-3xl{font-size:var(--rd-text-3xl);line-height:var(--rd-leading-3xl);letter-spacing:var(--rd-tracking-3xl);font-weight:600}.t-2xl{font-size:var(--rd-text-2xl);line-height:var(--rd-leading-2xl);letter-spacing:var(--rd-tracking-2xl);font-weight:600}.t-xl{font-size:var(--rd-text-xl);line-height:var(--rd-leading-xl)}.t-lg{font-size:var(--rd-text-lg);line-height:var(--rd-leading-lg)}.t-sm{font-size:var(--rd-text-sm);line-height:var(--rd-leading-sm)}.t-xs{font-size:var(--rd-text-xs);line-height:var(--rd-leading-xs)}.muted{color:var(--rd-text-muted)}.faint{color:var(--rd-text-subtle)}.fg{color:var(--rd-text)}.medium{font-weight:500}.semibold{font-weight:600}.lead{font-size:var(--rd-text-lg);line-height:var(--rd-leading-lg);color:var(--rd-text-muted);max-width:36rem}.link{color:var(--rd-accent-text);text-underline-offset:3px;text-decoration:underline 1px;-webkit-text-decoration-color:var(--rd-accent-text);-webkit-text-decoration-color:var(--rd-accent-text);text-decoration-color:var(--rd-accent-text)}@supports (color:color-mix(in lab, red, red)){.link{-webkit-text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent);-webkit-text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent);text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent)}}.link{transition:text-decoration-color var(--rd-duration-fast) var(--rd-ease-standard);border-radius:var(--rd-radius-xs)}.link:hover{text-decoration-color:currentColor;text-decoration-thickness:2px}.link-quiet{color:var(--rd-text-muted);transition:color var(--rd-duration-fast) var(--rd-ease-standard)}.link-quiet:hover{color:var(--rd-text)}.todo{font-family:var(--rd-font-mono);color:var(--rd-text-subtle);background:var(--rd-bg-subtle);border:1px dashed var(--rd-border-strong);border-radius:var(--rd-radius-sm);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:.05em .4em;font-size:.82em}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.icon-16{width:16px;height:16px}.icon-24{width:24px;height:24px}.brand{fill:currentColor;flex:none;width:20px;height:20px}.brand-16{width:16px;height:16px}.measure{max-width:var(--rd-container-measure)}.section{padding-block:var(--rd-section)}.section+.section{border-top:1px solid var(--rd-border)}.section--tight{padding-block:clamp(3rem,2rem + 4vw,5rem)}.stack>*+*{margin-top:var(--stack,1rem)}.rail-grid{gap:1.5rem var(--rd-grid-gap);display:grid}.rail-grid>*{min-width:0}.rail :is(h2,h3){font-size:var(--rd-text-2xl);line-height:var(--rd-leading-2xl);letter-spacing:var(--rd-tracking-2xl)}.rail p{color:var(--rd-text-muted);font-size:var(--rd-text-sm);max-width:24rem;margin-top:.5rem}@media (width>=64rem){.rail-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.rail{grid-column:1/span 3}.rail-sticky{top:calc(var(--rd-header-h) + 2rem);position:sticky}.rail-content{grid-column:4/span 9;min-width:0}.rail-content--narrow{grid-column:5/span 7}}.skip-link{z-index:var(--rd-z-skip);background:var(--rd-surface-raised);height:2.75rem;color:var(--rd-text);border-radius:var(--rd-radius-md);font-weight:500;font-size:var(--rd-text-sm);align-items:center;padding-inline:1rem;display:inline-flex;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{box-shadow:var(--rd-shadow-overlay);transform:none}main:focus{outline:none}.site-header{z-index:var(--rd-z-header);background:var(--rd-bg);transition:border-color var(--rd-duration-base) var(--rd-ease-standard);border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-scrolled]{border-bottom-color:var(--rd-border)}.header-inner{height:var(--rd-header-h);justify-content:space-between;align-items:center;gap:1rem;display:flex}.wordmark{font-weight:600;font-size:var(--rd-text-base);letter-spacing:-.01em;border-radius:var(--rd-radius-xs);align-items:center;min-height:2.75rem;display:inline-flex}.nav{align-items:center;gap:.25rem;display:none}.nav a{height:2.75rem;font-size:var(--rd-text-sm);color:var(--rd-text-muted);border-radius:var(--rd-radius-md);text-underline-offset:6px;transition:color var(--rd-duration-fast) var(--rd-ease-standard), text-decoration-color var(--rd-duration-fast) var(--rd-ease-standard);align-items:center;padding-inline:.75rem;font-weight:500;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:2px;display:inline-flex}.nav a:hover{color:var(--rd-text)}.nav a:is([aria-current=page],[aria-current=true]){color:var(--rd-text);-webkit-text-decoration-color:var(--rd-accent);-webkit-text-decoration-color:var(--rd-accent);text-decoration-color:var(--rd-accent)}.header-actions{align-items:center;gap:.25rem;display:flex}.header-actions .header-search{display:none}@media (width>=48rem){.nav{display:flex}.menu-button{display:none!important}.header-actions .header-search{display:inline-flex}}.menu-button[aria-expanded=false] .icon-close,.menu-button[aria-expanded=true] .icon-menu,.theme-toggle .icon-sun{display:none}:root.dark .theme-toggle .icon-sun{display:block}:root.dark .theme-toggle .icon-moon{display:none}@media (prefers-color-scheme:dark){:root:not(.light) .theme-toggle .icon-sun{display:block}:root:not(.light) .theme-toggle .icon-moon{display:none}}.mobile-menu{background:var(--rd-surface-raised);border-bottom:1px solid var(--rd-border);box-shadow:var(--rd-shadow-overlay);max-height:calc(100dvh - var(--rd-header-h));inset-inline:0;position:absolute;top:100%;overflow-y:auto}.mobile-menu[data-open]{animation:menu-in var(--rd-duration-base) var(--rd-ease-enter)}@keyframes menu-in{0%{opacity:0;transform:translateY(-8px)}}.mobile-menu ul a{height:3.5rem;font-size:var(--rd-text-2xl);letter-spacing:var(--rd-tracking-2xl);border-bottom:1px solid var(--rd-border);align-items:center;font-weight:600;display:flex}.mobile-menu ul a:is([aria-current=page],[aria-current=true]){-webkit-text-decoration:underline 2px var(--rd-accent);-webkit-text-decoration:underline 2px var(--rd-accent);text-decoration:underline 2px var(--rd-accent);text-underline-offset:8px}.mobile-menu .menu-footer{padding-block:1rem 1.5rem}@media (width>=48rem){.mobile-menu{display:none!important}}.btn{border-radius:var(--rd-radius-md);height:2.75rem;font-size:var(--rd-text-sm);white-space:nowrap;transition:background-color var(--rd-duration-fast) var(--rd-ease-standard), border-color var(--rd-duration-fast) var(--rd-ease-standard), color var(--rd-duration-fast) var(--rd-ease-standard);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding-inline:1rem;font-weight:500;line-height:1;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--sm{height:2.25rem;padding-inline:.75rem}.btn--lg{height:3rem;font-size:var(--rd-text-base);padding-inline:1.25rem}.btn--primary{background:var(--rd-accent);color:var(--rd-accent-fg)}.btn--primary:hover{background:var(--rd-accent-hover)}.btn--secondary{background:var(--rd-surface);color:var(--rd-text);border-color:var(--rd-border-strong)}.btn--secondary:hover{background:var(--rd-bg-subtle);border-color:var(--rd-border-input)}.btn--ghost{color:var(--rd-text-muted)}.btn--ghost:hover{color:var(--rd-text);background:var(--rd-bg-subtle)}.btn--icon{width:2.75rem;padding:0}.btn--icon.btn--sm{width:2.25rem}.btn-row{flex-wrap:wrap;gap:.75rem;display:flex}@media (width<=30rem){.btn-row--stack{flex-direction:column;align-items:stretch}}.badge{border-radius:var(--rd-radius-sm);height:1.5rem;font-size:var(--rd-text-xs);background:var(--rd-bg-subtle);color:var(--rd-text-muted);border:1px solid var(--rd-border);white-space:nowrap;align-items:center;gap:.25rem;padding-inline:.5rem;font-weight:500;line-height:1;display:inline-flex}.badge--accent{background:var(--rd-accent-subtle);color:var(--rd-accent-text);border-color:var(--rd-accent-border)}.badge-list,.tag-list{flex-wrap:wrap;gap:.375rem;display:flex}.tag{border-radius:var(--rd-radius-sm);border:1px solid var(--rd-border);height:1.5rem;font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-muted);transition:border-color var(--rd-duration-fast), color var(--rd-duration-fast);align-items:center;padding-inline:.5rem;display:inline-flex}.tag:before{content:"#";color:var(--rd-text-subtle);margin-right:.05em}a.tag:hover{border-color:var(--rd-border-strong);color:var(--rd-text)}.meta{font-family:var(--rd-font-mono);font-size:var(--rd-text-sm);color:var(--rd-text-subtle);flex-wrap:wrap;align-items:center;gap:.25rem 1rem;display:flex}.availability{font-size:var(--rd-text-sm);color:var(--rd-text-muted);align-items:center;gap:.5rem;display:inline-flex}.availability:before{content:"";background:var(--rd-success);border-radius:999px;flex:none;width:8px;height:8px}.hero{padding-block:clamp(4rem,2rem + 8vw,9rem) clamp(4rem,2.5rem + 5vw,7rem)}.hero-intro{font-size:var(--rd-text-sm);color:var(--rd-text-muted);margin-bottom:1.25rem}.hero h1{max-width:17ch}.hero .lead{max-width:38rem;margin-top:1.5rem}.hero .btn-row{margin-top:2.25rem}.hero .availability{margin-top:1.5rem}.caret{vertical-align:-.04em;background:var(--rd-accent);border-radius:1px;width:.5em;height:.78em;margin-left:.1em;display:inline-block}@keyframes rd-caret{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:no-preference){.caret{animation:1s step-end .3s 3 rd-caret}}.page-head{padding-block:clamp(3.5rem,2rem + 6vw,7rem) clamp(2.5rem,1.5rem + 3vw,4rem)}.page-head h1{max-width:20ch}.page-head .lead{margin-top:1.25rem}.page-head .btn-row{margin-top:2rem}.do-grid{gap:0;display:grid}.do-item{border-top:1px solid var(--rd-border);flex-direction:column;gap:.75rem;padding-block:1.75rem;display:flex}.do-item h3{font-size:var(--rd-text-xl)}.do-item p{color:var(--rd-text-muted)}.do-item .link{align-self:flex-start;margin-top:auto;padding-top:.25rem;font-weight:500}@media (width>=48rem){.do-grid{gap:var(--rd-grid-gap);grid-template-columns:repeat(3,minmax(0,1fr))}.do-item{border-top-width:2px;border-top-color:var(--rd-border-strong)}}.app-strip{gap:1.5rem var(--rd-grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=48rem){.app-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}.app-tile{flex-direction:column;gap:.75rem;display:flex;position:relative}.app-tile .stage{border-radius:var(--rd-radius-lg);background:var(--rd-bg-subtle);border:1px solid var(--rd-border);aspect-ratio:4/5;justify-content:center;padding:1.25rem 1.25rem 0;display:flex;overflow:hidden}.app-tile .stage img{border:1px solid var(--rd-border-strong);border-bottom:0;border-radius:1.25rem 1.25rem 0 0;align-self:flex-start;width:78%;height:auto}.app-tile .stage--framed img{border:0;border-radius:0;width:86%}.app-tile h3{font-size:var(--rd-text-base)}.app-tile h3 a:after{content:"";border-radius:var(--rd-radius-lg);position:absolute;inset:0}.app-tile h3 a:focus-visible{outline:none}.app-tile h3 a:focus-visible:after{outline:2px solid var(--rd-focus-ring);outline-offset:2px}.app-tile p{font-size:var(--rd-text-sm);color:var(--rd-text-muted);margin-top:-.5rem}.app-tile:hover h3{color:var(--rd-accent-text)}.featured-list{gap:var(--rd-grid-gap);display:grid}.featured{background:var(--rd-surface);border:1px solid var(--rd-border);border-radius:var(--rd-radius-lg);display:grid;overflow:hidden}.featured .stage{border-radius:var(--rd-radius-xl);background:var(--rd-bg-subtle);justify-content:center;align-items:flex-start;max-height:26rem;margin:.5rem;padding:2rem 1.5rem 0;display:flex;overflow:hidden}.featured .stage img{border:1px solid var(--rd-border-strong);border-bottom:0;border-radius:2rem 2rem 0 0;width:min(15rem,70%)}.featured .stage--framed img{border:0;border-radius:0;width:min(16.5rem,78%);margin-bottom:-8%}.featured .body{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.featured h3{font-size:var(--rd-text-2xl);line-height:var(--rd-leading-2xl);letter-spacing:var(--rd-tracking-2xl)}.featured .tagline{font-size:var(--rd-text-lg);color:var(--rd-text-muted);margin-top:-.5rem}.featured .desc{color:var(--rd-text-muted);max-width:34rem}.featured .facts{font-size:var(--rd-text-sm);grid-template-columns:auto 1fr;gap:.375rem 1.25rem;padding-block:.25rem;display:grid}.featured .facts dt{font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-subtle);padding-top:.15rem}.featured .facts dd{color:var(--rd-text)}.featured .btn-row{margin-top:auto;padding-top:.5rem}@media (width>=48rem){.featured{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.featured .body{grid-area:1/1;padding:2rem}.featured .stage{grid-area:1/2;min-height:24rem;max-height:none;padding-top:2.5rem}.featured--reverse{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.featured--reverse .body{grid-column:2}.featured--reverse .stage{grid-column:1}}.rows{border-bottom:1px solid var(--rd-border)}.row{border-top:1px solid var(--rd-border);gap:.75rem 1.5rem;padding-block:1.25rem;display:grid;position:relative}.row .name{align-self:start;align-items:center;gap:.5rem;min-height:1.75rem;font-weight:600;display:inline-flex}.row .name .icon{color:var(--rd-text-subtle)}.row .desc{color:var(--rd-text-muted)}.row .thumb{border-radius:var(--rd-radius-md);border:1px solid var(--rd-border);background:var(--rd-bg-subtle);aspect-ratio:16/10;object-fit:cover;object-position:top left;width:100%}.row .side{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.row .stretched:after{content:"";position:absolute;inset:0}.row .stretched:focus-visible{outline:none}.row .stretched:focus-visible:after{outline:2px solid var(--rd-focus-ring);outline-offset:-2px;border-radius:var(--rd-radius-sm)}.row .side,.row .copy-cmd{z-index:1;position:relative}.row:hover .name{color:var(--rd-accent-text)}@media (width>=48rem){.row{grid-template-columns:12rem minmax(0,1fr)}.row .side{grid-column:2}.row--thumb{grid-template-columns:12rem minmax(0,1fr) 11rem}.row--thumb .thumb{grid-area:1/3/span 2}}.copy-cmd{border:1px solid var(--rd-border);border-radius:var(--rd-radius-sm);background:var(--rd-bg-subtle);align-items:center;gap:.25rem;max-width:100%;height:2rem;padding-left:.625rem;display:inline-flex}.copy-cmd code{font-size:var(--rd-text-xs);color:var(--rd-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.copy-cmd code:before{content:"$ ";color:var(--rd-text-subtle)}.copy-cmd--plain code:before{content:none}.copy-cmd .btn{border-radius:var(--rd-radius-xs);width:1.875rem;height:1.875rem;padding:0}.post-list{border-bottom:1px solid var(--rd-border)}.post-item{border-top:1px solid var(--rd-border);gap:.375rem 2rem;padding-block:1.5rem;display:grid;position:relative}.post-item time{font-family:var(--rd-font-mono);font-size:var(--rd-text-sm);color:var(--rd-text-subtle);font-variant-numeric:tabular-nums;padding-top:.2rem}.post-item h3{font-size:var(--rd-text-xl);line-height:var(--rd-leading-xl);transition:color var(--rd-duration-fast)}.post-item h3 a:after{content:"";position:absolute;inset:0}.post-item h3 a:focus-visible{outline:none}.post-item h3 a:focus-visible:after{outline:2px solid var(--rd-focus-ring);outline-offset:-2px;border-radius:var(--rd-radius-sm)}.post-item:hover h3{color:var(--rd-accent-text)}.post-item .summary{color:var(--rd-text-muted);max-width:var(--rd-container-measure);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.25rem;display:-webkit-box;overflow:hidden}.post-item .post-meta{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.5rem;display:flex}.post-item .post-meta .tag{z-index:1;position:relative}@media (width>=48rem){.post-item{grid-template-columns:8rem minmax(0,1fr)}}.year-group+.year-group{margin-top:3.5rem}.pricing-grid{gap:var(--rd-grid-gap);display:grid}@media (width>=48rem){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.pricing-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.price-card{background:var(--rd-surface);border:1px solid var(--rd-border);border-radius:var(--rd-radius-lg);flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.price-card--highlight{border-color:var(--rd-accent-border);box-shadow:var(--rd-shadow-raised)}.price-card h3{font-size:var(--rd-text-lg)}.price-card .duration{font-family:var(--rd-font-mono);font-size:var(--rd-text-sm);color:var(--rd-text-subtle);align-items:center;gap:.375rem;margin-top:.25rem;display:inline-flex}.price{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.price .amount{font-size:var(--rd-text-5xl);letter-spacing:var(--rd-tracking-5xl);font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.price .amount--from{font-size:var(--rd-text-4xl)}.price .from{font-size:var(--rd-text-sm);color:var(--rd-text-muted)}.price .unit{font-family:var(--rd-font-mono);font-size:var(--rd-text-sm);color:var(--rd-text-subtle)}.price .on-request{font-size:var(--rd-text-2xl);letter-spacing:var(--rd-tracking-2xl);font-weight:600}.price-card .for{color:var(--rd-text-muted)}.check-list li{grid-template-columns:1.25rem 1fr;gap:.5rem;padding-block:.25rem;display:grid}.check-list .icon{color:var(--rd-text-subtle);width:18px;height:18px;margin-top:.15rem}.price-card .btn{margin-top:auto}.small-print{font-size:var(--rd-text-xs);color:var(--rd-text-subtle)}.service-grid{border-bottom:1px solid var(--rd-border);display:grid}.service{border-top:1px solid var(--rd-border);align-content:start;gap:.5rem;padding-block:1.75rem;display:grid}.service h3{font-size:var(--rd-text-xl);line-height:var(--rd-leading-xl)}.service p{color:var(--rd-text-muted)}@media (width>=48rem){.service-grid{column-gap:var(--rd-grid-gap);grid-template-columns:repeat(2,minmax(0,1fr))}}.lead-list{border-bottom:1px solid var(--rd-border)}.lead-list li{border-top:1px solid var(--rd-border);color:var(--rd-text-muted);padding-block:1.25rem}.lead-list strong{color:var(--rd-text);font-weight:600;font-size:var(--rd-text-lg);margin-bottom:.25rem;display:block}.topic-list{columns:1;column-gap:var(--rd-grid-gap)}.topic-list li{break-inside:avoid;border-top:1px solid var(--rd-border);padding-block:.625rem}@media (width>=48rem){.topic-list{columns:2}}.steps{counter-reset:step;display:grid}.steps li{border-top:1px solid var(--rd-border);grid-template-columns:2.5rem 1fr;align-content:start;gap:1rem;padding-block:1.25rem;display:grid}.steps li:before{counter-increment:step;content:counter(step);font-family:var(--rd-font-mono);font-size:var(--rd-text-sm);color:var(--rd-text-subtle);font-variant-numeric:tabular-nums;padding-top:.2rem}.steps h3{font-size:var(--rd-text-lg)}.steps p{color:var(--rd-text-muted);margin-top:.25rem}@media (width>=64rem){.steps--row{column-gap:var(--rd-grid-gap);grid-template-columns:repeat(4,minmax(0,1fr))}.steps--row li{border-top-width:2px;border-top-color:var(--rd-border-strong);grid-template-columns:1fr;gap:.75rem}}.faq{border-bottom:1px solid var(--rd-border)}.faq details{border-top:1px solid var(--rd-border)}.faq summary{font-size:var(--rd-text-lg);cursor:pointer;border-radius:var(--rd-radius-sm);justify-content:space-between;align-items:center;gap:1rem;padding-block:1.25rem;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .icon{color:var(--rd-text-subtle);transition:transform var(--rd-duration-base) var(--rd-ease-standard), color var(--rd-duration-fast)}.faq summary:hover .icon{color:var(--rd-accent-text)}.faq details[open] summary .icon{transform:rotate(45deg)}.faq .answer{color:var(--rd-text-muted);max-width:var(--rd-container-measure);padding-bottom:1.5rem}@supports (interpolate-size:allow-keywords){.faq{interpolate-size:allow-keywords}.faq details::details-content{block-size:0;transition:block-size var(--rd-duration-base) var(--rd-ease-standard), content-visibility var(--rd-duration-base) allow-discrete;overflow:hidden}.faq details[open]::details-content{block-size:auto}}.booking{background:var(--rd-surface);border:1px solid var(--rd-border);border-radius:var(--rd-radius-lg);overflow:hidden}.booking .facade{flex-direction:column;align-items:flex-start;gap:1rem;padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:flex}.booking .facade p{color:var(--rd-text-muted);max-width:34rem}.booking-fallback{font-size:var(--rd-text-sm);color:var(--rd-text-muted);margin-top:1rem}.callout{border-radius:var(--rd-radius-md);border:1px solid var(--rd-accent-border);border-left:2px solid var(--rd-accent);background:var(--rd-accent-subtle);color:var(--rd-text);grid-template-columns:1.25rem 1fr;gap:.75rem;padding:1rem;display:grid}.callout .icon{color:var(--rd-accent-text);margin-top:.125rem}.callout .title{font-weight:600}.callout--warning{background:var(--rd-warning-subtle);border-color:#0000;border-left-color:var(--rd-warning)}.callout--warning .icon{color:var(--rd-warning-text)}.callout--success{background:var(--rd-success-subtle);border-color:#0000;border-left-color:var(--rd-success)}.callout--success .icon{color:var(--rd-success-text)}.cta-band{background:var(--rd-bg-subtle);border-top:1px solid var(--rd-border);padding-block:var(--rd-section)}.cta-band .inner{align-items:end;gap:1.75rem;display:grid}.cta-band h2{font-size:var(--rd-text-3xl);line-height:var(--rd-leading-3xl);letter-spacing:var(--rd-tracking-3xl);max-width:18ch}.cta-band p{color:var(--rd-text-muted);max-width:34rem;margin-top:1rem}@media (width>=64rem){.cta-band .inner{column-gap:var(--rd-grid-gap);grid-template-columns:repeat(12,minmax(0,1fr))}.cta-band .text{grid-column:1/span 7}.cta-band .btn-row{grid-column:9/span 4;justify-content:flex-end}}.panel{background:var(--rd-surface);border:1px solid var(--rd-border);border-radius:var(--rd-radius-lg);padding:clamp(1.25rem,1rem + 1.5vw,2rem)}.follow{gap:2rem;display:grid}@media (width>=48rem){.follow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.feed-list a,.link-list a{border-top:1px solid var(--rd-border);transition:color var(--rd-duration-fast);align-items:center;gap:.75rem;padding-block:.75rem;display:flex}.feed-list li:last-child a,.link-list li:last-child a{border-bottom:1px solid var(--rd-border)}.feed-list a:hover,.link-list a:hover{color:var(--rd-accent-text)}.feed-list .icon,.link-list .brand{color:var(--rd-text-subtle)}.feed-list .grow,.link-list .grow{flex:1;min-width:0}.feed-list small,.link-list small{font-size:var(--rd-text-sm);color:var(--rd-text-muted);display:block}.feed-list .icon-16,.link-list .icon-16{color:var(--rd-text-subtle)}.h-label{font-size:var(--rd-text-sm);color:var(--rd-text);margin-bottom:.5rem;font-weight:500}.post-head{padding-block:clamp(2.5rem,1.5rem + 4vw,5rem) 2rem}.post-head .back{font-size:var(--rd-text-sm);align-items:center;gap:.25rem;min-height:2.75rem;margin-bottom:1.5rem;display:inline-flex}.post-head h1{max-width:24ch}.post-head .meta{margin-top:1.25rem}.post-head .tag-list{margin-top:1rem}.cover{border-radius:var(--rd-radius-lg);border:1px solid var(--rd-border);width:100%;margin-top:2.5rem}.post-layout{gap:2rem var(--rd-grid-gap);padding-bottom:var(--rd-section);display:grid}@media (width>=64rem){.post-layout{grid-template-columns:repeat(12,minmax(0,1fr))}.post-layout .prose{grid-column:1/span 8}.post-layout .toc{grid-area:1/10/auto/span 3}.post-layout .toc-desktop{align-self:start}}@media (width>=80rem){.post-layout .prose{grid-column:2/span 7}}.toc-desktop{display:none}@media (width>=64rem){.toc-desktop{top:calc(var(--rd-header-h) + 2rem);display:block;position:sticky}.toc-mobile{display:none}}.toc-title{font-size:var(--rd-text-sm);margin-bottom:.75rem;font-weight:500}.toc ol{border-left:1px solid var(--rd-border)}.toc ol a{font-size:var(--rd-text-sm);color:var(--rd-text-muted);transition:color var(--rd-duration-fast);border-left:2px solid #0000;margin-left:-1px;padding:.3rem 0 .3rem .875rem;display:block}.toc ol a:hover{color:var(--rd-text)}.toc ol a[aria-current=location]{color:var(--rd-accent-text);border-left-color:var(--rd-accent)}.toc-mobile{border:1px solid var(--rd-border);border-radius:var(--rd-radius-md)}.toc-mobile summary{height:2.75rem;font-size:var(--rd-text-sm);cursor:pointer;justify-content:space-between;align-items:center;padding-inline:1rem;font-weight:500;list-style:none;display:flex}.toc-mobile summary::-webkit-details-marker{display:none}.toc-mobile[open] summary .icon{transform:rotate(180deg)}.toc-mobile ol{margin:0 1rem 1rem}.prose{font-size:var(--rd-text-prose);line-height:var(--rd-leading-prose);max-width:var(--rd-container-measure);min-width:0}.prose>*+*{margin-top:1.25em}.prose h2{font-size:var(--rd-text-3xl);line-height:var(--rd-leading-3xl);letter-spacing:var(--rd-tracking-3xl);margin-top:2.2em}.prose h3{font-size:var(--rd-text-2xl);line-height:var(--rd-leading-2xl);letter-spacing:var(--rd-tracking-2xl);margin-top:1.8em}.prose h2+*,.prose h3+*{margin-top:.6em}.prose :is(h2,h3){scroll-margin-top:calc(var(--rd-header-h) + 1.5rem);position:relative}.prose .anchor{vertical-align:middle;color:var(--rd-text-subtle);opacity:0;transition:opacity var(--rd-duration-fast);border-radius:var(--rd-radius-xs);margin-left:.35rem;display:inline-flex}.prose :is(h2,h3):hover .anchor,.prose .anchor:focus-visible{opacity:1}.prose a:not(.anchor):not(.btn):not(.post-nav a){color:var(--rd-accent-text);text-underline-offset:3px;text-decoration:underline 1px;-webkit-text-decoration-color:var(--rd-accent-text);-webkit-text-decoration-color:var(--rd-accent-text);text-decoration-color:var(--rd-accent-text)}@supports (color:color-mix(in lab, red, red)){.prose a:not(.anchor):not(.btn):not(.post-nav a){-webkit-text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent);-webkit-text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent);text-decoration-color:color-mix(in oklch, var(--rd-accent-text) 45%, transparent)}}.prose a:not(.anchor):not(.btn):not(.post-nav a){border-radius:var(--rd-radius-xs)}.prose a:not(.anchor):not(.btn):not(.post-nav a):hover{text-decoration-color:currentColor;text-decoration-thickness:2px}.prose ul,.prose ol{padding-left:1.5rem}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li::marker{color:var(--rd-text-subtle)}.prose li+li{margin-top:.4em}.prose strong{font-weight:600}.prose blockquote{border-left:2px solid var(--rd-border-strong);color:var(--rd-text-muted);padding-left:1.25rem}.prose blockquote cite{font-style:normal;font-size:var(--rd-text-sm);color:var(--rd-text-subtle);margin-top:.5rem;display:block}.prose :not(pre)>code{background:var(--rd-bg-subtle);border:1px solid var(--rd-border);border-radius:var(--rd-radius-xs);padding:.1em .3em;font-size:.875em}.prose figure img{border-radius:var(--rd-radius-lg);border:1px solid var(--rd-border);width:100%}.prose figcaption{font-size:var(--rd-text-sm);color:var(--rd-text-subtle);margin-top:.5rem;line-height:1.5}.prose hr{border:0;border-top:1px solid var(--rd-border);margin-block:3rem}.prose .table-wrap{overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:var(--rd-text-sm);font-variant-numeric:tabular-nums;line-height:1.5}.prose th{text-align:left;color:var(--rd-text-muted);background:var(--rd-bg-subtle);font-weight:500}.prose th,.prose td{border-bottom:1px solid var(--rd-border);padding:.5rem .75rem}.code{border:1px solid var(--rd-border);border-radius:var(--rd-radius-md);background:var(--rd-bg-subtle);overflow:hidden}.code .code-bar{border-bottom:1px solid var(--rd-border);justify-content:space-between;align-items:center;height:2.25rem;padding-left:.75rem;display:flex}.code .code-bar span{font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-subtle)}.code .code-bar .btn{height:2.25rem;font-size:var(--rd-text-xs);border-radius:0;gap:.375rem;padding-inline:.75rem}.code pre{font-size:var(--rd-text-sm);tab-size:4;margin:0;padding:1rem;line-height:1.65;overflow-x:auto}.code pre:focus-visible{outline-offset:-2px}.copied{color:var(--rd-success-text)!important}.tk-k{color:var(--rd-accent-text)}.tk-s{color:light-dark(oklch(48% .11 150),oklch(80% .11 150))}.tk-c{color:var(--rd-text-subtle)}.tk-t{color:light-dark(oklch(48% .1 60),oklch(82% .1 75))}.tk-f{color:light-dark(oklch(45% .12 250),oklch(80% .09 250))}.code,.astro-code{--astro-code-foreground:var(--rd-text);--astro-code-background:var(--rd-bg-subtle);--astro-code-token-keyword:var(--rd-accent-text);--astro-code-token-link:var(--rd-accent-text);--astro-code-token-string:light-dark(oklch(48% .11 150),oklch(80% .11 150));--astro-code-token-string-expression:light-dark(oklch(48% .11 150),oklch(80% .11 150));--astro-code-token-comment:var(--rd-text-subtle);--astro-code-token-constant:light-dark(oklch(48% .1 60),oklch(82% .1 75));--astro-code-token-function:light-dark(oklch(45% .12 250),oklch(80% .09 250));--astro-code-token-parameter:var(--rd-text);--astro-code-token-punctuation:var(--rd-text-muted)}.post-nav{border-top:1px solid var(--rd-border);gap:1rem;margin-top:3rem;padding-top:2rem;display:grid}.post-nav a{border:1px solid var(--rd-border);border-radius:var(--rd-radius-md);transition:border-color var(--rd-duration-fast);flex-direction:column;gap:.25rem;padding:1rem;display:flex}.post-nav a:hover{border-color:var(--rd-border-strong)}.post-nav small{font-size:var(--rd-text-sm);color:var(--rd-text-subtle)}.post-nav span{font-weight:600;line-height:1.4;font-size:var(--rd-text-base)}@media (width>=40rem){.post-nav{grid-template-columns:1fr 1fr}.post-nav .next{text-align:right}}.portrait{border-radius:var(--rd-radius-lg);border:1px solid var(--rd-border);aspect-ratio:1;object-fit:cover;width:100%;max-width:16rem}.teaser{border:1px solid var(--rd-border);border-radius:var(--rd-radius-lg);background:var(--rd-surface);font-size:var(--rd-text-base);line-height:var(--rd-leading-base);align-items:center;gap:1.25rem;padding:1rem;display:grid}.teaser img{border-radius:var(--rd-radius-md);width:100%;max-width:8rem}@media (width>=30rem){.teaser{grid-template-columns:8rem 1fr}}.release{align-items:center;gap:2rem;display:grid}.release img{border-radius:var(--rd-radius-lg);border:1px solid var(--rd-border);width:100%;max-width:26rem}@media (width>=48rem){.release{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:3rem}}.link-grid{gap:0 var(--rd-grid-gap);display:grid}@media (width>=48rem){.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.link-grid ul:last-child li:last-child a{border-bottom:1px solid var(--rd-border)}.search-form{flex-wrap:wrap;gap:.5rem;max-width:30rem;display:flex}.search-form label{width:100%;font-size:var(--rd-text-sm);font-weight:500}.input{border:1px solid var(--rd-border-input);border-radius:var(--rd-radius-sm);background:var(--rd-surface);min-width:0;height:2.75rem;color:var(--rd-text);flex:14rem;padding-inline:.75rem}.input::placeholder{color:var(--rd-text-subtle)}.site-footer{border-top:1px solid var(--rd-border);padding-block:4rem 2rem}.footer-grid{gap:2.5rem var(--rd-grid-gap);display:grid}.footer-grid h2{font-size:var(--rd-text-sm);margin-bottom:.75rem;font-weight:500}.footer-grid ul a{min-height:2rem;font-size:var(--rd-text-sm);color:var(--rd-text-muted);transition:color var(--rd-duration-fast);border-radius:var(--rd-radius-xs);align-items:center;gap:.5rem;display:inline-flex}.footer-grid ul a:hover{color:var(--rd-text)}.footer-bio{font-size:var(--rd-text-sm);color:var(--rd-text-muted);max-width:32ch;margin-top:.5rem}.footer-loc{font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-subtle);margin-top:.75rem}.footer-bottom{border-top:1px solid var(--rd-border);font-size:var(--rd-text-xs);color:var(--rd-text-subtle);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;margin-top:3rem;padding-top:1.5rem;display:flex}.footer-bottom nav{flex-wrap:wrap;gap:1.25rem;display:flex}.footer-bottom a:hover{color:var(--rd-text)}@media (width>=40rem){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.footer-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.footer-grid .f-about{grid-column:1/span 5}.footer-grid .f-site{grid-column:7/span 3}.footer-grid .f-else{grid-column:10/span 3}}.nav-list{gap:.25rem;display:flex}:root:not(.js) [data-theme-toggle]{display:none}.tabular{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.term-index{gap:.5rem}.term-index .tag{align-items:center;gap:.5rem;display:inline-flex}.term-count{font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-subtle)}.term-feed{font-size:var(--rd-text-sm);margin-top:1.25rem}.term-feed a{align-items:center;gap:.375rem;display:inline-flex}.blog-browse{margin-top:1.5rem}.code--bare{position:relative}.code--bare>.btn[data-copy]{height:2rem;font-size:var(--rd-text-xs);background:var(--rd-bg-subtle);border-radius:var(--rd-radius-sm);gap:.375rem;padding-inline:.625rem;position:absolute;top:.375rem;right:.375rem}.code--bare pre{padding-right:6rem}.blog-browse ul{font-size:var(--rd-text-sm);flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.blog-browse a{align-items:center;gap:.375rem;min-height:2.75rem;display:inline-flex}.page-head .meta+h1{margin-top:.75rem}.post-head .meta a{color:inherit}.post-head .meta a:hover{color:var(--rd-text)}.search-ui{max-width:var(--rd-container-measure);min-width:0}.search-label{font-size:var(--rd-text-sm);margin-bottom:.5rem;font-weight:500;display:block}.search-row{gap:.5rem;display:flex}.search-row .input{flex:auto;font-size:1rem}.search-row .btn{flex:none;height:2.75rem}.search-noscript{margin-top:1rem}.search-status{font-size:var(--rd-text-sm);color:var(--rd-text-muted);margin-top:1rem}.search-status:empty{display:none}.search-status a{color:var(--rd-accent-text);text-underline-offset:3px;text-decoration:underline 1px}.search-results{border-bottom:1px solid var(--rd-border);margin-top:1.5rem}.search-results[aria-busy=true]{opacity:.6;transition:opacity var(--rd-duration-fast)}.search-result{border-top:1px solid var(--rd-border);gap:.5rem;min-width:0;padding-block:1.5rem;display:grid}.search-result-title{font-size:var(--rd-text-lg);line-height:var(--rd-leading-lg);text-wrap:balance;font-weight:500}.search-result-title a{color:var(--rd-text);border-radius:var(--rd-radius-xs);transition:color var(--rd-duration-fast)}.search-result-title a:hover{color:var(--rd-accent-text)}.search-result-meta{font-family:var(--rd-font-mono);font-size:var(--rd-text-xs);color:var(--rd-text-subtle);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.25rem 1rem;display:flex}.search-result-excerpt{color:var(--rd-text-muted);overflow-wrap:anywhere;text-wrap:pretty;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search-subresults{border-left:1px solid var(--rd-border);gap:.75rem;margin-top:.25rem;padding-left:1rem;display:grid}.search-subresult{font-size:var(--rd-text-sm);line-height:var(--rd-leading-sm);gap:.125rem;min-width:0;display:grid}.search-subresult a{color:var(--rd-text);border-radius:var(--rd-radius-xs);transition:color var(--rd-duration-fast);justify-self:start;font-weight:500}.search-subresult a:hover{color:var(--rd-accent-text)}.search-subresult p{color:var(--rd-text-muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search-results mark{background:var(--rd-accent-subtle);color:var(--rd-text);font-weight:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px}.search-more{margin-top:1.5rem}.search-more[hidden],.search-results[hidden]{display:none}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}.container{width:100%;max-width:var(--rd-container-page);padding-inline:var(--rd-gutter);margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.max-w-measure{max-width:var(--rd-container-measure)}.grow{flex-grow:1}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.pt-0{padding-top:0}.text-sm{font-size:var(--rd-text-sm);line-height:var(--tw-leading,var(--rd-leading-sm))}.text-\[\.9em\]{font-size:.9em}.uppercase{text-transform:uppercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--rd-font-sans:"Geist Variable", "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--rd-font-mono:"Geist Mono Variable", "Geist Mono", ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--rd-text-xs:.75rem;--rd-text-sm:.875rem;--rd-text-base:1rem;--rd-text-prose:clamp(1.0625rem, 1.016rem + .2vw, 1.125rem);--rd-text-lg:1.125rem;--rd-text-xl:1.25rem;--rd-text-2xl:clamp(1.375rem, 1.3rem + .35vw, 1.625rem);--rd-text-3xl:clamp(1.75rem, 1.6rem + .65vw, 2.125rem);--rd-text-4xl:clamp(2.125rem, 1.85rem + 1.25vw, 2.875rem);--rd-text-5xl:clamp(2.5rem, 2rem + 2.2vw, 3.75rem);--rd-text-display:clamp(2.75rem, 1.95rem + 3.6vw, 5rem);--rd-leading-xs:1.5;--rd-leading-sm:1.5;--rd-leading-base:1.6;--rd-leading-prose:1.7;--rd-leading-lg:1.55;--rd-leading-xl:1.4;--rd-leading-2xl:1.3;--rd-leading-3xl:1.2;--rd-leading-4xl:1.1;--rd-leading-5xl:1.05;--rd-leading-display:1;--rd-tracking-2xl:-.01em;--rd-tracking-3xl:-.015em;--rd-tracking-4xl:-.022em;--rd-tracking-5xl:-.028em;--rd-tracking-display:-.035em;--rd-weight-regular:400;--rd-weight-medium:500;--rd-weight-semibold:600;--rd-weight-bold:700;--rd-measure:68ch;--rd-gutter:clamp(1rem, .6rem + 1.8vw, 2rem);--rd-grid-gap:clamp(1rem, .6rem + 1.8vw, 2rem);--rd-section:clamp(4rem, 2.6rem + 6vw, 8rem);--rd-header-h:4rem;--rd-container-measure:42rem;--rd-container-page:72rem;--rd-container-wide:80rem;--rd-radius-xs:.125rem;--rd-radius-sm:.25rem;--rd-radius-md:.375rem;--rd-radius-lg:.625rem;--rd-radius-xl:1rem;--rd-radius-full:9999px;--rd-border-width:1px;--rd-border-width-strong:2px;--rd-duration-instant:80ms;--rd-duration-fast:.12s;--rd-duration-base:.18s;--rd-duration-slow:.26s;--rd-ease-standard:cubic-bezier(.2, 0, 0, 1);--rd-ease-enter:cubic-bezier(0, 0, 0, 1);--rd-ease-exit:cubic-bezier(.3, 0, 1, 1);--rd-z-header:40;--rd-z-menu:50;--rd-z-skip:60}@media (prefers-reduced-motion:reduce){:root{--rd-duration-instant:0s;--rd-duration-fast:0s;--rd-duration-base:0s;--rd-duration-slow:0s}}:root{color-scheme:light dark}:root.light{color-scheme:light}:root.dark{color-scheme:dark}:root{--rd-neutral-0:oklch(100% 0 255);--rd-neutral-50:oklch(98.2% .004 255);--rd-neutral-100:oklch(96.5% .004 255);--rd-neutral-150:oklch(94% .004 255);--rd-neutral-200:oklch(91.5% .004 255);--rd-neutral-300:oklch(87% .004 255);--rd-neutral-400:oklch(78% .004 255);--rd-neutral-500:oklch(62% .004 255);--rd-neutral-550:oklch(54% .004 255);--rd-neutral-600:oklch(50% .004 255);--rd-neutral-700:oklch(42% .004 255);--rd-neutral-800:oklch(33% .004 255);--rd-neutral-850:oklch(30% .004 255);--rd-neutral-880:oklch(26.5% .004 255);--rd-neutral-900:oklch(23.5% .004 255);--rd-neutral-950:oklch(21.5% .004 255);--rd-bg:light-dark(oklch(100% 0 255),oklch(21.5% .004 255));--rd-bg-subtle:light-dark(oklch(98.2% .004 255),oklch(23.5% .004 255));--rd-surface:light-dark(oklch(100% 0 255),oklch(23.5% .004 255));--rd-surface-raised:light-dark(oklch(100% 0 255),oklch(26.5% .004 255));--rd-border:light-dark(oklch(91.5% .004 255),oklch(30% .004 255));--rd-border-strong:light-dark(oklch(87% .004 255),oklch(38% .004 255));--rd-border-input:light-dark(oklch(62% .004 255),oklch(56% .004 255));--rd-text:light-dark(oklch(21.5% .004 255),oklch(96.5% .004 255));--rd-text-muted:light-dark(oklch(42% .004 255),oklch(78% .004 255));--rd-text-subtle:light-dark(oklch(54% .004 255),oklch(66% .004 255));--rd-success:light-dark(oklch(50% .13 150),oklch(72% .15 150));--rd-success-subtle:light-dark(oklch(96.5% .03 150),oklch(28% .045 150));--rd-success-text:light-dark(oklch(47% .12 150),oklch(80% .13 150));--rd-warning:light-dark(oklch(60% .14 62),oklch(80% .14 80));--rd-warning-subtle:light-dark(oklch(97% .035 85),oklch(28% .04 75));--rd-warning-text:light-dark(oklch(48% .11 55),oklch(84% .12 80));--rd-danger:light-dark(oklch(52% .19 27),oklch(68% .18 25));--rd-danger-subtle:light-dark(oklch(96.5% .02 20),oklch(28% .06 25));--rd-danger-text:light-dark(oklch(50% .18 27),oklch(78% .13 25));--rd-shadow-raised:0 1px 2px light-dark(oklch(21.5% .004 255/.06),oklch(0% 0 0/0)), 0 0 0 1px light-dark(oklch(21.5% .004 255/.04),oklch(100% 0 0/.06));--rd-shadow-overlay:0 12px 32px -8px light-dark(oklch(21.5% .004 255/.18),oklch(0% 0 0/.6)), 0 0 0 1px light-dark(oklch(21.5% .004 255/.06),oklch(100% 0 0/.08))}:root,:root[data-palette=purple]{--rd-accent-50:oklch(97.5% .012 289);--rd-accent-100:oklch(94.5% .028 289.4);--rd-accent-200:oklch(89.5% .054 290.2);--rd-accent-300:oklch(82% .097 290.9);--rd-accent-400:oklch(73% .152 291.5);--rd-accent-500:oklch(64.5% .208 292);--rd-accent-600:oklch(56.5% .25 292.4);--rd-accent-700:oklch(49.5% .23 292.7);--rd-accent-800:oklch(42.5% .2 292.9);--rd-accent-900:oklch(36% .165 293);--rd-accent-950:oklch(27% .125 293);--rd-accent:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-accent-hover:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-fg:light-dark(var(--rd-neutral-0),var(--rd-neutral-950));--rd-accent-text:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-subtle:light-dark(var(--rd-accent-100),oklch(28.5% .074 293));--rd-accent-border:light-dark(var(--rd-accent-200),var(--rd-accent-800));--rd-focus-ring:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-selection:light-dark(var(--rd-accent-200),var(--rd-accent-800))}:root[data-palette=blue]{--rd-accent-50:oklch(97.5% .012 252);--rd-accent-100:oklch(94.5% .027 252.6);--rd-accent-200:oklch(89.5% .052 253.8);--rd-accent-300:oklch(82% .091 254.9);--rd-accent-400:oklch(73% .142 255.8);--rd-accent-500:oklch(64.5% .192 256.5);--rd-accent-600:oklch(56.5% .202 257.1);--rd-accent-700:oklch(49.5% .18 257.5);--rd-accent-800:oklch(42.5% .157 257.8);--rd-accent-900:oklch(36% .135 258);--rd-accent-950:oklch(27% .103 258);--rd-accent:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-accent-hover:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-fg:light-dark(var(--rd-neutral-0),var(--rd-neutral-950));--rd-accent-text:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-subtle:light-dark(var(--rd-accent-100),oklch(28.5% .061 258));--rd-accent-border:light-dark(var(--rd-accent-200),var(--rd-accent-800));--rd-focus-ring:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-selection:light-dark(var(--rd-accent-200),var(--rd-accent-800))}:root[data-palette=orange]{--rd-accent-50:oklch(97.5% .015 60);--rd-accent-100:oklch(94.5% .033 58.3);--rd-accent-200:oklch(89.5% .064 55.1);--rd-accent-300:oklch(82% .114 52.3);--rd-accent-400:oklch(73% .172 50);--rd-accent-500:oklch(64.5% .176 48);--rd-accent-600:oklch(56.5% .158 46.4);--rd-accent-700:oklch(49.5% .141 45.2);--rd-accent-800:oklch(42.5% .123 44.4);--rd-accent-900:oklch(36% .106 44);--rd-accent-950:oklch(27% .081 44);--rd-accent:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-accent-hover:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-fg:light-dark(var(--rd-neutral-0),var(--rd-neutral-950));--rd-accent-text:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-subtle:light-dark(var(--rd-accent-100),oklch(28.5% .048 44));--rd-accent-border:light-dark(var(--rd-accent-200),var(--rd-accent-800));--rd-focus-ring:light-dark(var(--rd-accent-600),var(--rd-accent-400));--rd-selection:light-dark(var(--rd-accent-200),var(--rd-accent-800))}:root[data-palette=green]{--rd-accent-50:oklch(97.5% .016 150);--rd-accent-100:oklch(94.5% .032 150.2);--rd-accent-200:oklch(89.5% .061 150.6);--rd-accent-300:oklch(82% .099 151);--rd-accent-400:oklch(73% .138 151.3);--rd-accent-500:oklch(64.5% .16 151.5);--rd-accent-600:oklch(56.5% .15 151.7);--rd-accent-700:oklch(49.5% .131 151.8);--rd-accent-800:oklch(42.5% .112 151.9);--rd-accent-900:oklch(36% .096 152);--rd-accent-950:oklch(27% .072 152);--rd-accent:light-dark(var(--rd-accent-700),var(--rd-accent-400));--rd-accent-hover:light-dark(var(--rd-accent-800),var(--rd-accent-300));--rd-accent-fg:light-dark(var(--rd-neutral-0),var(--rd-neutral-950));--rd-accent-text:light-dark(var(--rd-accent-700),var(--rd-accent-300));--rd-accent-subtle:light-dark(var(--rd-accent-100),oklch(28.5% .043 152));--rd-accent-border:light-dark(var(--rd-accent-200),var(--rd-accent-800));--rd-focus-ring:light-dark(var(--rd-accent-700),var(--rd-accent-400));--rd-selection:light-dark(var(--rd-accent-200),var(--rd-accent-800))}:root{--rd-font-sans:var(--font-geist), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--rd-font-mono:var(--font-geist-mono), ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}@keyframes rd-caret{0%,to{opacity:1}50%{opacity:0}}
