:root{--bg:#080d22;--bg2:#111a43;--panel:rgba(20,29,68,.68);--line:rgba(255,255,255,.12);--text:#f6f7fb;--muted:#abb3cd;--accent:#76f7a7;--max:1240px;--content:720px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at 80% 8%,rgba(70,66,180,.24),transparent 31rem),linear-gradient(145deg,var(--bg),var(--bg2) 55%,#090d20);font:16px/1.7 'DM Sans',sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;margin:0}h1{font-size:clamp(2.7rem,7vw,6rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.04em}h3{font-size:clamp(1.35rem,2vw,1.8rem);letter-spacing:-.025em}.site-header{height:92px;max-width:var(--max);margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand img{width:auto;height:52px;object-fit:contain}.brand span{font:800 1.35rem Manrope}.site-nav,.site-nav ul{display:flex;align-items:center;gap:25px;list-style:none;margin:0;padding:0}.site-nav a,.search{color:var(--muted);font:600 .9rem DM Sans}.site-nav a:hover,.search:hover{color:var(--text)}.search{background:transparent;border:0;cursor:pointer}.nav-toggle{display:none}.home-hero,.page-head{max-width:950px;margin:0 auto;text-align:center;padding:clamp(90px,14vw,190px) 28px clamp(85px,12vw,150px)}.home-hero h1{max-width:900px;margin:12px auto 24px}.home-hero>p:not(.eyebrow),.page-head>p:not(.eyebrow){max-width:680px;margin:0 auto 34px;color:var(--muted);font-size:1.15rem}.eyebrow{display:inline-block;color:var(--accent);font-size:.76rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.button{display:inline-flex;background:var(--accent);color:#07120c;padding:13px 20px;border-radius:999px;font-weight:700}.section{max-width:var(--max);margin:auto;padding:40px 28px 130px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.post-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--panel);backdrop-filter:blur(14px);transition:transform .2s,border-color .2s}.post-card:hover{transform:translateY(-4px);border-color:rgba(118,247,167,.4)}.card-image{display:block;aspect-ratio:16/9;overflow:hidden}.card-image img,.image-fallback{width:100%;height:100%;object-fit:cover}.image-fallback{display:block;background:linear-gradient(135deg,#28336d,#12193e)}.card-body{padding:25px}.card-body h3{margin:8px 0 12px}.card-body p{color:var(--muted);margin:0 0 20px}.meta,.post-byline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.pagination{display:flex;justify-content:center;gap:20px;margin-top:50px}.site-footer{border-top:1px solid var(--line);max-width:var(--max);margin:auto;padding:65px 28px 35px;display:grid;grid-template-columns:2fr 1fr;gap:35px}.footer-brand p{color:var(--muted);max-width:460px}.site-footer nav ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.site-footer small{grid-column:1/-1;color:var(--muted);border-top:1px solid var(--line);padding-top:25px}.post-feature{width:100%;margin:0;max-height:76vh;overflow:hidden}.post-feature img{width:100%;height:min(70vh,780px);object-fit:cover}.content-width{max-width:950px;margin:auto}.post-header{padding:70px 28px 55px}.post-header h1{font-size:clamp(2.6rem,6vw,5.4rem);margin:10px 0 22px}.post-excerpt{color:var(--muted);font-size:1.2rem;max-width:780px}.article-layout{max-width:var(--max);margin:auto;padding:0 28px 130px;display:grid;grid-template-columns:190px minmax(0,var(--content)) 230px;justify-content:space-between;gap:38px}.toc-panel,.post-side{position:sticky;top:30px;align-self:start}.toc-panel strong,.post-side strong{display:block;font-family:Manrope;margin-bottom:12px}.toc-panel nav,.post-side section{display:grid;gap:10px}.toc-panel a,.post-side a,.post-side button{color:var(--muted);font-size:.85rem}.toc-panel a.sub{padding-left:12px}.post-side{display:grid;gap:18px}.post-side section,.contact-card,.about-card{border:1px solid var(--line);background:var(--panel);border-radius:17px;padding:20px}.share{display:flex;gap:10px;flex-wrap:wrap}.share button{border:0;padding:0;background:transparent;cursor:pointer}.gh-content{font-size:1.08rem;min-width:0}.gh-content>*{max-width:var(--content);margin-left:auto;margin-right:auto}.gh-content h2{font-size:2rem;margin-top:2.8em}.gh-content h3{font-size:1.5rem;margin-top:2.2em}.gh-content p,.gh-content ul,.gh-content ol{color:#d7daea}.gh-content a{color:var(--accent);text-decoration:underline}.gh-content pre{overflow:auto;background:#060a18;border:1px solid var(--line);border-radius:12px;padding:18px}.gh-content blockquote{border-left:3px solid var(--accent);padding-left:22px;margin-left:0;color:var(--muted)}.kg-width-wide{max-width:1050px!important}.kg-width-full{max-width:none!important;width:100vw;margin-left:50%!important;transform:translateX(-50%)}.standard-page{padding-bottom:130px}.standard-page>.gh-content,.contact-card,.about-card{max-width:900px;margin:auto}.about-card{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:40px}.about-card>img{width:100%;height:auto;object-fit:contain}.contact-card{padding:40px}.contact-card .button{margin-top:20px}
@media(max-width:1050px){.article-layout{grid-template-columns:1fr minmax(0,var(--content));justify-content:center}.toc-panel{display:none}.post-side{grid-column:1/-1;position:static;display:grid;grid-template-columns:1fr 1fr;max-width:var(--content);width:100%;justify-self:end}}
@media(max-width:760px){.site-header{height:76px;padding:0 20px}.brand img{height:42px}.nav-toggle{display:block;border:1px solid var(--line);background:transparent;color:var(--text);padding:8px 12px;border-radius:9px}.site-nav{display:none;position:absolute;z-index:3;top:70px;left:20px;right:20px;padding:20px;background:#11183a;border:1px solid var(--line);border-radius:14px}.site-nav.open,.site-nav ul{display:grid}.post-grid{grid-template-columns:1fr}.section{padding-left:20px;padding-right:20px}.home-hero,.page-head{padding-left:20px;padding-right:20px}.post-feature img{height:42vh}.post-header{padding:44px 20px}.article-layout{display:block;padding:0 20px 80px}.post-side{grid-template-columns:1fr;margin-top:50px}.site-footer{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.about-card{grid-template-columns:1fr;margin:0 20px}.about-card>img{max-width:230px}.contact-card{margin:0 20px;padding:25px}}

/* Compact navigation and richer dark background */
body{background:radial-gradient(circle at 78% 5%,rgba(50,44,160,.22),transparent 34rem),linear-gradient(145deg,#050816,#0c1232 58%,#060919)}
.site-header{height:72px}.brand img{height:43px}

/* Textured homepage masthead */
.home-hero{position:relative;isolation:isolate;max-width:none;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,rgba(55,50,174,.27),transparent 48%),linear-gradient(180deg,#050817 0%,#080d25 70%,transparent 100%)}
.home-hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;background-image:repeating-linear-gradient(115deg,transparent 0 42px,rgba(132,145,255,.18) 43px,transparent 44px),repeating-linear-gradient(25deg,transparent 0 70px,rgba(118,247,167,.08) 71px,transparent 72px);mask-image:linear-gradient(to bottom,black,transparent 92%)}
.home-hero:after{content:"";position:absolute;z-index:-1;width:520px;height:520px;border:1px solid rgba(118,247,167,.08);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-48%);box-shadow:0 0 100px rgba(62,58,205,.18),0 0 0 90px rgba(110,122,255,.025),0 0 0 180px rgba(110,122,255,.018)}

/* Dedicated featured story */
.featured-post{display:grid;grid-template-columns:1.05fr .95fr;min-height:330px;margin-bottom:65px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(125deg,rgba(18,28,68,.92),rgba(9,14,37,.82));box-shadow:0 24px 80px rgba(0,0,0,.2)}
.featured-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(28px,5vw,58px)}.featured-copy h2{font-size:clamp(2rem,4vw,3.4rem);margin:13px 0 16px}.featured-copy>p{color:var(--muted);max-width:580px;margin:0 0 24px}.featured-label{border:1px solid rgba(118,247,167,.35);border-radius:6px;padding:4px 8px}.featured-copy .meta{gap:14px}.featured-image{min-height:300px;overflow:hidden}.featured-image img,.featured-image .image-fallback{width:100%;height:100%;object-fit:cover;transition:transform .35s}.featured-post:hover .featured-image img{transform:scale(1.025)}

/* Compact post masthead with overlaid post information */
.post-feature{position:relative;width:100%;height:clamp(410px,55vh,610px);max-height:none;margin:0;overflow:hidden}.post-feature>img{width:100%;height:100%;object-fit:cover}.post-feature-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(3,6,15,.08) 20%,rgba(3,6,15,.42) 55%,rgba(3,6,15,.96) 100%)}
.post-feature .post-header{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:120px 28px 46px}.post-header-plain{padding-top:90px}.post-header h1{font-size:clamp(2.5rem,5vw,4.8rem);margin:10px 0 18px}.post-feature .post-excerpt{color:#d5d9e8;font-size:1.12rem;margin-bottom:17px}

/* Long TOCs scroll independently while remaining available */
.article-layout{padding-top:64px}
.toc-panel{top:24px;max-height:calc(100vh - 48px);overflow-y:auto;overscroll-behavior:contain;padding-right:10px;scrollbar-width:thin;scrollbar-color:rgba(118,247,167,.4) transparent}.toc-panel::-webkit-scrollbar{width:5px}.toc-panel::-webkit-scrollbar-thumb{background:rgba(118,247,167,.4);border-radius:10px}

/* Copy-code controls */
.gh-content pre{overflow:auto;background:#040714;border:1px solid var(--line);border-radius:12px;padding:52px 18px 18px;margin:0;min-height:88px}.code-block{position:relative;max-width:var(--content);margin:1.8em auto}.copy-code{position:absolute;z-index:1;right:10px;top:10px;border:1px solid var(--line);border-radius:7px;background:#111936;color:var(--text);padding:6px 10px;font:600 .75rem 'DM Sans';cursor:pointer}.copy-code:hover{border-color:var(--accent);color:var(--accent)}

@media(max-width:760px){.site-header{height:64px}.site-nav{top:62px}.post-feature{height:clamp(390px,58vh,520px)}.post-feature>img{height:100%}.post-feature .post-header{padding:90px 20px 30px}.post-header-plain{padding:55px 20px}.post-header h1{font-size:clamp(2.1rem,10vw,3.2rem)}.article-layout{padding-top:42px}.featured-post{grid-template-columns:1fr}.featured-copy{order:2}.featured-image{order:1;min-height:220px;max-height:280px}}

/* Fast local font stack: avoids an extra render-blocking font origin. */
body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
h1,h2,h3,.brand span,.toc-panel strong,.post-side strong{font-family:inherit}
.site-nav a,.search,.copy-code{font-family:inherit}

/* Copy-link destination preview and confirmation. */
.copy-link{position:relative;border:0;padding:0;background:transparent;cursor:pointer}
.copy-link:after{content:attr(href);position:absolute;z-index:5;right:0;bottom:calc(100% + 10px);width:max-content;max-width:min(360px,80vw);padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#050816;color:#dbe0f3;font-size:.72rem;line-height:1.35;overflow-wrap:anywhere;box-shadow:0 10px 30px rgba(0,0,0,.4);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}
.copy-link:hover:after,.copy-link:focus-visible:after{opacity:1;visibility:visible;transform:none}
.copy-link.is-copied{color:var(--accent)!important}
.copy-status{display:block;min-height:1.3em;margin-top:8px;color:var(--accent);font-size:.75rem}

/* About page: page feature image becomes the profile image. */
.about-page .page-head{padding-bottom:72px}.about-card{grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:start;gap:clamp(34px,6vw,72px);padding:clamp(30px,5vw,58px)}
.about-card-no-image{display:block;max-width:820px}.about-photo{position:sticky;top:92px;margin:0}.about-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center;border-radius:22px;border:1px solid var(--line);box-shadow:0 20px 55px rgba(0,0,0,.3)}
.about-content{width:100%;max-width:none}.about-content>*{max-width:none;margin-left:0;margin-right:0}.about-content>p:first-child{margin-top:0;font-size:1.16rem;color:var(--text)}
@media(max-width:760px){.about-page .page-head{padding-bottom:45px}.about-card{display:grid;grid-template-columns:1fr;gap:30px;padding:26px}.about-photo{position:static;max-width:280px;margin:0 auto}.about-content>*{max-width:none}}

/* Contact form */
.contact-page .page-head{padding-bottom:68px}.contact-card{max-width:900px;padding:clamp(28px,5vw,54px)}.contact-card>.gh-content{max-width:none;margin-bottom:36px}.contact-card>.gh-content>*{max-width:none}.contact-form{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.form-field{display:grid;gap:8px}.form-field-wide{grid-column:1/-1}.form-field label{font-weight:700;font-size:.9rem}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:rgba(3,7,22,.58);color:var(--text);padding:13px 14px;font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.form-field textarea{resize:vertical;min-height:150px}.form-field input::placeholder,.form-field textarea::placeholder{color:#7f88a7}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(118,247,167,.12)}.form-field select option{background:#0d1433;color:var(--text)}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px}.form-actions .button{border:0;margin:0;cursor:pointer;font:700 .95rem inherit}.form-actions p{margin:0;color:var(--muted);font-size:.8rem}.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-setup{border:1px dashed rgba(118,247,167,.38);border-radius:12px;padding:22px;color:var(--muted)}.contact-setup strong{display:block;color:var(--text);margin-bottom:6px}.contact-setup p{margin:0}.contact-setup .button{margin-top:18px}
@media(max-width:650px){.contact-page .page-head{padding-bottom:42px}.contact-form{grid-template-columns:1fr}.form-field-wide{grid-column:auto}.form-actions{align-items:flex-start;flex-direction:column}.contact-card{padding:25px}}
.form-actions .button{font:inherit;font-weight:700}
