.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.blog-index{background:var(--color-lavender)}.blog-index-inner{flex-direction:column;gap:32px;max-width:1280px;margin-inline:auto;display:flex}.blog-tools{flex-direction:column;align-items:center;gap:20px;display:flex}.blog-search{border:1px solid var(--color-peach-400);background:var(--color-white);width:100%;max-width:620px;color:var(--color-muted);border-radius:99px;align-items:center;gap:10px;padding:6px 6px 6px 18px;transition:border-color .2s,box-shadow .2s;display:flex}.blog-search:focus-within{border-color:var(--color-purple-600);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-purple-600) 18%, transparent)}.blog-search svg{flex:none}.blog-search input[type=search]{min-width:0;color:var(--color-heading);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:10px 0}.blog-search input[type=search]::-webkit-search-cancel-button{cursor:pointer}.blog-search button{background:var(--color-purple-600);color:var(--color-white);font:inherit;font-weight:var(--fw-medium);cursor:pointer;border:0;border-radius:99px;flex:none;padding:10px 22px;transition:background .2s}.blog-search button:hover{background:var(--color-purple-700)}.blog-cats{align-items:center;gap:8px;width:100%;max-width:100%;display:flex;position:relative}.blog-cats-track{scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;gap:10px;min-width:0;padding:4px 2px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%)}.blog-cats[data-start=true] .blog-cats-track{-webkit-mask-image:linear-gradient(90deg,#000 0 calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#000 0 calc(100% - 16px),#0000 100%)}.blog-cats[data-end=true] .blog-cats-track{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 16px 100%);mask-image:linear-gradient(90deg,#0000 0,#000 16px 100%)}.blog-cats[data-start=true][data-end=true] .blog-cats-track{-webkit-mask-image:none;mask-image:none}.blog-cats-track::-webkit-scrollbar{display:none}.blog-cats-track a{scroll-snap-align:center;border:1px solid var(--color-peach-400);background:var(--color-white);color:var(--color-heading);font-weight:var(--fw-medium);font-size:var(--fs-small);white-space:nowrap;border-radius:99px;flex:none;padding:8px 18px;text-decoration:none;transition:background .2s,color .2s}.blog-cats-track a:hover{background:var(--color-purple-100)}.blog-cats-track a.is-active{border-color:var(--color-purple-600);background:var(--color-purple-600);color:var(--color-white)}.blog-cats-arrow{border:1px solid var(--color-peach-400);background:var(--color-white);width:36px;height:36px;color:var(--color-heading);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0 0 3px;font-size:22px;line-height:1;display:grid}.blog-cats-arrow:hover:not(:disabled){background:var(--color-purple-100)}.blog-cats-arrow:disabled{opacity:.35;cursor:default}.blog-summary{color:var(--color-muted);font-size:var(--fs-small);text-align:center}.blog-summary:empty{display:none}.blog-summary a{color:var(--color-purple-600);font-weight:var(--fw-medium)}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.blog-empty{border:1px dashed var(--color-peach-400);border-radius:var(--radius-lg);background:var(--color-white);color:var(--color-muted);text-align:center;padding:48px 24px}.blog-pagination{font-size:var(--fs-small);justify-content:center;align-items:center;gap:12px;display:flex}.blog-pagination ol{align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.blog-pagination ol a,.blog-page-step{border:1px solid var(--color-peach-400);background:var(--color-white);min-width:40px;height:40px;color:var(--color-heading);font-weight:var(--fw-medium);border-radius:99px;justify-content:center;align-items:center;gap:6px;padding:0 14px;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.blog-pagination ol a{padding:0}.blog-pagination a:hover{background:var(--color-purple-100)}.blog-pagination ol a.is-active{border-color:var(--color-purple-600);background:var(--color-purple-600);color:var(--color-white)}.blog-page-step.is-disabled{opacity:.4}.blog-page-gap{color:var(--color-muted);padding:0 4px}.post-card{border:1px solid var(--color-peach-400);border-radius:var(--radius-lg);background:var(--color-white);flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.post-card:hover{box-shadow:0 14px 34px color-mix(in srgb, var(--color-purple-900) 12%, transparent);transform:translateY(-3px)}.post-card-media{aspect-ratio:16/9;background:var(--color-purple-100);display:block}.post-card-media img{object-fit:cover;width:100%;height:100%}.post-card-placeholder{background:linear-gradient(135deg, var(--color-purple-100), var(--color-peach-200));width:100%;height:100%;display:block}.post-card-body{flex-direction:column;flex:1;align-items:flex-start;gap:12px;padding:24px;display:flex}.post-card h3{font-family:var(--font-heading);font-size:var(--fs-h4);line-height:var(--lh-title);color:var(--color-heading)}.post-card h3 a{color:inherit;text-decoration:none}.post-card h3 a:hover{color:var(--color-purple-600)}.post-card-body>p{color:var(--color-copy);font-size:var(--fs-small);line-height:var(--lh-body)}.post-card .post-meta{color:var(--color-muted);margin-top:auto}.post-chip{background:var(--color-purple-100);color:var(--color-purple-700);font-size:var(--fs-small);font-weight:var(--fw-medium);border-radius:99px;padding:4px 12px;text-decoration:none;display:inline-block}.post-chip--light{background:color-mix(in srgb, var(--color-white) 16%, transparent);color:var(--color-white)}.post-meta{font-size:var(--fs-small);flex-wrap:wrap;gap:6px;display:flex}.post-hero{padding:clamp(48px, 7vw, 96px) var(--gutter) clamp(40px, 6vw, 72px);background:var(--color-purple-900);color:var(--color-white);position:relative}.post-hero-inner{flex-direction:column;align-items:flex-start;gap:18px;max-width:880px;margin-inline:auto;display:flex}.post-hero h1{font-family:var(--font-heading);font-size:var(--fs-display);line-height:var(--lh-heading);text-wrap:balance;overflow-wrap:anywhere}.post-hero-excerpt{color:var(--color-on-dark-muted);font-size:var(--fs-lead);line-height:var(--lh-body)}.post-meta--light{color:var(--color-on-dark-muted)}.post-crumbs{color:var(--color-on-dark-muted);font-size:var(--fs-small);gap:8px;display:flex}.post-crumbs a{color:var(--color-white);text-decoration:none}.post-crumbs a:hover{text-decoration:underline}.post-article{background:var(--color-white)}.post-article-inner{flex-direction:column;gap:40px;max-width:880px;margin-inline:auto;display:flex}.post-cover{border-radius:var(--radius-lg);background:var(--color-purple-100);margin:0;overflow:hidden}.post-cover img{width:100%;height:auto;display:block}.blog-related{background:var(--color-lavender)}.blog-related h2{font-family:var(--font-heading);font-size:var(--fs-h2);color:var(--color-heading);text-align:center}.blog-prose{width:100%;max-width:760px;color:var(--color-copy);font-size:var(--fs-lead);overflow-wrap:anywhere;margin-inline:auto;line-height:1.75}.blog-prose>*+*{margin-top:1.25em}.blog-prose h2,.blog-prose h3,.blog-prose h4{font-family:var(--font-heading);line-height:var(--lh-heading);color:var(--color-heading);margin-top:2em}.blog-prose h2{font-size:var(--fs-h2)}.blog-prose h3{font-size:var(--fs-h3)}.blog-prose h4{font-size:var(--fs-h4)}.blog-prose ul,.blog-prose ol{padding-left:1.4em}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li+li{margin-top:.4em}.blog-prose a{color:var(--color-purple-600);font-weight:var(--fw-medium);text-underline-offset:3px;text-decoration:underline}.blog-prose blockquote{border-left:4px solid var(--color-purple-600);color:var(--color-heading);padding:4px 0 4px 20px;font-style:italic}.blog-prose hr{border:0;border-top:1px solid var(--color-peach-400)}.blog-prose code{background:var(--color-purple-100);border-radius:4px;padding:2px 6px;font-size:.9em}.post-figure{margin:2em 0}.post-figure img{border-radius:var(--radius-lg);width:100%;height:auto;display:block}@media (max-width:1100px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.post-grid{grid-template-columns:1fr}.blog-search button{padding-inline:16px}.blog-cats-arrow,.blog-page-step span{display:none}.blog-page-step{min-width:40px;padding:0}.blog-prose{font-size:var(--fs-body)}}.blog-table{border:1px solid var(--color-peach-400);border-radius:var(--radius-lg);margin:2em 0;overflow-x:auto}.blog-table table{border-collapse:collapse;width:100%;min-width:480px;font-size:var(--fs-body);line-height:1.5}.blog-table th,.blog-table td{border-bottom:1px solid var(--color-peach-200);text-align:left;vertical-align:top;padding:12px 16px}.blog-table th{background:var(--color-lavender);color:var(--color-heading);font-family:var(--font-heading);font-weight:var(--fw-title)}.blog-table tr:last-child td,.blog-table tr:last-child th{border-bottom:0}.blog-table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--color-lavender) 45%, white)}.blog-callout{border-left:4px solid var(--color-info);border-radius:var(--radius-md);background:var(--color-info-bg);font-size:var(--fs-body);flex-direction:column;gap:6px;margin:2em 0;padding:18px 22px;display:flex}.blog-callout strong{color:var(--color-heading);font-family:var(--font-heading)}.blog-callout--tip{border-left-color:var(--color-success);background:var(--color-success-bg)}.blog-callout--warning{background:#fff3da;border-left-color:#d98a0b}.blog-cta{border-radius:var(--radius-lg);background:var(--color-purple-900);color:var(--color-white);flex-direction:column;align-items:flex-start;gap:10px;margin:2.2em 0;padding:clamp(22px,4vw,34px);display:flex}.blog-cta strong{font-family:var(--font-heading);font-size:var(--fs-h3);line-height:var(--lh-heading)}.blog-cta p{color:var(--color-on-dark-muted);font-size:var(--fs-body)}.blog-prose a.blog-cta-button{background:var(--color-purple-600);color:var(--color-white);font-weight:var(--fw-medium);border-radius:10px;margin-top:6px;padding:12px 26px;text-decoration:none;display:inline-block}.blog-prose a.blog-cta-button:hover{background:var(--color-purple-700)}.blog-video,.blog-code,.post-figure{margin:2em 0}.blog-video-frame{aspect-ratio:16/9;border-radius:var(--radius-lg);background:var(--color-purple-900);position:relative;overflow:hidden}.blog-video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.blog-video figcaption,.post-figure figcaption{color:var(--color-muted);font-size:var(--fs-small);text-align:center;margin-top:10px}.blog-code pre{border-radius:var(--radius-md);background:var(--color-purple-900);color:var(--color-lavender);padding:18px 20px;font-size:.9rem;line-height:1.6;overflow-x:auto}.blog-code code{color:inherit;white-space:pre;background:0 0;padding:0}.blog-code figcaption{background:var(--color-purple-100);color:var(--color-purple-700);font-size:var(--fs-small);font-weight:var(--fw-medium);border-radius:99px;margin-bottom:6px;padding:2px 10px;display:inline-block}.blog-faq{border:1px solid var(--color-peach-400);border-radius:var(--radius-lg);margin:2em 0;overflow:hidden}.blog-faq details+details{border-top:1px solid var(--color-peach-200)}.blog-faq summary{color:var(--color-heading);font-family:var(--font-heading);font-weight:var(--fw-title);cursor:pointer;padding:16px 20px}.blog-faq details[open] summary{background:var(--color-lavender)}.blog-faq details p{font-size:var(--fs-body);padding:14px 20px 18px}.blog-prose ul.list-check{padding-left:0;list-style:none}.blog-prose li.list-item-checkbox{align-items:baseline;gap:10px;display:flex}.blog-prose li.list-item-checkbox input{width:1.05em;height:1.05em;accent-color:var(--color-purple-600);pointer-events:none;flex:none;transform:translateY(2px)}.blog-prose li.list-item-checkbox br{display:none}.blog-prose li.list-item-checkbox-checked label{color:var(--color-muted);text-decoration:line-through}.blog-prose sub,.blog-prose sup{font-size:.75em}
.math-card{border:1px solid var(--color-peach-300);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--color-white) 34%, transparent);box-shadow:0 16px 32px color-mix(in srgb, var(--color-purple-900) 4%, transparent);flex-direction:column;flex:0 0 520px;gap:24px;padding:clamp(24px,3vw,40px);display:flex}.math-row{flex-direction:column;gap:8px;display:flex}.math-row-head{font-size:var(--fs-small);font-weight:var(--fw-medium);justify-content:space-between;gap:16px;display:flex}.math-row-head strong{font-family:var(--font-heading);font-weight:var(--fw-title);flex-shrink:0}.math-value--gold{color:var(--color-purple-600)}.math-value--coral{color:var(--color-coral)}.math-track{background:var(--color-peach-300);border-radius:99px;height:10px;overflow:hidden}.math-track span{height:100%;display:block}.math-fill--gold{background:var(--color-gold)}.math-fill--coral{background:var(--color-coral)}@media (max-width:960px){.math-card{flex-basis:auto}}
@media (prefers-reduced-motion:no-preference){html .reveal{opacity:0;transition:opacity .7s cubic-bezier(.22, .8, .24, 1) var(--reveal-delay,0s), transform .7s cubic-bezier(.22, .8, .24, 1) var(--reveal-delay,0s);transform:translateY(28px)}html .reveal--in{opacity:1;transform:none}.hero-copy,.hero-visual,.hero-figure{animation:.8s cubic-bezier(.22,.8,.24,1) both reveal-up}.hero-visual,.hero-figure{animation-delay:.15s}.hero-mark{animation:1.2s .1s both reveal-fade}.hero-mark--plain{animation-name:reveal-mark}}@keyframes reveal-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes reveal-mark{0%{opacity:0}to{opacity:var(--mark-opacity,1)}}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}

