@keyframes drift{0%{transform:rotate(0)scale(1)}50%{transform:rotate(180deg)scale(1.06)}to{transform:rotate(360deg)scale(1)}}.spiral{pointer-events:none;transform-origin:50%;will-change:transform;z-index:0;animation:120s linear infinite drift;position:absolute}.spiral.b{animation-duration:150s;animation-direction:reverse}.crumb{color:var(--fg-2);align-items:center;gap:8px;font-size:14px;display:inline-flex}.crumb:hover{color:var(--coral)}.phero{background:url(/images/noise-texture.png) 0 0/72px 72px,radial-gradient(66% 58% at 22% 6%,#ff764926 0,#ff764900 62%),linear-gradient(158deg,#164c50 0%,#0b3237 100%);padding:38px 0 76px;position:relative;overflow:hidden}.phero .wrap{z-index:1;position:relative}.phero .crumb{color:#9fc0c3}.phero .crumb:hover{color:var(--coral)}.phero h1{max-width:24ch;color:var(--fg-inv);font-size:clamp(34px,4vw,50px)}.phero .pmeta{color:#ff9270}.phero .pmeta .d{background:#ffffff47}.phero .pmeta .n{color:#9fc0c3}.phero .pdek{color:#cfddde}.phero .pauth{border-top-color:#ffffff2e}.phero .pauth .av{color:#fff;background:#ffffff1a;border-color:#ffffff42;width:46px;height:46px;font-size:14px}.phero .pauth{--byline-name:var(--fg-inv);--byline-meta:#9fc0c3}.phero .spiral{filter:brightness(0)invert();opacity:.12}.pmeta{letter-spacing:.14em;text-transform:uppercase;color:var(--coral-deep);align-items:center;gap:11px;margin-top:38px;font-size:11.5px;display:flex}.pmeta .d{background:var(--line);border-radius:50%;width:3px;height:3px}.pmeta .n{color:var(--fg-3);letter-spacing:.08em}.phero h1{max-width:26ch;margin-top:18px}.pdek{color:var(--fg-2);max-width:56ch;margin-top:22px;font-size:19px;line-height:1.55}.pauth{border-top:1px solid var(--mist);align-items:center;gap:14px;max-width:520px;margin-top:34px;padding:22px 0 0;display:flex}.pauth .av{width:46px;height:46px;font-size:14px}.pauth .who{color:var(--fg-1);font-size:15.5px;font-weight:500}.pauth .role{color:var(--fg-2);font-size:13.5px}.pbody{grid-template-columns:minmax(0,1fr) 264px;align-items:start;gap:80px;padding-top:56px;display:grid}@media (width<=1080px){.pbody{grid-template-columns:1fr;gap:40px}}.prose{color:#33474a;max-width:62ch;font-size:16.5px;line-height:1.7}.prose>p+p{margin-top:20px}.prose h2{color:var(--fg-1);margin:44px 0 0;font-size:23px;font-weight:600;line-height:1.3}.prose h2+p{margin-top:16px}.prose h3{margin:32px 0 0}.prose h3+p{margin-top:12px}.prose h2+h3{margin-top:20px}.prose ul{flex-direction:column;gap:11px;margin:20px 0 0;list-style:none;display:flex}.prose ul li{padding-left:22px;position:relative}.prose ul li:before{content:"";background:var(--coral);border-radius:50%;width:6px;height:6px;position:absolute;top:11px;left:2px}.prose code{background:var(--gray-100);border:1px solid var(--mist);color:#12484e;border-radius:5px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14.5px}.prose strong{color:var(--fg-1);font-weight:600}.prose a{color:var(--coral-deep);border-bottom:0;text-decoration:none}.prose a:hover,.prose a:focus-visible{text-underline-offset:2px;text-decoration:underline}.prose hr{border:0;border-top:1px solid var(--mist);margin:44px 0 0}.table-scroll{-webkit-overflow-scrolling:touch;border:1px solid var(--mist);border-radius:12px;margin-top:28px;overflow-x:auto}.prose table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:480px;font-size:14.5px;line-height:1.5}.prose thead th{text-align:left;vertical-align:bottom;background:var(--gray-50);border-bottom:1px solid var(--mist);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);font-size:11.5px;font-weight:var(--weight-medium);padding:13px 16px}.prose tbody td{border-bottom:1px solid var(--gray-100);vertical-align:top;color:var(--fg-2);padding:13px 16px}.prose tbody tr:last-child td{border-bottom:0}.prose tbody td:first-child{color:var(--fg-1);font-weight:var(--weight-medium)}figure{width:min(100%,760px);margin:38px 0 0}figure img,figure .fr{border:1px solid var(--mist);background:#f1f2f4;border-radius:14px;padding:26px}figure img,figure svg{width:100%;height:auto;display:block}figcaption{color:var(--fg-3);margin-top:12px;font-size:13.5px;line-height:1.55}figure.fig-plain img{border-radius:12px}.callout{background:var(--coral-wash);border:1px solid #ff764966;border-radius:14px;margin-top:34px;padding:26px 28px}.callout .k{letter-spacing:.16em;text-transform:uppercase;color:var(--coral-deep);font-size:11.5px}.callout p{color:var(--fg-1);margin-top:12px;font-size:16.5px;line-height:1.6}.faqs{flex-direction:column;margin-top:22px;display:flex}.faqs details{border-bottom:1px solid var(--line)}.faqs summary{cursor:pointer;color:var(--fg-1);justify-content:space-between;align-items:center;gap:22px;padding:20px 0;font-size:17px;font-weight:500;list-style:none;display:flex}.faqs summary::-webkit-details-marker{display:none}.faqs summary:hover{color:var(--coral)}.faqs summary .pl{color:var(--coral);transition:transform .24s var(--ease);flex:none;font-size:19px}.faqs details[open] summary .pl{transform:rotate(45deg)}.faqs .a{color:var(--fg-2);padding:0 40px 22px 0;font-size:15.5px;line-height:1.62}.srcs{flex-direction:column;gap:16px;margin-top:22px;display:flex}.srcs .s{color:var(--fg-2);font-size:15px;line-height:1.6}.srcs .s b{color:var(--fg-1);font-weight:600}.reflist{flex-direction:column;gap:9px;margin-top:20px;font-size:14.5px;display:flex}.reflist a{word-break:break-all}.tags{border-top:1px solid var(--mist);flex-wrap:wrap;gap:9px;margin-top:44px;padding-top:30px;display:flex}.tag{border:1px solid var(--line);color:var(--fg-2);border-radius:999px;padding:7px 15px;font-size:13.5px}.rail{flex-direction:column;gap:26px;display:flex;position:sticky;top:118px}@media (width<=1080px){.rail{position:static}}.rail .rt{letter-spacing:.16em;text-transform:uppercase;color:var(--fg-3);font-size:11.5px}.toc{border-left:1px solid var(--mist);flex-direction:column;gap:2px;margin-top:16px;display:flex}.toc a{color:var(--fg-2);border-left:1px solid #0000;margin-left:-1px;padding:8px 0 8px 16px;font-size:14px;line-height:1.4}.toc a:hover{color:var(--fg-1);border-left-color:var(--line)}.toc a.on{color:var(--coral-deep);border-left-color:var(--coral);font-weight:500}.wpmini{border:1px solid var(--mist);background:var(--gray-0);border-radius:14px;overflow:hidden}.wpmini .cv{background:url(/images/noise-texture.png) 0 0/72px 72px,radial-gradient(78% 66% at 14% 88%,#ff764938 0,#ff764900 60%),linear-gradient(150deg,#164c50 0%,#0b3237 100%);flex-direction:column;justify-content:space-between;min-height:132px;padding:22px;display:flex;position:relative;overflow:hidden}.wpmini .cv>*{z-index:1;position:relative}.wpmini .cv .t{letter-spacing:.18em;text-transform:uppercase;color:#ff9270;font-size:10.5px}.wpmini .cv .n{color:var(--fg-inv);letter-spacing:-.02em;margin-top:10px;font-size:16px;font-weight:500;line-height:1.3}.wpmini .in{padding:20px}.wpmini .in .m{color:var(--fg-2);font-size:13px}.wpmini .in .go{color:var(--coral-deep);align-items:center;gap:8px;margin-top:14px;font-size:14.5px;font-weight:500;display:inline-flex}.wpmini:hover .in .go{gap:13px}.share{flex-direction:column;gap:12px;display:flex}.share .row{gap:9px;display:flex}.share .row a{border:1px solid var(--line);width:38px;height:38px;color:var(--fg-2);border-radius:999px;place-items:center;display:grid}.share .row a:hover{border-color:var(--coral);color:var(--coral)}.share .row svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.pgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:34px;display:grid}@media (width<=980px){.pgrid{grid-template-columns:1fr}}.post{border:1px solid var(--mist);background:var(--gray-0);transition:box-shadow .22s var(--ease),transform .22s var(--ease);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.post:hover{transform:translateY(-3px);box-shadow:0 18px 44px #082f341a}.post .body{flex-direction:column;flex:1;gap:14px;padding:26px;display:flex}.post .tags-line{letter-spacing:.12em;text-transform:uppercase;color:var(--coral-deep);align-items:center;gap:10px;font-size:11.5px;display:flex}.post .tags-line .d{background:var(--line);border-radius:50%;width:3px;height:3px}.post .byline{margin-top:auto;padding-top:12px}.share .row button{border:1px solid var(--line);width:38px;height:38px;color:var(--fg-2);cursor:pointer;background:0 0;border-radius:999px;place-items:center;display:grid}.share .row button:hover{border-color:var(--coral);color:var(--coral)}
