:root{--paper:#ebe7e0;--paper-raised:#fbf8f1;--card:#fbf8f1;--ink:#0f1d2e;--ink-soft:#48536d;--ink-faint:#7c869c;--blue:#0085ca;--blue-text:#04628f;--blue-soft:#e2f0fa;--blue-bright:#4fb8f5;--blue-deep:#003469;--navy:#003469;--gold:#ffce35;--gold-soft:#fcf4d8;--gold-deep:#9a7d1c;--line:rgba(72,83,109,0.18);--line-soft:rgba(72,83,109,0.11);--line-strong:#c3cfdd;--danger:#b4472e;--ok:#2f7d5a;--ease:cubic-bezier(0.22,0.7,0.3,1);--pop:cubic-bezier(0.34,1.4,0.5,1);--sec-pad:clamp(88px,11vw,150px);--font-display:"Clash Display","Satoshi",system-ui,-apple-system,sans-serif;--font-body:"Satoshi",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:"Source Serif 4",Georgia,serif;--font-mono:"Spline Sans Mono",ui-monospace,"SF Mono",monospace;--step--1:clamp(0.83rem,0.8rem + 0.15vw,0.9rem);--step-0:clamp(1rem,0.96rem + 0.2vw,1.09rem);--step-1:clamp(1.25rem,1.16rem + 0.44vw,1.5rem);--step-2:clamp(1.56rem,1.39rem + 0.85vw,2.06rem);--step-3:clamp(1.95rem,1.65rem + 1.5vw,2.83rem);--step-4:clamp(2.44rem,1.93rem + 2.54vw,3.88rem);--sp-1:0.25rem;--sp-2:0.5rem;--sp-3:0.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4.5rem;--radius:10px;--radius-sm:6px;--shadow-1:var(--lift-1);--shadow-2:var(--lift-2);--measure:68ch;--shell-max:1180px;--bg:var(--paper);--bg-raised:var(--paper-raised);--fg:var(--ink);--fg-muted:var(--ink-soft);--accent:var(--blue);--accent-text:var(--blue-text);--border:var(--line);--density:1}[data-density=compact]{--density:0.75}:root{--yarn-blue:#0085ca;--yarn-blue-deep:#04628f;--yarn-gold:#e8c93f;--yarn-gold-deep:#a8871d;--yarn-cream:#f2ede0;--yarn-cream-deep:#c4b697;--yarn-w:clamp(7px,0.72vw,11px);--lift-1:0 1px 1px rgba(0,52,105,0.05),0 2px 6px rgba(0,52,105,0.05);--lift-2:0 2px 3px rgba(0,52,105,0.07),0 10px 26px rgba(0,52,105,0.08);--lift-3:0 4px 8px rgba(0,52,105,0.08),0 24px 52px rgba(0,52,105,0.12);--lift-press:0 1px 2px rgba(0,52,105,0.1);--stitch-ink:rgba(72,83,109,0.38);--stitch-gold:rgba(168,135,29,0.55);--ease-cloth:cubic-bezier(0.22,0.7,0.3,1);--ease-settle:cubic-bezier(0.34,1.28,0.5,1)}.woven-ground{position:relative;background-color:var(--paper)}.woven-ground:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.06 0 0 0 0 0.13 0 0 0 0 0.22 0 0 0 0.055 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23f)'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.035' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.02 0 0 0 0 0.2 0 0 0 0 0.4 0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='420' height='420' filter='url(%23g)'/%3E%3C/svg%3E");background-size:300px 300px,420px 420px}.woven-ground>*{position:relative}.knit{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12'%3E%3Cg fill='none' stroke='rgba(15,29,46,0.17)' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M0 0 L4.5 6 L9 0 M9 0 L13.5 6 L18 0'/%3E%3Cpath d='M0 6 L4.5 12 L9 6 M9 6 L13.5 12 L18 6'/%3E%3C/g%3E%3C/svg%3E")}.knit,.knit-light{background-size:18px 12px}.knit-light{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.16)' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M0 0 L4.5 6 L9 0 M9 0 L13.5 6 L18 0'/%3E%3Cpath d='M0 6 L4.5 12 L9 6 M9 6 L13.5 12 L18 6'/%3E%3C/g%3E%3C/svg%3E")}.rib{background-image:repeating-linear-gradient(90deg,rgba(15,29,46,.16) 0 1.5px,transparent 1.5px 3px,rgba(255,255,255,.3) 3px 4.5px,transparent 4.5px 6px)}.knit-edge{position:relative;height:14px;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden;background-color:var(--yarn-blue);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.22)' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M0 0 L4.5 6 L9 0 M9 0 L13.5 6 L18 0'/%3E%3Cpath d='M0 6 L4.5 12 L9 6 M9 6 L13.5 12 L18 6'/%3E%3C/g%3E%3C/svg%3E");background-size:18px 12px}.knit-edge:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:rgba(0,52,105,.28)}.knit-edge[data-yarn=gold]{background-color:var(--yarn-gold)}.knit-edge[data-yarn=gold]:after{background:rgba(168,135,29,.4)}.knit-edge[data-yarn=navy]{background-color:var(--navy)}.knit-edge[data-yarn=cream]{background-color:#e9e2d1}.knit-edge[data-yarn=cream]:after{background:rgba(72,83,109,.2)}.wool{filter:url(#wool)}.wool-soft{filter:url(#wool-soft)}.stitched{position:relative}.stitched:before{content:"";position:absolute;inset:5px;border:1.5px dashed var(--stitch-ink);border-radius:calc(var(--radius) - 3px);pointer-events:none}.stitched-gold:before{border-color:var(--stitch-gold)}.lift{box-shadow:var(--lift-1);transition:box-shadow .32s var(--ease-cloth),transform .32s var(--ease-cloth)}.lift:hover{transform:translateY(-3px)}.lift-card,.lift:hover{box-shadow:var(--lift-2)}.lift-card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);transition:box-shadow .32s var(--ease-cloth),transform .32s var(--ease-cloth),border-color .32s var(--ease-cloth)}.lift-card:hover{box-shadow:var(--lift-3);transform:translateY(-4px);border-color:var(--line)}.perf{position:relative}.perf:before{left:0;width:2px;background-image:radial-gradient(circle at 1px 4px,var(--paper) 2.1px,transparent 2.3px);background-size:2px 11px;background-repeat:repeat-y;z-index:2}.perf:after,.perf:before{content:"";position:absolute;top:0;bottom:0}.perf:after{left:2px;width:7px;background:linear-gradient(90deg,rgba(0,52,105,.09),transparent);pointer-events:none}.perf-bite{position:relative}.perf-bite:after,.perf-bite:before{content:"";position:absolute;left:-7px;width:14px;height:14px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-soft)}.perf-bite:before{top:-7px}.perf-bite:after{bottom:-7px}.patch{position:relative;border-radius:14px;background-color:var(--card);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='7'%3E%3Cpath d='M-1 8 L8 -1 M-1 4 L4 -1 M3 8 L8 3' stroke='rgba(72,83,109,0.11)' stroke-width='1.2'/%3E%3C/svg%3E");background-size:7px 7px;box-shadow:var(--lift-2);transition:transform .4s var(--ease-settle),box-shadow .4s var(--ease-cloth)}.patch:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:5px;background:repeating-linear-gradient(52deg,var(--yarn-gold) 0 2.5px,var(--yarn-gold-deep) 2.5px 5px);-webkit-mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none}.patch[data-yarn=blue]:before{background:repeating-linear-gradient(52deg,var(--yarn-blue) 0 2.5px,var(--yarn-blue-deep) 2.5px 5px)}.patch[data-yarn=navy]:before{background:repeating-linear-gradient(52deg,#0a4a86 0 2.5px,var(--navy) 2.5px 5px)}.patch:hover{transform:rotate(-.8deg) translateY(-4px);box-shadow:var(--lift-3)}@media (prefers-reduced-motion:reduce){.lift,.lift-card,.patch{transition:none}.lift-card:hover,.lift:hover,.patch:hover{transform:none}}@media (max-width:720px){:root{--yarn-w:8px}}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--step-0);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--font-display);line-height:1.08;letter-spacing:-.02em;text-wrap:balance;font-weight:600}h1{font-size:var(--step-4)}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{text-wrap:pretty}a{color:var(--accent-text);text-underline-offset:.18em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.shell{width:min(var(--shell-max),100% - 2.5rem);margin-inline:auto}.stack>*+*{-webkit-margin-before:var(--flow,var(--sp-4));margin-block-start:var(--flow,var(--sp-4))}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-5);box-shadow:var(--shadow-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:.68em 1.15em;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--blue-deep);color:#fff;font-weight:600;font-size:var(--step--1);letter-spacing:.01em;cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-1)}.btn:active{transform:translateY(0)}.btn--ghost{background:transparent;border-color:var(--line-strong);color:var(--fg)}.btn--danger{background:var(--danger)}.chip{display:inline-flex;align-items:center;gap:.4em;padding:.2em .6em;border-radius:999px;font-size:var(--step--1);font-weight:600;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-text);border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);white-space:nowrap}.muted{color:var(--fg-muted)}.mono{font-size:var(--step--1)}.eyebrow,.mono{font-family:var(--font-mono)}.eyebrow{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted)}table.data{width:100%;border-collapse:collapse;font-size:var(--step--1)}table.data th{text-align:left;font-weight:600;color:var(--fg-muted);border-bottom:1px solid var(--line-strong);padding:var(--sp-2) var(--sp-3);white-space:nowrap}table.data td{border-bottom:1px solid var(--border);padding:var(--sp-3);vertical-align:middle}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}