.heading-wrap{position: relative}.heading-link{position: absolute;inset-inline-start: -2.25rem;top: 50%;translate: 0 -50%;display: grid;place-items: center;width: 1.8rem;height: 1.8rem;padding: 0;background: none;border: 0;border-radius: .3rem;color: var(--muted);cursor: pointer;opacity: 0}.heading-link[data-tip]::after{left: 0;right: auto}.heading-wrap:hover .heading-link,.heading-link:focus-visible{opacity: 1}.heading-link:hover{color: var(--link)}@media (max-width: 50rem),(hover: none){.heading-link{display: none}}.author{display: flex;gap: 1rem;align-items: center;background: var(--surface);border-radius: var(--radius);padding: 1.25rem;margin-top: 3rem}.author picture{flex: none;width: 5rem;height: 5rem}.author img{width: 5rem;height: 5rem;border-radius: 50%;object-fit: cover}.author p{margin: 0;font-size: .95rem}.comments{margin-top: 3rem}.comments>h2{margin-bottom: .5rem}.comments>details>summary{font-weight: 600;cursor: pointer;padding-block: .5rem;color: var(--link)}.comment-list,.comment-list ol{list-style: none;padding: 0;margin: 0}.comment-list ol{padding-inline-start: 1.25rem;border-inline-start: 2px solid var(--line);margin-top: 1rem}.comment{padding-block: 1rem}.comment-list>li + li{border-top: 1px solid var(--line)}.comment header{display: flex;gap: .7rem;align-items: center;font-size: .95rem}.comment-who{display: flex;flex-wrap: wrap;gap: .1rem .6rem;align-items: baseline}.comment header b{font-weight: 700}.comment time{color: var(--muted);font-size: .85rem}.comment .badge{background: var(--accent);color: var(--on-accent);font-size: .75rem;padding: .05rem .45rem;border-radius: 999px}.comment p{margin: .4rem 0}.comments-note{color: var(--muted);font-size: .95rem;margin-top: 0}.comments-more{margin-top: 1.5rem;text-align: center}.comments-more .tool-button,.pagination .tool-button{text-decoration: none;font-size: .95rem;padding: .5rem 1.1rem}.more-count{color: var(--muted)}.pagination{display: flex;justify-content: space-between;gap: 1rem;margin-top: 2rem}.avatar{flex: none;width: 2.5rem;height: 2.5rem;border-radius: 50%;overflow: hidden}.avatar img{width: 100%;height: 100%;object-fit: cover}.avatar--initials{display: grid;place-items: center;font-size: .85rem;font-weight: 700;color: #fff}.avatar--0{background: #8a3b1e}.avatar--1{background: #2f5d7c}.avatar--2{background: #4f6b2a}.avatar--3{background: #6b3f7a}.avatar--4{background: #7a5a12}.avatar--5{background: #1f6b63}.avatar--6{background: #7a2f4b}.avatar--7{background: #4b4f5c}.comment>p{margin-inline-start: 3.2rem}.comment-list ol .comment>p{margin-inline-start: 3.2rem}.a11y-panel{width: min(100% - 1.5rem,30rem);max-width: none;max-height: calc(100vh - 1.5rem);max-height: calc(100dvh - 1.5rem);overflow-y: auto;overscroll-behavior: contain;margin: auto;border: 1px solid var(--line);border-radius: .75rem;padding: 1.5rem;background: var(--bg);color: var(--text)}@media (max-width: 30rem){.a11y-panel{padding: 1.1rem 1rem}.a11y-panel fieldset{padding-block: .75rem}.choices label{padding: .3rem .65rem;font-size: .9rem}}.a11y-panel h2{margin: 0 2.5rem .5rem 0;font-size: 1.4rem}.a11y-panel>p{margin: 0 0 1rem;color: var(--muted);font-size: .95rem}.dialog-close{position: absolute;top: 1rem;right: 1rem;margin: 0}.a11y-panel fieldset{border: 0;border-top: 1px solid var(--line);margin: 0;padding: 1rem 0;display: grid;gap: .6rem}.a11y-panel legend{font-weight: 700;padding: 0;margin-bottom: .2rem;float: left;width: 100%}.choices{display: flex;flex-wrap: wrap;gap: .5rem;clear: both}.choices label{display: inline-flex;align-items: center;gap: .4rem;cursor: pointer;border: 1px solid var(--line);border-radius: 999px;padding: .35rem .8rem;font-size: .95rem}.choices label:has(:checked){border-color: var(--accent);background: var(--surface);font-weight: 600}.choices input{accent-color: var(--accent);margin: 0}.size-sample{font-weight: 700;line-height: 1}.size-large{font-size: 1.15em}.size-larger{font-size: 1.3em}.switch{display: flex;align-items: center;gap: .6rem;cursor: pointer;clear: both}.switch input{appearance: none;flex: none;width: 2.6rem;height: 1.5rem;border-radius: 999px;background: var(--line);position: relative;cursor: pointer;margin: 0;border: 1px solid var(--muted)}.switch input::before{content: "";position: absolute;top: .15rem;left: .15rem;width: 1.1rem;height: 1.1rem;border-radius: 50%;background: var(--bg);border: 1px solid var(--muted);transition: translate .15s}.switch input:checked{background: var(--accent);border-color: var(--accent)}.switch input:checked::before{translate: 1.1rem 0}.listen-buttons{display: flex;gap: .5rem;clear: both}.listen-status{margin: 0;font-size: .9rem;color: var(--muted)}.icon-button.is-active{border-color: var(--accent);color: var(--link)}.tip{margin: auto;inset: auto 1rem 1rem;width: min(20rem,calc(100vw - 2rem));padding: .85rem 1rem;background: var(--bg);color: var(--text);border: 1px solid var(--line);border-radius: .6rem;box-shadow: 0 .75rem 2rem rgb(0 0 0 / .18);font-size: .9rem;line-height: 1.5;text-align: start}html.js .tip{position: fixed;inset: auto;margin: 0}.tip-title{display: block;font-weight: 700;font-size: .95rem;margin-bottom: .25rem;color: var(--text)}.tip-text{display: block;color: var(--muted)}.tip-line{display: block;margin-top: .4rem;color: var(--text)}.link-card .tip-title{overflow-wrap: anywhere}.tip a{color: var(--link)}.tip:popover-open{opacity: 1;translate: 0 0}.tip{opacity: 0;translate: 0 .3rem;transition: opacity .15s,translate .15s,overlay .15s allow-discrete,display .15s allow-discrete}@starting-style{.tip:popover-open{opacity: 0;translate: 0 .3rem}}[data-tip]::after{box-shadow: 0 .4rem 1rem rgb(0 0 0 / .15);border-radius: .4rem;padding: .35rem .6rem}@position-try --wide-below{position-area: bottom span-all;width: auto;margin: .5rem 1rem}@position-try --wide-above{position-area: top span-all;width: auto;margin: .5rem 1rem}@supports (position-area: bottom) and (interest-delay: 0s){.tip{position: fixed;inset: auto;margin: .5rem 0;width: min(20rem,calc(100vw - 2rem));position-area: bottom span-right;position-try-fallbacks: flip-inline,flip-block,flip-block flip-inline,--wide-below,--wide-above}}@supports (position-area: bottom){html.anchors .tip{position: fixed;inset: auto;margin: .5rem 0;width: min(20rem,calc(100vw - 2rem));position-area: bottom span-right;position-try-fallbacks: flip-inline,flip-block,flip-block flip-inline,--wide-below,--wide-above}}.ai-tools{margin-top: 2.5rem;padding: 1rem 1.15rem;border: 1px solid var(--line);border-radius: var(--radius)}.ai-tools-title{display: flex;align-items: center;gap: .45rem;margin: 0 0 .6rem;font-weight: 700;font-size: .95rem}.ai-tools ul{list-style: none;padding: 0;margin: 0;display: flex;flex-wrap: wrap;gap: .45rem}.ai-tools .tool-button{text-decoration: none;min-height: 2rem}.muted-size{color: var(--muted);font-size: .85em}.ai-ask{display: inline-flex;align-items: center;gap: .45rem}.ai-claude .brand-icon{color: #d97757}.ai-perplexity .brand-icon{color: #1fb8cd}.link-list{margin-top: 3rem;padding-top: 1.5rem;border-top: 1px solid var(--line)}.link-list h2{margin-top: 0;font-size: 1.3rem}.link-list p{font-size: .95rem;color: var(--muted)}.link-list ul{list-style: none;padding: 0;margin: 0;display: grid;gap: .1rem;font-size: .95rem}.link-list li{display: flex;flex-wrap: wrap;align-items: baseline;gap: .25rem 1rem;padding-block: .45rem;border-bottom: 1px dotted var(--line)}.link-list .link-name{flex: 1 1 14rem;font-weight: 600}.link-list a[rel~="sponsored"]{color: var(--muted)}.lightbox{border: 0;padding: 0;background: transparent;max-width: 100vw;max-height: 100vh;width: 100vw;height: 100vh;display: grid;place-items: center;color: #fff;opacity: 0;scale: .96;transition: opacity .3s,scale .3s,overlay .3s allow-discrete,display .3s allow-discrete}.lightbox:not([open]){display: none}.lightbox[open]{opacity: 1;scale: 1}@starting-style{.lightbox[open]{opacity: 0;scale: .96}}.lightbox::backdrop,.a11y-panel::backdrop{background: rgb(10 8 6 / 0);backdrop-filter: blur(0);transition: background .35s,backdrop-filter .35s,overlay .35s allow-discrete,display .35s allow-discrete}.lightbox[open]::backdrop{background: rgb(10 8 6 / .6);backdrop-filter: blur(14px)}.a11y-panel[open]::backdrop{background: rgb(10 8 6 / .45);backdrop-filter: blur(6px)}@starting-style{.lightbox[open]::backdrop,.a11y-panel[open]::backdrop{background: rgb(10 8 6 / 0);backdrop-filter: blur(0)}}.lightbox figure{margin: 0;display: grid;gap: .75rem;justify-items: center;max-width: 94vw}.lightbox img{max-width: 94vw;max-height: 84vh;width: auto;height: auto;border-radius: var(--radius);box-shadow: 0 1rem 3rem rgb(0 0 0 / .4);cursor: zoom-out}.lightbox figcaption{max-width: 48rem;text-align: center;font-size: .95rem;color: #f2ede8;text-shadow: 0 1px 2px rgb(0 0 0 / .6)}.lightbox .icon-button{position: fixed;top: 1rem;right: 1rem;color: #fff;border-color: rgb(255 255 255 / .5);background: rgb(0 0 0 / .35)}@media (prefers-reduced-motion: reduce){.lightbox,.lightbox::backdrop,.a11y-panel::backdrop,.tip,.zoom img{transition: none}}html.a11y-still :is(.lightbox,.lightbox::backdrop,.a11y-panel::backdrop,.tip,.zoom img){transition: none !important}.lab-pair{display: grid;grid-template-columns: repeat(auto-fit,minmax(14rem,1fr));gap: 1rem}.lab-pair figure{margin: 0}.lab-pair img{border-radius: var(--radius);width: 100%}.lab-badge img{border-radius: var(--radius)}@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: view()){html:not(.a11y-still) :is(.article-body :is(figure,.video,.embed-facade,blockquote,table,h2),.post-list>li,.cards>li,.gallery>li,.comment-list>li,.author,.link-list,.lab-pair){animation: rise-in linear both;animation-timeline: view();animation-range: entry 0% entry 70%}html:not(.a11y-still) .logos>li{animation: fade-in linear both;animation-timeline: view();animation-range: entry 10% entry 90%}}@keyframes rise-in{from{opacity: 0;translate: 0 1.25rem}}@keyframes fade-in{from{opacity: 0;scale: .9}}}.search-dialog{width: min(100% - 1.5rem,40rem);max-width: none;max-height: calc(100dvh - 1.5rem);margin: 8vh auto auto;overflow-y: auto;overscroll-behavior: contain;border: 1px solid var(--line);border-radius: .75rem;padding: 1.5rem;background: var(--bg);color: var(--text)}.search-dialog h2{margin: 0 2.5rem 1rem 0;font-size: 1.4rem}.search-dialog::backdrop{background: rgb(10 8 6 / .45);backdrop-filter: blur(6px)}.search-form{margin-top: 1rem}.search-dialog .search-form{margin-top: 0}.search-form label{font-weight: 600;display: block;margin-bottom: .4rem}.search-row{display: flex;gap: .5rem}.search-row input{flex: 1;min-width: 0;font: inherit;color: inherit;padding: .65rem .8rem;background: var(--bg);border: 1px solid var(--muted);border-radius: var(--radius)}.search-row .button{display: inline-flex;align-items: center;gap: .4rem;border: 0;font: inherit;font-weight: 600;cursor: pointer}@media (max-width: 30rem){.search-row .button span{display: none}.search-dialog{padding: 1.1rem 1rem}}.search-hint,.search-status{color: var(--muted);font-size: .9rem;margin: .6rem 0 0}.search-status:empty{display: none}html.js .search-hint{display: none}.search-filters{display: flex;flex-wrap: wrap;gap: .4rem;margin-top: .9rem}.search-filters button{font: inherit;font-size: .85rem;border: 1px solid var(--line);border-radius: 999px;padding: .25rem .8rem;min-height: 1.75rem;background: none;color: var(--text);cursor: pointer}.search-filters button:hover{border-color: var(--accent)}.search-filters [aria-pressed="true"]{border-color: var(--accent);background: var(--surface);font-weight: 600}.search-results{list-style: none;padding: 0;margin: .75rem 0 0}.search-results>li{display: grid;grid-template-columns: 6rem minmax(0,1fr);gap: .9rem;padding: .85rem 0;border-top: 1px solid var(--line)}.search-results>li:not(:has(>img)){grid-template-columns: minmax(0,1fr)}.search-results img{width: 6rem;aspect-ratio: 16 / 9;object-fit: cover;border-radius: .35rem}.search-results .result-title{font-weight: 700;color: var(--text);text-decoration: none}.search-results .result-title:hover{color: var(--link);text-decoration: underline}.search-results .result-date{color: var(--muted);font-size: .85rem;white-space: nowrap}.search-results p{margin: .25rem 0 0;font-size: .92rem;color: var(--muted)}.search-results mark{background: color-mix(in srgb,var(--accent) 22%,transparent);color: var(--text);border-radius: 2px;padding: 0 .1em}.search-results ul{list-style: none;padding: 0;margin: .4rem 0 0;font-size: .88rem;display: flex;flex-wrap: wrap;gap: .2rem 1rem}@media (max-width: 30rem){.search-results>li{grid-template-columns: 4.5rem minmax(0,1fr)}.search-results img{width: 4.5rem}}.version-notice{margin-top: 1rem;flex-direction: column;gap: .4rem}.version-notice::before{display: none}.version-links{font-size: .92rem}.version-intro{color: var(--muted);max-width: 42rem}.version-list{list-style: none;padding: 0 !important;margin: 1.5rem 0}.version-list>li{border: 1px solid var(--line);border-radius: var(--radius);padding: .9rem 1rem;margin: 0 0 .75rem}.version-list .version-current{background: var(--surface)}.version-date{margin: 0 0 .6rem;font-weight: 600}.version-current .version-date{margin: 0}.version-change{margin: 0}.version-change-label{display: block;font-size: .78rem;text-transform: uppercase;letter-spacing: .08em;color: var(--muted);font-weight: 600}.version-counts,.version-source{color: var(--muted);font-size: .88rem;font-weight: 400}.version-diff{--added: color-mix(in srgb,#2f9e44 18%,transparent);--removed: color-mix(in srgb,#e03131 14%,transparent)}.version-page ins{background: var(--added,color-mix(in srgb,#2f9e44 18%,transparent));text-decoration: underline;text-decoration-thickness: 1px}.version-page del{background: var(--removed,color-mix(in srgb,#e03131 14%,transparent));text-decoration: line-through}.v-block{position: relative;border-radius: var(--radius);padding: .4rem .75rem;margin: 0 -.75rem 1rem}.v-block>:last-child{margin-bottom: 0}.v-added{background: var(--added)}.v-removed{background: var(--removed)}.v-removed>:not(.v-label){text-decoration: line-through;opacity: .8}.v-changed{border: 1px solid var(--line)}.v-label{display: inline-block;font-size: .72rem;text-transform: uppercase;letter-spacing: .08em;font-weight: 700;color: var(--muted);margin-bottom: .2rem}.v-same{margin: 0 0 1rem;color: var(--muted)}.v-same>summary{cursor: pointer;font-size: .9rem;padding: .3rem 0}.v-same[open]{color: inherit}@media (max-width: 40rem){.footer-bar:has(.bar-warning) ul{display: none}.footer-bar .bar-warning{font-size: .85rem;padding-block: .4rem}}.social-link{display: inline-flex;align-items: center;gap: .55rem}.social-link .brand-svg{width: 1.05em;height: 1.05em;flex: none;color: var(--accent)}.ask-ian{position: fixed;z-index: 45;right: 1rem;bottom: calc(var(--bar-h) + 1rem);display: inline-flex;align-items: center;gap: .6rem;padding: .3rem 1.1rem .3rem .3rem;border: 0;border-radius: 999px;background: var(--accent);color: var(--on-accent);font: inherit;font-weight: 750;cursor: pointer;box-shadow: 0 12px 30px -10px var(--shade);transition: transform .2s ease}.ask-ian:hover{transform: translateY(-2px)}.ask-ian-face{position: relative;display: block;width: 2.9rem;height: 2.9rem;border-radius: 50%;overflow: hidden;background: var(--butter);box-shadow: 0 0 0 3px color-mix(in srgb,var(--on-accent) 85%,transparent);flex: none}.ask-ian-face img,.ask-ian-face svg{width: 100%;height: 100%;object-fit: cover;display: block}.ask-ian-panel{position: fixed;inset: auto 1rem calc(var(--bar-h) + 5.2rem) auto;margin: 0;width: min(24rem,calc(100vw - 2rem));max-height: min(34rem,calc(100vh - var(--bar-h) - 8rem));overflow: auto;padding: 0;border: 0;border-radius: 1.5rem;background: var(--bg);color: var(--text);box-shadow: 0 2px 4px var(--shade),0 30px 70px -20px var(--shade)}.ask-ian-panel:popover-open{display: flex;flex-direction: column}.ask-ian-head{display: flex;align-items: center;gap: .75rem;padding: 1rem 1rem .9rem;background: var(--tint)}.ask-ian-head .ask-ian-face{width: 2.75rem;height: 2.75rem;box-shadow: 0 0 0 3px var(--bg)}.ask-ian-head div{flex: 1;min-width: 0}.ask-ian-head .icon-button{flex: none}.ask-ian-title{margin: 0;font-family: var(--heading-font);font-weight: 760;font-size: 1.15rem}.ask-ian-sub{margin: 0;font-size: .82rem;color: var(--muted)}.ask-ian-chat{padding: 1rem;display: grid;gap: .6rem}.ask-ian-msg{margin: 0;padding: .75rem 1rem;background: var(--surface);border-radius: 1.1rem 1.1rem 1.1rem .3rem;font-size: .95rem}.ask-ian-try{margin: .3rem 0 0;font-size: .8rem;font-weight: 700;color: var(--muted)}.ask-ian-chips{list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: .4rem}.ask-ian-chips button{font: inherit;font-size: .85rem;padding: .35rem .8rem;border-radius: 999px;border: 0;background: var(--tint-sky);color: var(--text)}.ask-ian-input{display: flex;gap: .5rem;padding: 0 1rem}.ask-ian-input input{flex: 1;min-width: 0;font: inherit;padding: .6rem .9rem;border-radius: 999px;border: 2px solid var(--line);background: var(--bg);color: var(--text)}.ask-ian-input .button{padding: .55rem 1.1rem}.ask-ian-note{margin: .75rem 1rem 1rem;font-size: .78rem;color: var(--muted)}:is(.ask-ian-chips button,.ask-ian-input input,.ask-ian-input .button):disabled{cursor: not-allowed;opacity: .75}@media (max-width: 40rem){.ask-ian-label{display: none}.ask-ian{padding: .3rem}}@media print{.ask-ian,.ask-ian-panel{display: none !important}}.spiral-avatar{position: relative;display: block;width: var(--size);height: var(--size);border-radius: 50%;overflow: hidden;background: var(--butter);flex: none}.spiral-avatar .spiral{position: absolute;inset: -4%;width: 108%;height: 108%;fill: none;stroke: var(--orange);stroke-width: 7;stroke-linecap: round;opacity: .55}.spiral-avatar picture,.spiral-avatar img{position: relative;display: block;width: 100%;height: 190%;object-fit: cover;object-position: 50% 0}@media (prefers-reduced-motion: no-preference){html:not(.a11y-still) .spiral-avatar .spiral{animation: spiral-turn 24s linear infinite}}@keyframes spiral-turn{to{rotate: 360deg}}.not-found{text-align: center;padding-block: 3rem 4rem}.not-found .spiral-avatar{margin: 0 auto 1.5rem}.not-found-actions{display: flex;flex-wrap: wrap;gap: .75rem;justify-content: center}.modal{width: min(100% - 1.5rem,30rem);max-width: none;max-height: calc(100dvh - 1.5rem);overflow-y: auto;overscroll-behavior: contain;margin: auto;border: 0;border-radius: var(--radius-l);padding: 1.75rem 1.5rem 1.5rem;background: var(--bg);color: var(--text);box-shadow: 0 30px 80px -20px rgb(0 0 0 / .45);opacity: 0;scale: .97;transition: opacity .25s,scale .25s,overlay .25s allow-discrete,display .25s allow-discrete}.modal[open]{opacity: 1;scale: 1}@starting-style{.modal[open]{opacity: 0;scale: .97}}.modal::backdrop{background: rgb(10 8 6 / .45);backdrop-filter: blur(6px)}.modal--wide{width: min(100% - 1.5rem,44rem)}.modal h2{margin: 0 2.75rem .9rem 0;font-size: 1.5rem;line-height: 1.15}.modal-kicker{display: flex;align-items: center;gap: .4rem;margin: 0 0 .35rem;font-size: .8rem;font-weight: 750;letter-spacing: .06em;text-transform: uppercase;color: var(--accent)}.modal-kicker .icon{width: 1rem;height: 1rem}.modal-lede{margin: 0 0 1.25rem;font-size: 1.1rem}.modal-foot{margin: 1.25rem 0 0;font-size: .92rem;color: var(--muted)}:root[data-theme="contrast"] .modal{border: 1px solid #fff}@media (forced-colors: active){.modal{border: 1px solid CanvasText}}@media (prefers-reduced-motion: reduce){.modal{transition: none}}html.a11y-still .modal{transition: none}.facts{margin: 0}.facts>div{display: grid;grid-template-columns: minmax(9.5rem,auto) 1fr;gap: .2rem 1rem;padding: .75rem 0;border-top: 1px dashed var(--line)}.facts dt{display: flex;align-items: center;gap: .5rem;font-weight: 700}.facts dt .icon{width: 1.1rem;height: 1.1rem;color: var(--accent);flex: none}.facts dd{margin: 0;color: var(--muted)}@media (max-width: 28rem){.facts>div{grid-template-columns: 1fr}}.ai-parts{list-style: none;margin: 0;padding: 0;display: grid;gap: .75rem;grid-template-columns: repeat(auto-fit,minmax(15rem,1fr))}.ai-part{display: grid;gap: .35rem;align-content: start;padding: 1rem 1.1rem;border-radius: 1.1rem 1.1rem 1.1rem .4rem;background: var(--tint-sky)}.ai-part--person{background: var(--tint-butter)}.ai-part-who{justify-self: start;font-size: .75rem;font-weight: 750;padding: .15rem .65rem;border-radius: 999px;background: var(--bg)}.ai-part>span:last-child{color: var(--muted);font-size: .93rem}:root[data-theme="contrast"] .ai-part{border: 1px solid #fff}.byline-initials{display: grid;place-items: center;width: 3.6rem;height: 3.6rem;margin: .55rem;border-radius: 50%;background: var(--tint-sky);color: var(--text);font-family: var(--heading-font);font-weight: 760;font-size: 1.2rem;outline: 2px dashed var(--accent);outline-offset: 4px}.byline .byline-role{color: var(--muted);font-size: .9rem}.byline .byline-role a{font-weight: 600}.mini-badge{display: inline-block;margin-inline-end: .35rem;padding: .05rem .55rem;border-radius: 999px;background: var(--tint);color: var(--text);font-size: .75rem;font-weight: 750}.disclosure{display: grid;grid-template-columns: auto 1fr;gap: .35rem .9rem;align-items: start;margin: 1.5rem 0;padding: 1rem 1.2rem;border: 1.5px dashed color-mix(in srgb,var(--accent) 55%,var(--line));border-radius: 1.2rem;font-size: .95rem}.disclosure-label{font-size: .75rem;font-weight: 750;letter-spacing: .05em;text-transform: uppercase;padding: .2rem .65rem;border-radius: 999px;background: var(--tint);color: var(--text)}.disclosure p{margin: 0}.disclosure a{white-space: nowrap}@media (max-width: 30rem){.disclosure{grid-template-columns: 1fr}.disclosure-label{justify-self: start}.disclosure a{white-space: normal}}.editor-note{position: relative;margin: 1.5rem 0 2.5rem;padding: 1.25rem 1.4rem 1.1rem;background: var(--tint-butter);border-radius: 1.4rem 1.4rem 1.4rem .4rem}.editor-note p{margin: 0 0 .75rem}.editor-note p:last-child{margin-bottom: 0}.editor-note .editor-note-label{font-family: var(--heading-font);font-weight: 760;font-size: 1.05rem}:root[data-theme="contrast"] :is(.editor-note,.disclosure){border: 1px solid #fff}.checked-note{display: flex;gap: .55rem;align-items: flex-start;margin: 1rem 0 0;padding: .7rem 1rem;border-radius: 1rem;background: var(--tint-leaf);font-size: .92rem}.checked-note .icon{flex: none;width: 1.2rem;height: 1.2rem;color: var(--moss);margin-top: .1rem}.tip--hint{pointer-events: none;max-width: 17rem}.tip--hint .tip-title{font-size: .9rem}.tip--hint .tip-text{font-size: .85rem;line-height: 1.4}.site-footer .footer-top{grid-template-columns: minmax(16rem,1.4fr) repeat(2,minmax(11rem,1fr));align-items: start}@media (max-width: 52rem){.site-footer .footer-top{grid-template-columns: repeat(auto-fit,minmax(12rem,1fr))}.footer-about{grid-column: 1 / -1}}.footer-brand{display: flex;align-items: center;gap: .55rem;font-size: 1.25rem !important;text-transform: lowercase;letter-spacing: -.02em}.footer-about p{max-width: 30rem}.social-icons{display: flex !important;flex-wrap: wrap;gap: .5rem !important;margin-top: 1rem !important}.social-icon{display: grid;place-items: center;width: 2.6rem;height: 2.6rem;border-radius: 50%;background: var(--bg);color: var(--text);transition: background .2s,color .2s,translate .2s}.social-icon:hover,.social-icon:focus-visible{background: var(--accent);color: var(--on-accent);translate: 0 -2px}.social-icon .brand-icon,.social-icon svg{width: 1.2rem;height: 1.2rem}.social-icon[data-tip]::after{right: auto;left: 50%;translate: -50% 0;white-space: nowrap}.footer-links ul{gap: .45rem !important}.footer-links a{text-decoration: none}.footer-links a:hover{text-decoration: underline wavy;text-underline-offset: .3em}.footer-legal{display: block !important;margin-top: 2rem;padding-top: 1.25rem;border-top: 1px dashed var(--line);font-size: .85rem}.footer-legal p{margin: 0 0 .4rem}.footer-small a{margin-inline-start: .75rem;color: var(--muted) !important}.spiral-avatar{overflow: visible;isolation: isolate}.spiral-avatar::before{content: "";position: absolute;inset: 0;border-radius: 50%;background: var(--butter);z-index: -1}.spiral-avatar{background: none}.spiral-avatar .spiral{inset: -45%;width: 190%;height: 190%;z-index: 0;stroke-width: 3.6;opacity: .7;-webkit-mask: radial-gradient(closest-side,#000 52%,transparent 98%);mask: radial-gradient(closest-side,#000 52%,transparent 98%)}.spiral-face{position: absolute;inset: 0;z-index: 1;border-radius: 50%;overflow: hidden}.spiral-avatar .spiral-face :is(picture,img){width: 100%;height: 190%}@media (prefers-reduced-motion: no-preference){html:not(.a11y-still) .spiral-avatar .spiral{animation: spiral-out 20s linear infinite,spiral-breathe 7s ease-in-out infinite alternate}}@keyframes spiral-out{to{rotate: -360deg}}@keyframes spiral-breathe{from{scale: .94}to{scale: 1.06}}.not-found .spiral-avatar{margin: 3.5rem auto 3rem}:root[data-theme="contrast"] :is(.ask-ian-panel,.ask-ian-msg,.ask-ian-chips button){border: 1px solid #fff}@media (forced-colors: active){.ask-ian-panel,.ask-ian{border: 1px solid CanvasText}}.ask-ian:focus-visible{outline: 3px solid var(--text);outline-offset: 3px}@media (prefers-reduced-motion: reduce){.ask-ian{transition: none}}.lightbox .lightbox-prev,.lightbox .lightbox-next{top: 50%;translate: 0 -50%;width: 3rem;height: 3rem}.lightbox .lightbox-prev{left: 1rem;right: auto}.lightbox .lightbox-next{right: 1rem}.lightbox-count{display: inline-block;margin-right: .5rem;padding: .1rem .6rem;border-radius: 999px;background: rgb(0 0 0 / .45);font-weight: 700;font-variant-numeric: tabular-nums}.case-hero{padding-block: 1rem 0;background: radial-gradient(50rem 30rem at 90% 0%,var(--tint),transparent 65%)}.case-template-note{margin: 1rem 0 1.5rem;max-width: 46rem}.case-kicker{margin: 0;font-weight: 750;font-size: .85rem;letter-spacing: .08em;text-transform: uppercase;color: var(--accent)}.case h1{font-size: clamp(2rem,1.3rem + 2.8vw,3.4rem);max-width: 22ch;margin: .4rem 0 1rem}.case-lede{font-size: clamp(1.1rem,1rem + .4vw,1.3rem);max-width: 40rem;color: var(--muted);margin: 0 0 1.75rem}.case-facts{display: flex;flex-wrap: wrap;gap: 1rem 2.25rem;margin: 0 0 2rem;padding: 1rem 0;border-block: 1px dashed var(--line)}.case-facts dt{font-size: .78rem;font-weight: 750;letter-spacing: .05em;text-transform: uppercase;color: var(--muted)}.case-facts dd{margin: .15rem 0 0;font-weight: 650}.case-photo{margin-block: 0 2.5rem}.case-photo img{display: block;width: 100%;aspect-ratio: 21 / 9;object-fit: cover;border-radius: var(--radius-l)}.case-photo figcaption{margin-top: .5rem;font-size: .88rem;color: var(--muted)}.case-numbers{list-style: none;padding: 0;margin: 0 0 3rem;display: grid;gap: 1rem;grid-template-columns: repeat(auto-fit,minmax(13rem,1fr))}.case-numbers li{padding: 1.4rem 1.5rem;border-radius: 1.4rem 1.4rem 1.4rem .4rem;background: var(--tint-butter)}.case-numbers li:nth-child(2){background: var(--tint-sky)}.case-numbers li:nth-child(3){background: var(--tint)}.case-numbers b{display: block;font-family: var(--heading-font);font-weight: 760;font-size: clamp(2rem,1.5rem + 2vw,2.8rem);line-height: 1}.case-numbers span{color: var(--muted)}.case-body{max-width: var(--measure);margin-inline: auto;padding-inline: 1rem}.case-quote{margin: 2.5rem 0;padding: 1.75rem;border-radius: 1.6rem;background: var(--surface)}.case-quote blockquote{margin: 0 0 1rem}.case-quote blockquote p{font-size: clamp(1.3rem,1.1rem + .8vw,1.65rem);margin: 0}.case-quote figcaption{display: flex;align-items: center;gap: .8rem;color: var(--muted);font-size: .95rem}.case-quote figcaption strong{color: var(--text)}.case-quote-face{display: grid;place-items: center;width: 3rem;height: 3rem;border-radius: 50%;background: var(--tint-sky);color: var(--text);font-weight: 760}.case-cta{display: grid;grid-template-columns: 1fr auto;gap: 2rem;align-items: center;margin-block: 3rem;padding: 2rem clamp(1.25rem,4vw,3rem);border-radius: 2rem;background: var(--tint)}.case-cta h2{margin: 0 0 .5rem}@media (max-width: 40rem){.case-cta{grid-template-columns: 1fr}.case-cta .ui-ring{display: none}}.case-howto{max-width: var(--measure);padding-block: 1rem 3rem}.not-found{overflow-x: clip}@media (max-width: 24rem){.not-found .spiral-avatar{--size: 10rem !important}}@supports (position-area: bottom){html.anchors .tip--hint{margin: 1.1rem 0 .6rem;position-area: bottom span-left;position-try-fallbacks: flip-inline,flip-block,flip-block flip-inline}}.hr-wave-dash{border: 0;height: 12px;margin: 2.5rem 0;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 12'%3E%3Cpath d='M0 6q10-6 20 0t20 0' fill='none' stroke='%23d65c32' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E") repeat-x left center / 40px 12px}.hr-zigzag{border: 0;height: 12px;margin: 2.5rem 0;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 10l6-8 6 8 6-8 6 8' fill='none' stroke='%23d65c32' stroke-width='2.2' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x left center / 24px 12px}.hr-scribble{border: 0;height: 20px;margin: 2.5rem 0;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 20' preserveAspectRatio='none'%3E%3Cpath d='M4 12c60-8 120-6 190-3s160 4 230-2 110-4 172 1M30 15c80-4 170-5 260-2s170 2 270-3' fill='none' stroke='%23d65c32' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%}.hr-wave-dash--sky{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 12'%3E%3Cpath d='M0 6q10-6 20 0t20 0' fill='none' stroke='%238fb8cc' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E")}.hr-wave-dash--leaf{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 12'%3E%3Cpath d='M0 6q10-6 20 0t20 0' fill='none' stroke='%239cc04a' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E")}.hr-zigzag--butter{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 10l6-8 6 8 6-8 6 8' fill='none' stroke='%23f2c14e' stroke-width='2.2' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E")}.hr-full{width: 100vw;margin-inline: calc(50% - 50vw)}.hr-spark{display: flex;align-items: center;gap: 1rem;margin: 2.5rem 0;border: 0;color: var(--orange)}.hr-spark::before,.hr-spark::after{content: "";flex: 1;border-top: 2px dashed currentColor;opacity: .55}.hr-spark svg{width: 1.6rem;height: 1.6rem;fill: var(--butter);flex: none}.hr-path{position: relative;height: 1.6rem;margin: 2.5rem 0;background: radial-gradient(circle,var(--accent) 2.5px,transparent 3px) repeat-x left center / 16px 8px}.hr-path::after{content: "";position: absolute;right: -.2rem;top: 50%;translate: 0 -50%;width: 1.1rem;height: 1.1rem;background: var(--orange);clip-path: polygon(15% 5%,95% 50%,15% 95%);border-radius: 2px}.hr-stamps{display: flex;justify-content: center;gap: 1.25rem;margin: 2.5rem 0;font-size: 1.3rem;color: var(--accent);letter-spacing: .3em}:root[data-theme="contrast"] :is(.hr-wave-dash,.hr-zigzag,.hr-scribble,.hr-path){filter: grayscale(1) brightness(3)}.topics{font-size: .85rem}.topics .pill{font-size: .8rem;padding: .15rem .65rem}.topics-label{font-size: .78rem}.byline-name .mini-badge{margin-inline: .4rem 0;vertical-align: .15em;font-weight: 700}@media (prefers-reduced-motion: no-preference){html:not(.a11y-still) .byline-photo:is(:hover,:focus-visible)>.ui-ring{scale: 1.16}}@supports (position-area: top){html.anchors .tip{margin: .6rem 0;position-area: top span-right;position-try-fallbacks: flip-inline,--below-clear,--below-clear-left}html.anchors .tip--hint{margin: .6rem 0;position-area: top span-left;position-try-fallbacks: flip-inline,--below-clear,--below-clear-left}}@position-try --below-clear{position-area: bottom span-right;margin: 1.6rem 0 .5rem}@position-try --below-clear-left{position-area: bottom span-left;margin: 1.6rem 0 .5rem}.video .play{font-size: 0;background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5.5v13l10.5-6.5z'/%3E%3C/svg%3E") no-repeat 56% 50% / 46%}.video .play::before,.video .play::after{content: none;display: none}.video a:is(:hover,:focus-visible) .play{scale: 1.06}.video img{transition: transform 2.4s cubic-bezier(.2,.7,.2,1),filter .6s}.video a:is(:hover,:focus-visible) img{transform: scale(1.03)}.toc,.toc ol ol{border-inline-start: 0}.toc ol a{opacity: .55;transition: opacity .25s}.toc:is(:hover,:focus-within) ol a,.toc ol a[aria-current]{opacity: 1}.toc li.is-folded>ol{display: none}.toc-fold{display: inline-grid;place-items: center;width: 1.6rem;height: 1.6rem;margin-inline-start: .15rem;padding: 0;border: 0;border-radius: 50%;background: none;color: var(--muted);cursor: pointer;vertical-align: middle}.toc-fold:hover,.toc-fold:focus-visible{background: var(--surface-2);color: var(--link)}.toc-fold .icon{width: .95rem;height: .95rem;transition: rotate .2s}.toc li.is-folded>.toc-fold .icon{rotate: -90deg}:root[data-theme="contrast"] .toc ol a{opacity: 1}.post-sticky{position: fixed;left: 0;right: 0;top: var(--header-h);z-index: 24;background: var(--header-bg);border-bottom: 1px solid var(--line);backdrop-filter: blur(8px);translate: 0 -120%;opacity: 0;pointer-events: none;transition: translate .3s ease,opacity .2s;cursor: pointer}.post-sticky.is-on{translate: 0 0;opacity: 1;pointer-events: auto}.post-sticky-inner{width: min(100% - 2rem,var(--wide));margin-inline: auto;display: flex;align-items: center;gap: .75rem;padding-block: .45rem}.post-sticky picture,.post-sticky img{display: block;width: 3.2rem;height: 2rem;object-fit: cover;border-radius: .45rem;flex: none}.post-sticky-title{font-family: var(--heading-font);font-weight: 760;font-size: .98rem;line-height: 1.25;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}html:has(.post-sticky.is-on){scroll-padding-top: calc(var(--header-h) + 4rem)}@media (prefers-reduced-motion: reduce){.post-sticky{transition: none}}html.a11y-still .post-sticky{transition: none}@media print{.post-sticky{display: none}}@media (min-width: 72rem){html:has(.post-sticky.is-on) .post-layout>.toc{top: calc(var(--header-h) + 4.5rem);transition: top .3s ease}}.ask-ian{padding: .3rem;gap: 0}.ask-ian-label{display: inline-block;max-width: 0;overflow: hidden;white-space: nowrap;opacity: 0;transition: max-width .35s cubic-bezier(.2,.8,.2,1),opacity .25s,margin .35s}.ask-ian:is(:hover,:focus-visible) .ask-ian-label,.ask-ian[aria-expanded="true"] .ask-ian-label{max-width: 8rem;opacity: 1;margin: 0 .85rem 0 .6rem}@media (prefers-reduced-motion: reduce){.ask-ian-label{transition: none}}html.a11y-still .ask-ian-label{transition: none}[data-count]{font-variant-numeric: tabular-nums}.optional{font-weight: 400;color: var(--muted);font-size: .9em}.label-like{font-weight: 600;margin: 0 0 .25rem}.phone-row{display: grid;grid-template-columns: minmax(15rem,1.5fr) minmax(9rem,1fr) 6.5rem;gap: .75rem;align-items: end}@media (max-width: 52rem){.phone-row{grid-template-columns: 1fr 1fr}.phone-row>:first-child{grid-column: 1 / -1}}.phone-out:empty{display: none}.country-select,.country-select::picker(select){appearance: base-select}.country-select{display: flex;align-items: center;gap: .5rem}.country-select::picker(select){border: 0;border-radius: 1rem;padding: .35rem;background: var(--bg);color: var(--text);box-shadow: 0 0 0 1px var(--line),0 20px 40px -16px var(--shade)}.country-select option{display: flex;align-items: center;gap: .6rem;padding: .45rem .7rem;border-radius: .6rem}.country-select option:is(:hover,:focus-visible){background: var(--tint)}.country-select selectedcontent{display: flex;align-items: center;gap: .5rem}.flag{width: 1.25rem;height: auto;border-radius: 2px;box-shadow: 0 0 0 1px rgb(0 0 0 / .12);flex: none}.recorder{display: grid;gap: .75rem;padding: 1rem 1.1rem;border-radius: 1.2rem;background: var(--surface)}.recorder-controls{display: flex;flex-wrap: wrap;align-items: center;gap: .6rem}.recorder-time{font-variant-numeric: tabular-nums;font-weight: 700;display: inline-flex;align-items: center;gap: .4rem}.recorder-time::before{content: "";width: .7rem;height: .7rem;border-radius: 50%;background: #d12b2b}.recorder audio{width: 100%}.recorder-status{margin: 0;font-size: .92rem;color: var(--muted)}.recorder-file.is-hidden{display: none}.recorder-file{margin-top: .75rem}.comments-break{height: 1.5rem;margin: 4rem 0 0;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 12'%3E%3Cpath d='M0 6q10-6 20 0t20 0' fill='none' stroke='%23d65c32' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E") repeat-x left center / 40px 12px}.comments{margin-top: 1.5rem;padding: clamp(1.25rem,4vw,2.25rem);border-radius: var(--radius-l);background: var(--surface)}.comments-kicker{margin: 0;font-size: .8rem;font-weight: 750;letter-spacing: .1em;text-transform: uppercase;color: var(--accent)}.comments>h2{margin-top: .2rem}.comment-form{display: grid;gap: 1rem;margin: 1.25rem 0 2.25rem;padding: 1.25rem;border-radius: 1.2rem;background: var(--bg)}.comment-form h3{margin: 0;font-size: 1.2rem}.comment-form-intro{margin: -.5rem 0 0;color: var(--muted);font-size: .92rem}.comment-form label{display: block;font-weight: 600;margin-bottom: .3rem}.comment-form label.switch{display: flex;font-weight: 400}.comment-form :is(input[type="text"],input[type="email"],textarea){width: 100%;box-sizing: border-box;font: inherit;padding: .65rem .85rem;border: 2px solid var(--line);border-radius: .8rem;background: var(--bg);color: var(--text)}.comment-form :is(input,textarea):focus-visible{outline: 3px solid var(--accent);outline-offset: 1px}.comment-form-row{display: grid;grid-template-columns: 1fr 1fr;gap: 1rem}@media (max-width: 36rem){.comment-form-row{grid-template-columns: 1fr}}.comment-form .hint{margin: -.5rem 0 0;font-size: .88rem;color: var(--muted)}.comment-form-actions{display: flex;flex-wrap: wrap;align-items: center;gap: .5rem 1rem;margin: 0}.comment-form-actions .hint{margin: 0}.glossary-open{margin: 2rem 0 0}.glossary{margin: 0;display: grid;gap: .1rem}.glossary>div{display: grid;grid-template-columns: 6.5rem 1fr;gap: .25rem 1rem;padding: .7rem 0;border-top: 1px dashed var(--line)}.glossary dt{font-family: var(--heading-font);font-weight: 760;font-size: 1.05rem}.glossary dd{margin: 0;color: var(--muted)}.glossary dd strong{color: var(--text)}@media (max-width: 28rem){.glossary>div{grid-template-columns: 1fr}}.form .choices{display: flex;flex-wrap: wrap;gap: .5rem}.form .choices label{display: inline-flex;align-items: center;gap: .45rem;white-space: nowrap;padding: .45rem .95rem;border: 2px solid var(--line);border-radius: 999px;font-weight: 500}.form .choices label:has(input:checked){border-color: var(--accent);background: var(--tint)}:is(.case-facts dt){text-transform: none;letter-spacing: 0;font-size: .85rem}.post-list a,.post-list a:hover,.card-link :is(h2,h3) a:hover{text-decoration: none}.card-link:hover :is(h2,h3) a{color: var(--link)}.lightbox img{max-width: min(94vw,72rem);max-height: 84vh}.lightbox figure{max-width: min(94vw,72rem)}.pill--platform{display: inline-flex;align-items: center;gap: .45rem}.pill--platform .brand-icon{width: 1.05rem;height: 1.05rem}.article-body table{background: linear-gradient(to right,var(--bg) 30%,transparent),linear-gradient(to left,var(--bg) 30%,transparent) 100% 0,radial-gradient(farthest-side at 0 50%,var(--shade),transparent),radial-gradient(farthest-side at 100% 50%,var(--shade),transparent) 100% 0;background-repeat: no-repeat;background-size: 2.5rem 100%,2.5rem 100%,.9rem 100%,.9rem 100%;background-attachment: local,local,scroll,scroll}html.js [data-tip]::after{content: none !important;display: none !important}.logos img{filter: grayscale(1) opacity(.7);transition: filter .5s ease}.logos li:hover img{filter: none}:root:is([data-theme="dark"],[data-theme="contrast"]) .logos li{background: none;padding: 0}@media (prefers-color-scheme: dark){:root:not([data-theme]) .logos li{background: none;padding: 0}}:root:is([data-theme="dark"],[data-theme="contrast"]) .logos img.logo-svg:not(.logo-keep){filter: brightness(0) invert(.86)}@media (prefers-color-scheme: dark){:root:not([data-theme]) .logos img.logo-svg:not(.logo-keep){filter: brightness(0) invert(.86)}}:root[data-theme="dark"] .logos li:hover,:root:not([data-theme]) .logos li:hover{border-radius: .8rem;transition: background-color .5s}:root[data-theme="dark"] .logos li:hover{background: #f6f1ec}@media (prefers-color-scheme: dark){:root:not([data-theme]) .logos li:hover{background: #f6f1ec}:root:not([data-theme]) .logos li:hover img{filter: none}}:root[data-theme="dark"] .logos li:hover img{filter: none}.logos img.logo-svg{max-height: 2.6rem;width: auto;max-width: 100%;height: auto}:is(.logos,.ui-logos,.ui-marquee) img.logo-white,:is(.logos,.ui-logos,.ui-marquee) li:hover img.logo-white{filter: brightness(0) opacity(.7)}