.blog-post-page{min-height:100vh;display:flex;flex-direction:column}.blog-post-hero,.blog-post-page{background-color:var(--color-dark-navy)}.blog-post-hero{padding-top:200px;padding-bottom:60px;position:relative}.blog-post-hero-content{max-width:800px;margin:0 auto;text-align:center}.blog-post-meta{font-size:.9rem;color:var(--color-pale-gray);margin-bottom:1rem}.meta-separator{margin:0 .5rem;opacity:.5}.blog-post-title{font-size:3.5rem;font-weight:800;color:var(--color-white);margin-bottom:1rem;font-family:Poppins,sans-serif;letter-spacing:-1.5px;line-height:1.2}.blog-post-summary{font-size:1.25rem;color:var(--color-white);margin-bottom:1.5rem;line-height:1.6;opacity:.9;font-weight:300}.blog-post-author{font-size:1rem;color:var(--color-white);margin-bottom:1rem;opacity:.8}.blog-post-tags{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}.blog-post-featured-image{max-width:1200px;margin:3rem auto 0;border-radius:12px;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.1);animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.blog-post-featured-image img{width:100%;height:auto;display:block;max-height:600px;object-fit:cover}.tag-link{padding:.25rem .75rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:20px;color:var(--color-pale-gray);text-decoration:none;font-size:.875rem;transition:all .3s ease}.tag-link:hover{background:var(--color-light-blue);border-color:var(--color-light-blue);color:white}.tag-link:focus-visible{outline:2px solid var(--color-light-blue);outline-offset:2px;background:var(--color-light-blue);border-color:var(--color-light-blue);color:white}.blog-post-body{flex:1 1;padding:60px 0}.blog-post-layout{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:200px 1fr;grid-gap:3rem;gap:3rem}.table-of-contents{position:-webkit-sticky;position:sticky;top:100px;height:-moz-fit-content;height:fit-content}.table-of-contents h3{font-size:1rem;margin-bottom:1rem;color:var(--color-white)}.toc-nav ul{list-style:none;padding:0;margin:0}.toc-nav li{margin-bottom:.5rem}.toc-nav li.toc-level-3{padding-left:1.5rem}.toc-nav a{display:block;padding:.25rem 0;color:var(--color-pale-gray);text-decoration:none;font-size:.9rem;transition:color .3s ease}.toc-nav a:hover{color:var(--color-light-blue)}.toc-nav a:focus-visible{outline:2px solid var(--color-light-blue);outline-offset:2px;color:var(--color-light-blue);border-radius:4px}.toc-nav a.active{color:var(--color-light-blue);position:relative}.toc-nav a.active:before{content:"";position:absolute;left:-1rem;top:50%;transform:translateY(-50%);width:4px;height:80%;background:var(--color-light-blue);border-radius:2px}.blog-post-content{max-width:800px;font-size:1.125rem;line-height:1.8;color:var(--color-white)}.blog-post-content h1,.blog-post-content h2,.blog-post-content h3,.blog-post-content h4,.blog-post-content h5,.blog-post-content h6{margin-top:2rem;margin-bottom:1rem;font-weight:600;line-height:1.3}.blog-post-content h2{font-size:2rem}.blog-post-content h3{font-size:1.5rem}.blog-post-content p{margin-bottom:1.5rem}.blog-post-content ol,.blog-post-content ul{margin-bottom:1.5rem;padding-left:2rem}.blog-post-content li{margin-bottom:.5rem}.blog-post-content code{background:rgba(255,255,255,.1);padding:.2em .4em;border-radius:3px;font-size:.9em;font-family:Monaco,Courier New,monospace;color:var(--color-light-blue)}.blog-post-content pre{background:rgba(0,0,0,.6);padding:1.5rem;border-radius:8px;overflow-x:auto;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.15)}.blog-post-content pre code{background:none;padding:0;font-size:.9rem}.blog-post-content blockquote{border-left:4px solid var(--color-light-blue);margin:2rem 0;font-style:italic;color:var(--color-pale-gray);background:rgba(255,255,255,.02);padding:1rem 1.5rem;border-radius:0 8px 8px 0}.blog-post-content img{max-width:100%;height:auto;border-radius:8px;margin:2rem 0}.blog-post-content a{color:var(--color-light-blue);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}.blog-post-content a:hover{border-bottom-color:var(--color-light-blue);color:var(--color-sky-blue)}.blog-post-content a:focus-visible{outline:2px solid var(--color-light-blue);outline-offset:2px;border-bottom-color:var(--color-light-blue);color:var(--color-sky-blue);border-radius:4px}.blog-post-footer{max-width:800px;margin:4rem auto 0;padding-top:3rem;border-top:1px solid rgba(255,255,255,.1)}.share-section{margin-bottom:3rem}.share-section h3{font-size:1.25rem;margin-bottom:1rem}.share-buttons{display:flex;gap:1rem}.share-button{padding:.75rem 1.5rem;background:var(--color-light-blue);border:none;border-radius:25px;color:white;font-size:1rem;cursor:pointer;transition:all .3s ease}.share-button:hover{background:var(--color-sky-blue);transform:translateY(-2px);box-shadow:0 5px 15px rgba(24,173,242,.3)}.share-button:focus-visible{outline:2px solid var(--color-white);outline-offset:3px;background:var(--color-sky-blue);transform:translateY(-2px);box-shadow:0 5px 15px rgba(24,173,242,.3)}.related-posts h3{font-size:1.5rem;margin-bottom:1.5rem}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.related-post-card{padding:1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;text-decoration:none;transition:all .3s ease}.related-post-card:hover{border-color:var(--color-light-blue);transform:translateY(-2px);background:rgba(255,255,255,.08)}.related-post-card:focus-visible{outline:2px solid var(--color-light-blue);outline-offset:3px;border-color:var(--color-light-blue);transform:translateY(-2px);background:rgba(255,255,255,.08)}.related-post-card h4{color:var(--color-white);margin-bottom:.5rem;font-size:1.125rem}.related-post-card p{color:var(--color-pale-gray);font-size:.9rem;margin-bottom:.5rem}.read-more{color:var(--color-light-blue);font-size:.9rem}@media (max-width:1024px){.blog-post-layout{grid-template-columns:1fr}.table-of-contents{display:none}}@media (max-width:768px){.blog-post-hero{padding-top:160px;padding-bottom:40px}.blog-post-title{font-size:2.5rem;letter-spacing:-1px}.blog-post-summary{font-size:1.1rem}.blog-post-featured-image{margin:2rem -20px 0;border-radius:0}.blog-post-featured-image img{max-height:400px}.blog-post-content{font-size:1rem}.related-posts-grid{grid-template-columns:1fr}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}
/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}