@font-face{font-display:swap;font-family:'Inter';font-style:normal;font-weight:400;src:url("../fonts/inter-v20-latin-regular.woff2") format("woff2"),url("../fonts/inter-v20-latin-regular.woff") format("woff")}@font-face{font-display:swap;font-family:'Inter';font-style:normal;font-weight:600;src:url("../fonts/inter-v20-latin-600.woff2") format("woff2"),url("../fonts/inter-v20-latin-600.woff") format("woff")}@font-face{font-display:swap;font-family:'Inter';font-style:normal;font-weight:700;src:url("../fonts/inter-v20-latin-700.woff2") format("woff2"),url("../fonts/inter-v20-latin-700.woff") format("woff")}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight .cm{color:#999988;font-style:italic}.highlight .cp{color:#999999;font-weight:bold}.highlight .c1{color:#999988;font-style:italic}.highlight .cs{color:#999999;font-weight:bold;font-style:italic}.highlight .c,.highlight .cd{color:#999988;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .gd{color:#000000;background-color:#ffdddd}.highlight .ge{color:#000000;font-style:italic}.highlight .gr{color:#aa0000}.highlight .gh{color:#999999}.highlight .gi{color:#000000;background-color:#ddffdd}.highlight .go{color:#888888}.highlight .gp{color:#555555}.highlight .gs{font-weight:bold}.highlight .gu{color:#aaaaaa}.highlight .gt{color:#aa0000}.highlight .kc{color:#000000;font-weight:bold}.highlight .kd{color:#000000;font-weight:bold}.highlight .kn{color:#000000;font-weight:bold}.highlight .kp{color:#000000;font-weight:bold}.highlight .kr{color:#000000;font-weight:bold}.highlight .kt{color:#445588;font-weight:bold}.highlight .k,.highlight .kv{color:#000000;font-weight:bold}.highlight .mf{color:#009999}.highlight .mh{color:#009999}.highlight .il{color:#009999}.highlight .mi{color:#009999}.highlight .mo{color:#009999}.highlight .m,.highlight .mb,.highlight .mx{color:#009999}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .s{color:#d14}.highlight .na{color:#008080}.highlight .bp{color:#999999}.highlight .nb{color:#0086B3}.highlight .nc{color:#445588;font-weight:bold}.highlight .no{color:#008080}.highlight .nd{color:#3c5d5d;font-weight:bold}.highlight .ni{color:#800080}.highlight .ne{color:#990000;font-weight:bold}.highlight .nf{color:#990000;font-weight:bold}.highlight .nl{color:#990000;font-weight:bold}.highlight .nn{color:#555555}.highlight .nt{color:#000080}.highlight .vc{color:#008080}.highlight .vg{color:#008080}.highlight .vi{color:#008080}.highlight .nv{color:#008080}.highlight .ow{color:#000000;font-weight:bold}.highlight .o{color:#000000;font-weight:bold}.highlight .w{color:#bbbbbb}.highlight{background-color:#f8f8f8}p,ul,ol,table,pre,dl{margin:0 0 20px}img{max-width:100%}code,pre{font-family:ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, "Liberation Mono", "DejaVu Sans Mono", monospace}pre{padding:8px 15px;background:#f0f0f0;border-radius:var(--r-sm);border:1px solid var(--c-border);overflow-x:auto;font-size:0.875rem}:root{--c-bg: #f6f6f6;--c-surface: #ffffff;--c-border: #d4d4d4;--c-text: #1a1a1f;--c-muted: #68686b;--c-navy: #3584e4;--c-navy-mid: #1c71d8;--c-navy-pale: #daeafa;--c-nav-bg: #ffffff;--c-hero-bg: #f0f4fb;--c-skill-bg: #f0f0f0;--sp-1: 0.375rem;--sp-2: 0.75rem;--sp-3: 1.125rem;--sp-4: 1.5rem;--sp-6: 2.25rem;--r-sm: 4px;--r-md: 6px;--r-lg: 7px}body.site-shell{margin:0;padding:0;font-family:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;font-size:15px;line-height:1.6;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased}body.site-shell section,body.site-shell header,body.site-shell footer{float:none;width:auto;position:static;padding:0}body.site-shell a:hover,body.site-shell a:focus{font-weight:inherit}.site-header{position:sticky;top:0;z-index:40;background:var(--c-nav-bg);border-bottom:1px solid var(--c-border);box-shadow:0 1px 0 rgba(0,0,0,0.08)}.compact-nav{max-width:860px;margin:0 auto;padding:0.5rem var(--sp-2)}.menu-items{display:flex;justify-content:center;gap:0.25rem}.navbar-item{padding:0.4rem 0.8rem;border-radius:var(--r-sm);font-size:0.9rem;font-weight:600;color:var(--c-text);text-decoration:none}.navbar-item:hover{background:var(--c-navy-pale);color:var(--c-navy)}.landing-page{max-width:780px;margin:var(--sp-2) auto 0;padding:0 var(--sp-2) var(--sp-4)}.about-page,.blog-page,.post-page{max-width:780px;margin:var(--sp-2) auto 0;padding:0 var(--sp-2) var(--sp-4)}.profile-container,.about-container,.blog-container,.post-container{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:0 1px 4px rgba(0,0,0,0.08);padding:1.35rem}.hero-organic-tile{display:grid;grid-template-columns:196px 1fr;gap:var(--sp-3);align-items:center;padding:0;border-radius:var(--r-md);border:0;background:transparent;margin-bottom:var(--sp-3)}.avatar-blob-wrap{display:flex;justify-content:flex-start}.avatar-blob{width:180px;height:180px;border-radius:var(--r-md);background:#eef4fc;border:1px solid var(--c-border);display:grid;place-items:center}.profile-picture{width:160px;height:160px;border-radius:var(--r-sm);object-fit:cover;border:2px solid var(--c-surface)}.hero-copy{text-align:left}.hero-eyebrow{margin:0 0 0.35rem;font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--c-navy-mid)}.profile-title{margin:0;font-size:clamp(1.8rem, 3.5vw, 2.4rem);font-weight:700;line-height:1.1;color:var(--c-text)}.profile-tagline{margin:var(--sp-1) 0 0;font-size:0.95rem;font-weight:600;color:var(--c-muted)}.profile-personal-note{margin:var(--sp-1) 0 0;font-size:0.93rem;color:var(--c-muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:var(--sp-2)}.hero-cta{display:inline-flex;align-items:center;min-height:38px;padding:0 var(--sp-2);border-radius:var(--r-sm);font-size:0.9rem;font-weight:700;text-decoration:none;border:1px solid transparent;transition:background 0.12s, border-color 0.12s}.hero-cta-primary{background:var(--c-navy);color:#fff}.hero-cta-primary:hover{background:var(--c-navy-mid);color:#fff}.hero-cta-secondary{background:var(--c-surface);border-color:var(--c-border);color:var(--c-navy)}.hero-cta-secondary:hover{background:var(--c-navy-pale);border-color:var(--c-border)}.bento-grid-two{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--sp-2);margin-bottom:var(--sp-2)}.about-quick-section,.links-section,.contact-section{border:0;border-radius:var(--r-md);background:#f8f9fb;box-shadow:none;padding:1.1rem}.section-title{margin:0 0 var(--sp-2);font-size:0.8rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--c-navy)}.about-quick-list{margin:0;padding-left:1.1rem;list-style:disc;list-style-position:outside}.about-quick-list li{margin:0.5rem 0;font-size:0.93rem;color:var(--c-muted);line-height:1.55}.links-grid{display:grid;gap:var(--sp-1)}.email-link-combined{justify-content:center}.email-display-inline{display:inline}.link-button{display:flex;align-items:center;justify-content:center;gap:0.5rem;min-height:42px;padding:0 var(--sp-2);border-radius:var(--r-sm);border:1px solid var(--c-border);color:var(--c-text);background:var(--c-surface);font-size:0.9rem;font-weight:600;text-decoration:none;transition:background 0.12s, border-color 0.12s}.link-button:hover{background:var(--c-navy-pale);border-color:var(--c-border);color:var(--c-navy)}.email-hint{margin-top:var(--sp-1);font-size:0.84rem;color:var(--c-muted)}.blog-preview-section{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.article-grid,.post-list{display:grid;gap:var(--sp-1)}.article-card,.post-card{display:block;border:1px solid var(--c-border);border-radius:var(--r-sm);padding:0.95rem;background:var(--c-surface);color:var(--c-text);text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,0.06);transition:border-color 0.12s, box-shadow 0.12s}.article-card:hover,.post-card:hover{border-color:var(--c-navy);box-shadow:0 2px 8px rgba(53,132,228,0.12);background:var(--c-surface)}.article-date,.post-meta{font-size:0.82rem;color:var(--c-muted);display:block}.article-title,.post-title{font-weight:700;color:var(--c-text);display:block;margin-top:0.2rem}.article-more{display:inline-block;margin-top:0.3rem;font-size:0.86rem;font-weight:600;color:var(--c-navy)}.article-all-link{color:var(--c-navy);font-weight:700;text-decoration:none;font-size:0.9rem}.article-all-link:hover{text-decoration:underline}.article-all-link-wrap{margin-top:var(--sp-2)}.about-container h1{font-size:clamp(1.6rem, 3vw, 2rem);font-weight:700;color:var(--c-text);margin:0 0 var(--sp-3)}.about-section{border-top:1px solid var(--c-border);margin-top:var(--sp-3);padding-top:var(--sp-3)}.about-section:first-of-type{border-top:0;margin-top:0;padding-top:0}.about-section h2{font-size:1.05rem;font-weight:700;color:var(--c-text);margin:0 0 var(--sp-2)}.about-section p{font-size:0.95rem;color:var(--c-muted);line-height:1.7}.expertise-grid{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fit, minmax(200px, 1fr))}.expertise-card{border:1px solid var(--c-border);border-radius:var(--r-sm);padding:0.95rem;background:var(--c-surface);box-shadow:0 1px 3px rgba(0,0,0,0.06)}.expertise-card h3{font-size:0.95rem;font-weight:700;margin:0 0 0.5rem;color:var(--c-text)}.expertise-card p{font-size:0.88rem;margin:0;color:var(--c-muted)}.post-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin:var(--sp-1) 0 var(--sp-2)}.post-tag{padding:0.2rem 0.6rem;border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-skill-bg);font-size:0.82rem;font-weight:600;color:var(--c-muted);text-transform:lowercase}.skills-list{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.skill-tag{padding:0.25rem 0.65rem;border-radius:var(--r-sm);border:1px solid var(--c-border);font-size:0.85rem;font-weight:600;color:var(--c-navy);background:var(--c-skill-bg)}.cta-section{background:#f8f9fb;border-radius:var(--r-md);border:1px solid var(--c-border);padding:var(--sp-3);color:var(--c-text)}.cta-section h2,.cta-section p{color:var(--c-text)}.cta-links{display:flex;gap:var(--sp-1);flex-wrap:wrap;margin-top:var(--sp-2)}.cta-button{display:inline-block;padding:0.45rem 0.9rem;border-radius:var(--r-sm);font-size:0.9rem;font-weight:700;text-decoration:none;background:var(--c-navy);color:#fff;border:1px solid var(--c-navy)}.cta-button:hover{background:var(--c-navy-mid)}.cta-button.secondary{background:var(--c-surface);color:var(--c-navy);border-color:var(--c-border)}.cta-button.secondary:hover{background:var(--c-navy-pale)}.blog-container h1,.post-container h1{font-size:clamp(1.5rem, 3vw, 1.9rem);font-weight:700;color:var(--c-text);margin:0 0 var(--sp-2)}.blog-intro{font-size:0.95rem;color:var(--c-muted);margin-bottom:var(--sp-3)}.post-heading{font-size:clamp(1.6rem, 3.5vw, 2.1rem);font-weight:700;color:var(--c-text);margin:0}.post-meta-line{font-size:0.85rem;color:var(--c-muted);margin:var(--sp-1) 0 0}.post-hero{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;margin-top:var(--sp-2);border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-skill-bg)}.post-content{margin-top:var(--sp-3);font-size:0.97rem;color:var(--c-text);line-height:1.75}.post-content h2,.post-content h3{margin-top:var(--sp-3);color:var(--c-text)}.post-share-box{margin-top:var(--sp-3);padding-top:var(--sp-2);border-top:1px solid var(--c-border)}.share-button{background:var(--c-navy);color:#fff;border:0;border-radius:var(--r-sm);padding:0.5rem 0.85rem;font-size:0.9rem;font-weight:700;cursor:pointer}.share-button:hover{background:var(--c-navy-mid)}.share-status{font-size:0.85rem;color:var(--c-muted);margin-top:var(--sp-1)}.site-footer{max-width:780px;margin:0 auto var(--sp-4);padding:var(--sp-2) var(--sp-2) 0;border-top:1px solid var(--c-border);text-align:center;font-size:0.85rem;color:var(--c-muted)}.site-footer a{color:var(--c-navy)}.footer-motto{margin:0 0 0.25rem;font-style:italic}.footer-credit{margin:0}@media (max-width: 720px){.hero-organic-tile{grid-template-columns:1fr;text-align:center;row-gap:var(--sp-2)}.hero-copy{text-align:center}.avatar-blob-wrap{justify-content:center}.avatar-blob{width:120px;height:120px}.profile-picture{width:106px;height:106px}.hero-actions{justify-content:center}.bento-grid-two{grid-template-columns:1fr}}@media (max-width: 480px){.landing-page,.about-page,.blog-page,.post-page{margin-top:var(--sp-2);padding:0 var(--sp-1) var(--sp-4)}.profile-container,.about-container,.blog-container,.post-container{padding:var(--sp-2);border-radius:var(--r-sm)}}
