.blog-article{color:#1e293b;overflow-wrap:anywhere;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-size:1.0625rem;line-height:1.85}.blog-article article,.blog-article section,.blog-article div,.blog-article footer{max-width:100%}.blog-article h1{display:none}.blog-article h2{color:#0f172a;letter-spacing:-.01em;border-bottom:2px solid #e2e8f0;margin:3.5rem 0 1.25rem;padding-bottom:.75rem;scroll-margin-top:5rem;font:700 1.625rem/1.25 Barlow Condensed,sans-serif}.blog-article h3{color:#0f172a;letter-spacing:-.01em;border-left:3px solid #2f6fd0;margin:2.5rem 0 1rem;padding-left:1rem;scroll-margin-top:5rem;font:700 1.3rem/1.35 Barlow Condensed,sans-serif}.blog-article h4{color:#0f172a;margin:2rem 0 .75rem;font:600 1.125rem/1.4 Barlow Condensed,sans-serif}.blog-article p{color:#334155;margin-bottom:1.5rem;line-height:1.85}.blog-article p.numbered-item{padding-left:1.5rem;position:relative}.blog-article strong{color:#0f172a;font-weight:700}.blog-article a{color:#2f6fd0;border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s,color .2s}.blog-article a:hover{color:#1d4ed8;border-bottom-color:#2f6fd0}.blog-article ul,.blog-article ol{margin:1.5rem 0;padding-left:0;list-style:none}.blog-article ul>li,.blog-article ol>li{color:#334155;margin-bottom:.875rem;line-height:1.75;position:relative}.blog-article ul>li{padding-left:1.75rem}.blog-article ul>li:before{content:"";opacity:.8;background:#2f6fd0;border-radius:50%;width:8px;height:8px;position:absolute;top:.7em;left:.25rem}.blog-article ol{counter-reset:ol-counter}.blog-article ol>li{counter-increment:ol-counter;padding-left:2.25rem}.blog-article ol>li:before{content:counter(ol-counter) ".";color:#2f6fd0;font:700 1rem/1.75 Barlow Condensed,sans-serif;position:absolute;top:0;left:0}.blog-article pre{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border:1px solid #334155;border-radius:12px;margin:2.5rem 0;padding:1.75rem 2rem;position:relative;overflow-x:auto;box-shadow:0 4px 16px #0003}.blog-article pre:before{content:"";background:linear-gradient(90deg,#2f6fd0,#5b9aff,#2f6fd0);border-radius:12px 12px 0 0;height:3px;position:absolute;inset:0 0 auto}.blog-article pre code{color:#e2e8f0;white-space:pre-wrap;word-break:break-word;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:.875rem;line-height:1.9}.blog-article code:not(pre code){color:#2f6fd0;background:#f1f5f9;border-radius:5px;padding:.2rem .45rem;font:500 .88em/1.4 JetBrains Mono,Fira Code,ui-monospace,monospace}.blog-article blockquote{color:#1e293b;background:linear-gradient(135deg,#f0f7ff 0%,#f8fafc 100%);border-left:4px solid #2f6fd0;border-radius:0 12px 12px 0;margin:2.5rem 0;padding:1.5rem 1.75rem;font-size:1.05rem;font-style:italic;font-weight:500;line-height:1.7;position:relative;box-shadow:0 2px 8px #2f6fd014}.blog-article blockquote:before{content:"“";color:#2f6fd0;opacity:.15;font:3.5rem/1 Georgia,serif;position:absolute;top:-.25rem;left:1rem}.blog-article blockquote strong{color:#2f6fd0}.blog-article blockquote p{color:#1e293b;margin-bottom:0}.blog-article .blog-table-scroll{-webkit-overflow-scrolling:touch;border-radius:12px;margin:2.5rem 0;overflow-x:auto;box-shadow:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000d}.blog-article .blog-table-scroll table{min-width:45rem;box-shadow:none;margin:0}.blog-article .blog-table--city-cases :is(th,td):first-child{width:18%}.blog-article .blog-table--city-cases :is(th,td):nth-child(2){width:45%}.blog-article .blog-table--city-cases :is(th,td):nth-child(3){width:37%}.blog-article table{border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:12px;width:100%;margin:2.5rem 0;overflow:hidden;box-shadow:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000d}.blog-article caption{color:#475569;text-align:left;caption-side:top;padding:0 0 .75rem;font-size:.875rem;font-weight:600;line-height:1.5}.blog-article thead{background:linear-gradient(135deg,#1e293b 0%,#334155 100%)}.blog-article thead th{color:#fff;text-align:left;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #2f6fd0;padding:1rem 1.25rem;font-size:.85rem;font-weight:600}.blog-article tbody tr{transition:background-color .15s}.blog-article tbody tr:nth-child(2n){background-color:#f8fafc}.blog-article tbody tr:hover{background-color:#eff6ff}.blog-article tbody td{color:#334155;border-bottom:1px solid #e2e8f0;padding:.875rem 1.25rem;font-size:.95rem;line-height:1.6}.blog-article tbody tr:last-child td{border-bottom:0}.blog-article tbody td:first-child{color:#1e293b;font-weight:600}.blog-article dl{background:linear-gradient(135deg,#f8fbff 0%,#f8fafc 100%);border:1px solid #dbeafe;border-radius:16px;margin:1.5rem 0 2rem;padding:1.5rem}.blog-article dt{color:#0f172a;margin-top:1.25rem;font-weight:700;line-height:1.55}.blog-article dt:first-child{margin-top:0}.blog-article dd{color:#334155;margin:.35rem 0 0;line-height:1.75}.blog-article figure{margin:2.5rem 0}.blog-article img{border-radius:12px;max-width:100%;height:auto;margin:2rem auto;box-shadow:0 4px 12px #0000001a}.blog-article figure img{margin-bottom:.75rem}.blog-article figcaption{color:#64748b;text-align:center;font-size:.8125rem;line-height:1.5}.blog-article hr{background:linear-gradient(90deg,#0000,#e2e8f0,#0000);border:0;height:1px;margin:3rem 0}.blog-article em{color:#475569;font-style:italic}.toc-sidebar{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;max-height:calc(100vh - 8rem);position:sticky;top:6rem;overflow-y:auto}.toc-sidebar::-webkit-scrollbar{width:4px}.toc-sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.toc-link{color:#64748b;border-left:2px solid #e2e8f0;padding:.5rem .75rem;font-size:.8125rem;line-height:1.4;text-decoration:none;transition:all .2s;display:block}.toc-link:hover{color:#2f6fd0;background:#f8fafc;border-left-color:#2f6fd0}.toc-link.active{color:#2f6fd0;background:#eff6ff;border-left-color:#2f6fd0;font-weight:600}.toc-mobile-toggle{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:.5rem;width:100%;padding:.875rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.toc-mobile-toggle:hover{background:#f1f5f9;border-color:#cbd5e1}.toc-mobile-content{max-height:0;transition:max-height .3s;overflow:hidden}.toc-mobile-content.open{max-height:600px}.toc-mobile-link{color:#64748b;border-left:2px solid #e2e8f0;padding:.625rem 1rem;font-size:.8125rem;text-decoration:none;transition:all .2s;display:block}.toc-mobile-link:hover{color:#2f6fd0;border-left-color:#2f6fd0}.share-button{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.625rem;padding:.75rem 1.25rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.875rem;font-weight:500;transition:all .3s;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.share-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0f172a14}.share-button.copy-success{color:#059669;background:#ecfdf5;border-color:#6ee7b7}@media (width<=640px){.blog-article{font-size:1rem}.blog-article h2{margin-top:2.5rem;font-size:1.375rem}.blog-article h3{margin-top:2rem;font-size:1.15rem}.blog-article table{font-size:.85rem;display:block;overflow-x:auto}.blog-article thead th,.blog-article tbody td{padding:.625rem .75rem}.blog-article blockquote{padding:1.25rem 1rem;font-size:.95rem}.blog-article pre{border-radius:8px;padding:1.25rem 1rem}}
