.read-progress{z-index:60;background:linear-gradient(to right, #3e8b5700, var(--ember) 60%, var(--ember-soft));width:0;height:2px;transition:width .12s linear;position:fixed;inset:0 auto auto 0;box-shadow:0 0 12px #4caf6e99}.article-page{padding-bottom:4rem;position:relative}.article-head{padding:5.5rem 0 3rem;position:relative}.article-head:before{content:"";z-index:-1;pointer-events:none;filter:blur(18px);background:radial-gradient(at 40% 60%,#c6d2e221,#0000 68%);width:min(120%,68rem);height:22rem;position:absolute;top:3rem;left:50%;transform:translate(-50%)}.article-labels{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-bottom:1.6rem;display:flex}.label-category{font-family:var(--font-latin);letter-spacing:.24em;text-transform:uppercase;color:var(--ember-soft);background:#3e8b5714;border:1px solid #4caf6e6b;border-radius:999px;padding:.28rem .9rem;font-size:.8rem}.article-title{font-family:var(--font-serif);letter-spacing:.085em;max-width:22em;color:var(--ink-strong);text-shadow:0 1px #070a12b3,0 0 24px #c6d4e838,0 0 60px #a0b4d224;margin:0 0 1.8rem;font-size:clamp(1.85rem,4.6vw,3rem);font-weight:400;line-height:1.62}.article-lead{max-width:var(--measure);color:var(--ink-mute);margin:0 0 2.6rem;font-size:1.02rem;line-height:2.05}.article-meta{border-top:1px solid var(--line-soft);font-family:var(--font-latin);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);flex-wrap:wrap;gap:.6rem 2rem;padding-top:1.6rem;font-size:.88rem;display:flex}.article-meta dt{color:#e9e6dd4d;margin-right:.5rem;display:inline}.article-meta dd{color:var(--ink-mute);margin:0;display:inline}.article-meta>div{align-items:baseline;display:inline-flex}.article-figure{border-radius:2px;margin:0 0 4rem;position:relative;overflow:hidden}.article-figure img{aspect-ratio:16/9;object-fit:cover;filter:saturate(.86)contrast(1.04)brightness(.92);width:100%}.article-figure:after{content:"";pointer-events:none;background:linear-gradient(#0000,#070a12d9);height:45%;position:absolute;inset:auto 0 0}.article-figure figcaption{letter-spacing:.12em;color:var(--ink-mute);font-size:.8rem;position:absolute;bottom:1.1rem;left:1.4rem}.article-page .shell{width:min(100% - 2.5rem,62rem)}.article-grid{grid-template-columns:minmax(0,1fr) 14.5rem;align-items:start;gap:3rem;display:grid}@media (width<=62rem){.article-grid{grid-template-columns:minmax(0,1fr);gap:0}}.toc{border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(6px);background:linear-gradient(160deg,#121b2bb8,#070a128c);border-left:2px solid #3e8b5780;margin:0 0 3.5rem;padding:1.6rem 1.5rem 1.7rem}.toc__title{font-family:var(--font-latin);letter-spacing:.3em;text-transform:uppercase;color:var(--ember-soft);margin:0 0 .2rem;font-size:.86rem}.toc__sub{letter-spacing:.1em;color:var(--ink-faint);margin:0 0 1.2rem;font-size:.76rem}.toc ol{counter-reset:toc;margin:0;padding:0;list-style:none}.toc li{margin:0}.toc a{letter-spacing:.03em;color:var(--ink-mute);transition:color .2s var(--ease), transform .2s var(--ease);gap:.75rem;padding:.42rem 0;font-size:.88rem;line-height:1.7;text-decoration:none;display:flex}.toc a:before{counter-increment:toc;content:counter(toc, decimal-leading-zero);font-family:var(--font-latin);letter-spacing:.1em;color:#e9e6dd47;flex:none;padding-top:.12rem;font-size:.78rem}.toc a:hover{color:var(--ink-strong);transform:translate(2px)}.toc a.is-current{color:var(--ink-strong)}.toc a.is-current:before{color:var(--ember)}.toc--aside{scrollbar-width:thin;max-height:calc(100vh - 9rem);margin:0;position:sticky;top:6rem;overflow-y:auto}@media (width<=62rem){.toc--aside{display:none}}@media (width>=62.01rem){.toc--inline{display:none}}.prose{font-size:1.02rem}.prose>*{margin-block:0}.prose>*+*{margin-top:1.8em}.prose p{color:var(--ink)}.prose h2{font-family:var(--font-serif);letter-spacing:.07em;color:var(--ink-strong);border-bottom:1px solid var(--line-soft);text-shadow:0 0 30px #c6d4e829;margin:4.2rem 0 0;padding:0 0 .9rem;font-size:clamp(1.35rem,3vw,1.72rem);font-weight:400;line-height:1.7;position:relative}.prose h2:before{content:"";background:linear-gradient(to bottom, var(--ember), #4caf6e00);width:3px;height:1.15em;position:absolute;top:.35em;left:-1.6rem}@media (width<=48rem){.prose h2:before{left:-.9rem}}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:1.15em}.prose h3{font-family:var(--font-serif);letter-spacing:.06em;color:var(--ink-strong);border-left:1px solid #4caf6e8c;margin:2.8rem 0 0;padding-left:.9rem;font-size:1.16rem;font-weight:400;line-height:1.8}.prose h4{letter-spacing:.06em;color:var(--ember-soft);margin:2.2rem 0 0;font-size:1rem;font-weight:500}.prose a{color:var(--ember-soft);transition:text-decoration-color .2s var(--ease);-webkit-text-decoration:underline #4caf6e59;text-decoration:underline #4caf6e59}.prose a:hover{-webkit-text-decoration-color:var(--ember-soft);text-decoration-color:var(--ember-soft)}.prose strong{color:var(--ink-strong);background:linear-gradient(0deg,#3e8b5738 .35em,#0000 .35em);font-weight:500}.prose em{color:var(--ember-soft);font-style:normal}.prose ul,.prose ol{margin-block:1.6em;padding-left:0;list-style:none}.prose li+li{margin-top:.6em}.prose ul>li{padding-left:1.6rem;position:relative}.prose ul>li:before{content:"";border-bottom:6px solid #4caf6ebf;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;position:absolute;top:.85em;left:.25rem}.prose ol{counter-reset:li}.prose ol>li{counter-increment:li;padding-left:2.1rem;position:relative}.prose ol>li:before{content:counter(li, decimal-leading-zero);font-family:var(--font-latin);letter-spacing:.08em;color:var(--ember);font-size:.88rem;position:absolute;top:.05em;left:0}.prose blockquote{color:var(--ink-mute);font-family:var(--font-serif);letter-spacing:.05em;border-left:1px solid #4caf6e66;margin:2.4em 0;padding:.2rem 0 .2rem 1.6rem;font-size:1.02rem;line-height:2}.prose blockquote p{color:inherit}.prose img{filter:saturate(.88)brightness(.94);border-radius:2px;width:100%}.prose figure{margin:2.6em 0}.prose figcaption{letter-spacing:.08em;color:var(--ink-faint);margin-top:.7rem;font-size:.82rem}.prose hr{background:linear-gradient(to right, transparent, var(--line), transparent);border:0;height:1px;margin:3.5rem 0}.prose code{background:#e9e6dd14;border-radius:2px;padding:.1em .4em;font-size:.9em}.prose .table-scroll{border:1px solid var(--line-soft);margin:2.4em 0;overflow-x:auto}.prose table{border-collapse:collapse;letter-spacing:.03em;width:100%;font-size:.92rem}.prose th,.prose td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;white-space:normal;padding:.85rem 1.1rem}.prose thead th{font-family:var(--font-latin);letter-spacing:.16em;text-transform:uppercase;color:var(--ember-soft);background:#121b2b99;font-size:.86rem}.prose tbody tr:nth-child(odd){background:#e9e6dd06}.prose .note{border:1px solid var(--line-soft);background:#121b2b80;border-top:2px solid #7f917999;margin:2.4em 0;padding:1.4rem 1.5rem;font-size:.95rem}.prose .note>:first-child{margin-top:0}.prose .note>:last-child{margin-bottom:0}.prose .note__title{font-family:var(--font-latin);letter-spacing:.24em;text-transform:uppercase;color:var(--moss);margin-bottom:.6rem;font-size:.82rem;display:block}.prose .warn{border-top-color:#3e8b57cc}.prose .warn .note__title{color:var(--ember)}.prose .pr-notice{border:1px solid var(--line-soft);letter-spacing:.04em;color:var(--ink-faint);margin:0 0 2.4em;padding:.7rem .9rem;font-size:.8rem;line-height:1.8}.prose .checklist{border:1px solid var(--line-soft);background:linear-gradient(160deg,#121b2ba8,#070a1273);margin:2.4em 0;padding:1.6rem 1.6rem 1.7rem}.prose .checklist ul{margin:0}.prose .checklist ul>li{border-bottom:1px dashed #e9e6dd17;padding-bottom:.55em;padding-left:2rem}.prose .checklist ul>li:last-child{border-bottom:0}.prose .checklist ul>li:before{border:1px solid #4caf6e99;border-radius:1px;width:.85rem;height:.85rem;top:.62em;left:0}.prose .source{color:var(--ink-faint);letter-spacing:.06em;font-size:.8rem}.faq{margin:5rem 0 0}.faq__heading{font-family:var(--font-serif);letter-spacing:.08em;color:var(--ink-strong);border-bottom:1px solid var(--line-soft);margin:0 0 1.6rem;padding-bottom:.9rem;font-size:1.5rem;font-weight:400}.faq details{border-bottom:1px solid var(--line-soft)}.faq summary{cursor:pointer;color:var(--ink-strong);letter-spacing:.04em;transition:color .2s var(--ease);align-items:baseline;gap:.9rem;padding:1.15rem 0;font-size:.98rem;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q";font-family:var(--font-latin);letter-spacing:.1em;color:var(--ember);flex:none;font-size:.95rem}.faq summary:hover,.faq details[open] summary{color:var(--ember-soft)}.faq__answer{color:var(--ink-mute);gap:.9rem;padding:0 0 1.4rem;font-size:.95rem;display:flex}.faq__answer:before{content:"A";font-family:var(--font-latin);letter-spacing:.1em;color:var(--ink-faint);flex:none;font-size:.95rem}.faq__answer p{margin:0}.author{border-top:1px solid var(--line);grid-template-columns:7rem minmax(0,1fr);align-items:start;gap:1.5rem;margin:5rem 0 0;padding:1.9rem 0 0;display:grid}.author__label{font-family:var(--font-latin);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint);margin:0;padding-top:.35rem;font-size:.78rem}.author__name{font-family:var(--font-serif);letter-spacing:.08em;color:var(--ink-strong);margin:0 0 .2rem;font-size:1.12rem;font-weight:400}.author__role{font-family:var(--font-latin);letter-spacing:.2em;text-transform:uppercase;color:var(--ember-soft);margin:0 0 .9rem;font-size:.8rem}.author__bio{color:var(--ink-mute);margin:0;font-size:.92rem;line-height:1.95}@media (width<=44rem){.author{grid-template-columns:minmax(0,1fr);gap:.9rem}.author__label{padding-top:0}}.article-tail{margin-top:4rem}.tag-list{flex-wrap:wrap;gap:.6rem;margin:0 0 2.5rem;padding:0;list-style:none;display:flex}.tag-list li{letter-spacing:.08em;color:var(--ink-mute);border:1px solid var(--line-soft);border-radius:999px;padding:.28rem .85rem;font-size:.82rem}.tag-list li:before{content:"#";color:var(--ink-faint);margin-right:.25em}.share{border-top:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:1.2rem;padding-top:1.8rem;display:flex}.share__label{font-family:var(--font-latin);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint);min-width:4rem;font-size:.8rem}.share__copy{width:2rem;height:2rem;font:inherit;color:var(--ink-mute);border:1px solid var(--line-soft);cursor:pointer;transition:color .2s var(--ease), border-color .2s var(--ease);background:0 0;border-radius:50%;place-items:center;padding:0;font-size:.95rem;line-height:1;display:grid}.share__copy:hover{color:var(--ink-strong);border-color:var(--line)}.share__copy.is-done{color:var(--ember-soft);border-color:var(--ember)}.related{border-top:1px solid var(--line);margin-top:6rem;padding-top:2.2rem}.related__head{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-bottom:.5rem;display:flex}.related__heading{font-family:var(--font-latin);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-strong);margin:0;font-size:.86rem;font-weight:400}.related__all{font-family:var(--font-latin);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);transition:color .2s var(--ease);font-size:.82rem;text-decoration:none}.related__all:hover{color:var(--ember-soft)}.related__list{counter-reset:rel;margin:0;padding:0;list-style:none}.related__list li{border-top:1px solid var(--line-soft)}.related__list a{transition:opacity .25s var(--ease);grid-template-columns:3.2rem minmax(0,1fr) 8rem 1.5rem;align-items:center;gap:1.5rem;padding:1.5rem 0;text-decoration:none;display:grid}.related__list a:before{counter-increment:rel;content:counter(rel, decimal-leading-zero);font-family:var(--font-latin);letter-spacing:.16em;color:var(--ink-faint);font-size:.82rem}.related__list h3{font-family:var(--font-serif);letter-spacing:.05em;color:var(--ink-strong);transition:color .25s var(--ease);margin:0;font-size:1.05rem;font-weight:400;line-height:1.7}.related__list .card-meta{font-family:var(--font-latin);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);text-align:right;font-size:.78rem}.related__list .arrow{font-family:var(--font-latin);color:var(--ink-faint);transition:transform .3s var(--ease), color .25s var(--ease);justify-self:end}.related__list a:hover h3{color:var(--ember-soft)}.related__list a:hover .arrow{color:var(--ember-soft);transform:translate(6px)}@media (width<=44rem){.related__list a{grid-template-columns:2.4rem minmax(0,1fr);gap:0 1rem}.related__list .card-meta{text-align:left;grid-column:2;margin-top:.35rem}.related__list .arrow{display:none}}.to-top{z-index:50;border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(8px);width:2.9rem;height:2.9rem;color:var(--ink-mute);opacity:0;pointer-events:none;transition:opacity .35s var(--ease), transform .35s var(--ease), color .2s var(--ease);background:#070a12b8;border-radius:50%;place-items:center;font-size:.9rem;text-decoration:none;display:grid;position:fixed;bottom:1.8rem;right:1.6rem;transform:translateY(10px)}.to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.to-top:hover{color:var(--ember-soft)}.fade-up{opacity:0;filter:blur(6px);transition:opacity .9s var(--ease), transform .9s var(--ease), filter .9s var(--ease);transform:translateY(14px)}.fade-up.is-in{opacity:1;filter:none;transform:none}@media (prefers-reduced-motion:reduce){.fade-up{opacity:1;filter:none;transition:none;transform:none}.read-progress{transition:none}}@media (width<=48rem){.article-head{padding-top:3.5rem}.prose{font-size:1rem}.article-grid{gap:0}}.follow-rail{z-index:30;justify-items:center;gap:.9rem;display:grid;position:fixed;top:50%;left:max(1.5rem,50% - 36.5rem);transform:translateY(-50%)}.follow-rail__label{font-family:var(--font-latin);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);writing-mode:vertical-rl;font-size:.76rem}.follow-rail__line{background:linear-gradient(to bottom, var(--line), transparent);width:1px;height:2.2rem}.follow-rail ul{justify-items:center;gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.follow-rail a{width:2.1rem;height:2.1rem;color:var(--ink-faint);transition:color .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);border:1px solid #0000;border-radius:50%;place-items:center;display:grid}.follow-rail a:hover{color:var(--ink-strong);border-color:var(--line-soft);transform:translateY(-1px)}@media (width<=80rem){.follow-rail{display:none}}
