:root,:root[data-theme=dim]{--ink:#120721;--ink-soft:#1b0c33;--paper:#fff;--paper-dim:#f0f0f0;--steel:#f4f6fc;--line:#33465c;--amber:#e3a857;--amber-dim:#b98640;--ok:#7fa88c;--success:#34d399;--whatsapp:#25d366;--font-heading:"Fraunces", serif}:root[data-theme=bright]{--ink:#efece7;--ink-soft:#e2ddd5;--paper:#020408;--paper-dim:#1e293b;--steel:#0f172a;--line:#cbd5e1;--amber:#8a4106;--amber-dim:#78350f;--ok:#047857;--success:#047857;--whatsapp:#166534}[data-theme=bright] .error-content{--ink:#120721;--ink-soft:#1b0c33;--paper:#fff;--paper-dim:#f0f0f0;--steel:#f4f6fc;--line:#33465c;--amber:#e3a857;--amber-dim:#b98640;--ok:#7fa88c;--success:#34d399;--whatsapp:#25d366;color:#f4f6fc}:root[data-theme=bright] .service-card,:root[data-theme=bright] .project-card,:root[data-theme=bright] .cert-card,:root[data-theme=bright] .glow-card,:root[data-theme=bright] .form-container,:root[data-theme=bright] .cv-sheet,:root[data-theme=bright] .cv-skill-card,:root[data-theme=bright] .cv-exp-item,:root[data-theme=bright] .cv-edu-card,:root[data-theme=bright] .mode-card{-webkit-backdrop-filter:blur(14px);color:#0f172a;background-color:#ffffffd1;background-image:none;border-color:#9a4a0747;box-shadow:0 12px 32px #0f172a14}:root[data-theme=bright] .service-card:hover,:root[data-theme=bright] .project-card:hover,:root[data-theme=bright] .cert-card:hover{border-color:#9a4a078c;box-shadow:0 16px 36px #0f172a1f}:root[data-theme=bright] .service-card h3,:root[data-theme=bright] .project-card h3,:root[data-theme=bright] .cert-card h3,:root[data-theme=bright] .mode-title,:root[data-theme=bright] .success-panel h3,:root[data-theme=bright] .step-title,:root[data-theme=bright] .cv-sheet h1,:root[data-theme=bright] .cv-sheet h3{color:#0f172a;text-shadow:none;-webkit-text-stroke:0}:root[data-theme=bright] .project-summary,:root[data-theme=bright] .card-desc,:root[data-theme=bright] .cert-details p,:root[data-theme=bright] .card-deliverables li,:root[data-theme=bright] .project-deliverables li,:root[data-theme=bright] .deep-dive-body,:root[data-theme=bright] .deep-dive-body p,:root[data-theme=bright] .deep-dive-trigger,:root[data-theme=bright] .arch-title,:root[data-theme=bright] .arch-flow-summary,:root[data-theme=bright] .node-label-text,:root[data-theme=bright] .form-container label,:root[data-theme=bright] .mode-desc,:root[data-theme=bright] .hint,:root[data-theme=bright] .draft-note,:root[data-theme=bright] .success-panel p,:root[data-theme=bright] .success-panel li,:root[data-theme=bright] .whatsapp-direct-box span,:root[data-theme=bright] .cv-sheet p,:root[data-theme=bright] .cv-sheet li,:root[data-theme=bright] .cv-sheet span,:root[data-theme=bright] .cv-sheet div{color:#1e293b}:root[data-theme=bright] .client-name,:root[data-theme=bright] .deliv-label,:root[data-theme=bright] .deliv-heading,:root[data-theme=bright] .card-num,:root[data-theme=bright] .pid,:root[data-theme=bright] .bullet,:root[data-theme=bright] .bullet-dash,:root[data-theme=bright] .arch-tag,:root[data-theme=bright] .flow-label,:root[data-theme=bright] .node-step-badge,:root[data-theme=bright] .cv-role,:root[data-theme=bright] .cv-sec-title,:root[data-theme=bright] .cv-company,:root[data-theme=bright] .cv-sheet a,:root[data-theme=bright] .dist-score,:root[data-theme=bright] .cv-skill-card h3{color:var(--amber)}:root[data-theme=bright] .stack span,:root[data-theme=bright] .metric-badge,:root[data-theme=bright] .client-badge,:root[data-theme=bright] .card-badge,:root[data-theme=bright] .cert-date,:root[data-theme=bright] .cert-date.distinction,:root[data-theme=bright] .dist-code,:root[data-theme=bright] .dist-title{color:#3b2a14;box-shadow:none;text-shadow:none;background:#ffffffc7;border-color:#9a4a0759}:root[data-theme=bright] .arch-deep-dive,:root[data-theme=bright] .deep-dive-trigger,:root[data-theme=bright] .project-deliverables,:root[data-theme=bright] .cv-distinction-badge,:root[data-theme=bright] .cv-scores-grid{background:#0f172a0a;border-color:#0f172a1f}:root[data-theme=bright] .cert-icon{background:#0f172a0f;border-color:#0f172a1a}:root[data-theme=bright] .arch-diagram-box{box-shadow:none;background:#f8fafce6;border-color:#7c3aed4d}:root[data-theme=bright] .arch-node-box,:root[data-theme=bright] .arch-flowchart-canvas{background:#fff}:root[data-theme=bright] .btn-live{background:var(--amber);color:#fff}:root[data-theme=bright] .btn-repo{color:#1e293b}:root[data-theme=bright] .btn-repo:hover{color:var(--amber)}:root[data-theme=bright] .cert-card.featured{background:#ffffffd1!important}:root[data-theme=bright] .cert-card .cert-details h3{color:#0f172a!important}:root[data-theme=bright] .card-glow-bg{display:none}:root[data-theme=bright] .article-back{color:#78350f;font-weight:600}:root[data-theme=bright] .form-container input,:root[data-theme=bright] .form-container select,:root[data-theme=bright] .form-container textarea{color:#0f172a;background:#fff;border-color:#cbd5e1}:root[data-theme=bright] .form-container select option{color:#0f172a;background:#fff}:root[data-theme=bright] .form-container input:focus,:root[data-theme=bright] .form-container select:focus,:root[data-theme=bright] .form-container textarea:focus{border-color:var(--amber);background:#fff;box-shadow:0 0 0 3px #9a4a0726}:root[data-theme=bright] .form-container ::placeholder{color:#64748b}:root[data-theme=bright] .form-container .submit-btn{background:var(--amber);color:#fff}:root[data-theme=bright] .form-container .submit-btn:hover{background:#7c3a05}:root[data-theme=bright] .back-btn{color:#0f172a;border-color:#0f172a4d}:root[data-theme=bright] .mode-card:has(input:checked){border-color:var(--amber);background-color:#9a4a071a}:root[data-theme=bright] .progress-track{background:#0f172a1a}:root[data-theme=bright] .progress-label{color:var(--amber)}:root[data-theme=bright] .field-error{color:#b91c1c}:root[data-theme=bright] .whatsapp-direct-box{border-top-color:#0f172a1f}:root[data-theme=bright] .whatsapp-link-btn{color:var(--amber);background:#9a4a070f;border-color:#9a4a0766}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);transition:background-color .2s}body{color:var(--paper);background:0 0;margin:0;font-family:Plus Jakarta Sans,sans-serif;font-size:20px;line-height:1.65;transition:color .2s}.bg-canvas-wrapper{opacity:.88;transition:opacity .6s}[data-theme=bright] .bg-canvas-wrapper{opacity:1;mix-blend-mode:normal}::selection{background:var(--amber);color:var(--ink)}h1,h2,h3,h4,h5,h6,.card-title,.cv-sec-title,.cv-job-title,.perks-title,.tech-stack-heading{color:var(--paper);-webkit-text-stroke:.5px #b986408c;paint-order:stroke fill;text-shadow:0 0 1px #b986404d;margin:0;font-weight:500;font-family:Fraunces,serif!important}a{color:inherit}.wrap{max-width:1100px;margin:0 auto;padding:0 32px}.skip-link{z-index:40;background:var(--amber);color:var(--ink);padding:8px 14px;font-size:14.5px;font-weight:600;text-decoration:none;position:absolute;top:-40px;left:16px}.skip-link:focus-visible{top:12px}:focus-visible{outline:2px solid var(--amber);outline-offset:3px}nav{z-index:1000;-webkit-backdrop-filter:blur(16px);background:#030108;border-bottom:1px solid #8a2be28c;align-items:center;width:100%;min-height:64px;transition:border-color .2s,background-color .2s;display:flex;position:fixed;top:0;left:0;overflow:hidden}[data-theme=bright] nav{-webkit-backdrop-filter:blur(12px);background:#f3f0ebe6;border-bottom:1px solid #cbd5e199}nav .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;padding-top:14px;padding-bottom:14px;display:flex}.nav-mark{color:var(--amber);letter-spacing:.02em;align-items:center;gap:12px;font-family:JetBrains Mono,monospace;font-size:16.5px;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.nav-logo{object-fit:contain;object-position:center;filter:drop-shadow(0 0 10px #e3a85773);flex-shrink:0;width:40px;height:40px;transition:transform .25s,filter .25s}.nav-mark:hover,.nav-mark:focus-visible{color:var(--paper)}.nav-mark:hover .nav-logo{filter:drop-shadow(0 0 18px #e3a857d9);transform:scale(1.1)rotate(5deg)}.nav-toggle{color:var(--paper);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:2px;padding:8px 14px;font-family:Plus Jakarta Sans,sans-serif;font-size:14.5px;display:none}.nav-toggle:hover,.nav-toggle:focus-visible{border-color:var(--paper)}.nav-links{align-items:center;gap:26px;margin:0;padding:0;font-size:17.5px;list-style:none;display:flex}.nav-links a{color:var(--steel);letter-spacing:.01em;font-size:17.5px;font-weight:500;text-decoration:none;transition:color .15s}.nav-links a:hover,.nav-links a:focus-visible,.nav-links a[aria-current=page]{color:var(--paper)}@media (width<=760px){.nav-toggle{display:inline-block}.nav-links{flex-direction:column;flex-basis:100%;align-items:flex-start;gap:16px;padding-bottom:12px;font-size:18.5px;display:none}.nav-links a{font-size:18.5px}.nav-links.is-open{display:flex}}header.hero{border-bottom:1px solid var(--line);background:0 0;padding:96px 0 72px;position:relative;overflow:hidden}.hero-wrap{max-width:1100px}.hero h1{letter-spacing:-.02em;-webkit-text-stroke:.85px #b98640a6;paint-order:stroke fill;text-shadow:0 0 2px #b9864073,0 2px 22px #0a0614eb;margin-bottom:18px;font-size:clamp(58px,8.5vw,88px);line-height:1.05}.hero p.role{color:var(--amber);text-shadow:0 0 2px #e3a85766,0 1px 12px #0a0614e0;margin-bottom:24px;font-family:JetBrains Mono,monospace;font-size:16px}.hero p.eyebrow-num{color:var(--amber);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:18px}.hero p.desc{color:var(--paper);text-shadow:0 2px 12px #0f1b2df2,0 1px 4px #000000e6;max-width:48ch;margin-bottom:32px;font-family:Playfair Display,serif;font-size:23px;font-weight:500;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.btn{border:1px solid var(--line);border-radius:3px;padding:13px 24px;font-size:15px;text-decoration:none;transition:border-color .15s,background .15s;display:inline-block}.btn-primary{background:var(--amber);color:var(--ink);border-color:var(--amber);font-weight:600}.btn-primary:hover,.btn-primary:focus-visible{background:#eab86c}.btn-ghost{color:var(--paper)}.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--paper)}section{border-bottom:1px solid var(--line);padding:84px 0}.eyebrow-num{color:var(--amber);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:18px}section h2,.site-footer h2{letter-spacing:-.01em;-webkit-text-stroke:.7px #b9864099;paint-order:stroke fill;margin-bottom:38px;font-size:46px;display:inline-block;position:relative}section h2:after,.site-footer h2:after{content:"";transform-origin:0;opacity:0;pointer-events:none;background:linear-gradient(90deg,#b98640f2 0%,#d7a050bf 35%,#b9864040 75%,#0000 100%);border-radius:2px;width:52%;height:2.5px;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .45s;position:absolute;bottom:-8px;left:0;transform:scaleX(0)}section.in-view h2:after,.site-footer.in-view h2:after{opacity:1;transform:scaleX(1)}@media (prefers-reduced-motion:reduce){section h2:after,.site-footer h2:after{transition:none}}.about-grid{grid-template-columns:2fr 1fr;gap:48px;display:grid}.about-grid p{color:var(--steel);max-width:62ch;margin-bottom:16px}.about-grid p strong{color:var(--paper);font-weight:500}@media (width<=760px){.about-grid{grid-template-columns:1fr}}.facts{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.facts li{border-left:2px solid var(--line);padding-left:14px}.facts .k{color:var(--amber-dim);margin-bottom:2px;font-family:JetBrains Mono,monospace;font-size:13px;display:block}.facts .v{color:var(--paper);font-size:15px}.skill-map{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px;display:grid}.skill-block{background:var(--ink);padding:24px}.skill-block h3{color:var(--paper);margin-bottom:12px;font-size:18px}.skill-block ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.skill-block li{color:var(--steel);align-items:center;gap:8px;font-size:15px;display:flex}.skill-block li:before{content:"";background:var(--amber);flex-shrink:0;width:5px;height:5px}.project{border-top:1px solid var(--line);grid-template-columns:130px 1fr;gap:28px;padding:32px 0;display:grid}.project:first-of-type{border-top:none}.project .pid{color:var(--amber-dim);font-family:JetBrains Mono,monospace;font-size:14px}.project h3{margin-bottom:8px;font-size:26px}.project p{color:var(--steel);max-width:60ch;margin-bottom:14px;font-size:16.5px}.stack{flex-wrap:wrap;gap:8px;display:flex}.stack span{color:var(--amber);background:#e3a85712;border:1px solid #e3a85738;border-radius:3px;padding:4px 9px;font-family:JetBrains Mono,monospace;font-size:12.5px}.project-links{gap:18px;margin-top:14px;display:flex}.project-link{color:var(--amber);border-bottom:1px solid #0000;font-size:14.5px;text-decoration:none;display:inline-block}.project-link:hover,.project-link:focus-visible{border-bottom-color:var(--amber)}@media (width<=600px){.project{grid-template-columns:1fr;gap:8px}}.post{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 0;display:flex}.post:first-of-type{border-top:none}.post a{color:var(--paper);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--amber) 45%, transparent);text-underline-offset:5px;font-size:17.5px;text-decoration-thickness:1.5px;transition:text-decoration-color .15s,color .15s}.post a:hover,.post a:focus-visible{color:var(--amber);text-decoration-color:var(--amber)}.post-main{min-width:0}.post-desc{max-width:62ch;color:var(--steel);opacity:.8;margin:8px 0 0;font-size:15px}.post-meta{color:var(--steel);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;font-family:JetBrains Mono,monospace;font-size:13px;display:flex}.post-tags{flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.post-tags li{color:var(--amber);border:1px solid var(--line);padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:12px}@media (width<=600px){.post{flex-direction:column;gap:8px}.post-meta{flex-direction:row;align-items:baseline;gap:12px}}.writing-more{color:var(--amber);border-bottom:1px solid #0000;margin-top:22px;font-size:14.5px;text-decoration:none;display:inline-block}.writing-more:hover,.writing-more:focus-visible{border-bottom-color:var(--amber)}.site-footer{padding:84px 0 64px}.contact-grid{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.site-footer h2{max-width:14ch;margin-bottom:8px;font-size:36px}.site-footer p{color:var(--steel);max-width:40ch;font-size:17px}.contact-links{flex-direction:column;gap:12px;font-family:JetBrains Mono,monospace;font-size:15px;display:flex}.contact-links a{color:var(--paper);border-bottom:1px solid var(--line);width:fit-content;padding-bottom:2px;text-decoration:none}.contact-links a:hover,.contact-links a:focus-visible{color:var(--amber);border-color:var(--amber)}.foot-note{color:var(--steel);margin-top:60px;font-family:JetBrains Mono,monospace;font-size:13.5px}.article{padding:76px 0 96px}.article-back{color:var(--amber);border-bottom:1px solid #0000;margin-bottom:28px;font-size:13.5px;text-decoration:none;display:inline-block}.article-back:hover,.article-back:focus-visible{border-bottom-color:var(--amber)}.article header{border-bottom:1px solid var(--line);margin-bottom:36px;padding-bottom:24px}.article h1{max-width:22ch;margin-bottom:12px;font-size:clamp(28px,4vw,40px);line-height:1.15}.article-meta{color:var(--steel);flex-wrap:wrap;gap:6px 16px;margin:0;font-family:JetBrains Mono,monospace;font-size:13px;display:flex}.article-nav{border-top:1px solid var(--line);justify-content:space-between;gap:24px;margin-top:56px;padding-top:24px;display:flex}.article-nav a{max-width:46%;color:var(--paper);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--amber) 45%, transparent);text-underline-offset:5px;line-height:1.35;text-decoration-thickness:1.5px;transition:text-decoration-color .15s,color .15s;display:block}.article-nav a span{color:var(--amber);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:12.5px;text-decoration:none;display:block}.article-nav .newer{text-align:right;margin-left:auto}.article-nav a:hover,.article-nav a:focus-visible{color:var(--amber);text-decoration-color:var(--amber)}@media (width<=600px){.article-nav{flex-direction:column}.article-nav a{max-width:none}}.prose{max-width:62ch;color:var(--steel)}.prose p{margin:0 0 1.1em}.prose h2,.prose h3{color:var(--paper);margin:1.6em 0 .6em;line-height:1.25}.prose h2{font-size:1.35em}.prose h3{font-size:1.15em}.prose li{margin-bottom:.4em}.prose blockquote{border-left:3px solid var(--amber-dim);color:var(--steel);margin:0 0 1.1em;padding-left:1em}.prose img{max-width:100%;height:auto}.prose hr{border:none;border-top:1px solid var(--line);margin:2em 0}.prose a{color:var(--amber)}.prose code{color:var(--paper);font-family:JetBrains Mono,monospace;font-size:.9em}.prose pre{background:var(--ink-soft);border:1px solid var(--line);padding:16px;font-family:JetBrains Mono,monospace;font-size:13px;overflow-x:auto}.prose ul,.prose ol{margin:0 0 1.1em;padding-left:1.2em}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(14px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero>*{z-index:1;position:relative}.skill-block{border:1px solid var(--line);transition:transform .2s,border-color .2s}.skill-block:hover{border-color:var(--amber-dim);transform:translateY(-2px)}.nav-links a,.project-link,.writing-more{position:relative}.nav-links a:after,.writing-more:after{content:"";background:var(--amber);width:0;height:1px;transition:width .25s;position:absolute;bottom:-2px;left:0}.nav-links a:hover:after,.writing-more:hover:after{width:100%}.btn-primary:hover,.btn-primary:focus-visible{box-shadow:0 0 0 4px #e2b05f40}.skill-block li:before{content:"";background:var(--amber);flex-shrink:0;width:5px;height:5px;animation:2.4s ease-in-out infinite dotPulse}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.4}}.experience-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.experience-list li{color:var(--steel);align-items:baseline;gap:14px;font-size:15.5px;line-height:1.65;display:flex}.exp-arrow{color:var(--amber);user-select:none;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700;line-height:1}.exp-text{flex:1}[data-theme=bright] .hero .btn-outline{color:var(--amber-dim);border-color:#92400e8c}[data-theme=bright] .hero .btn-outline:hover,[data-theme=bright] .hero .btn-outline:focus-visible{border-color:var(--amber-dim);color:var(--amber-dim);background:#b453091a}.experience-sep{opacity:.5;color:var(--steel)!important}[data-theme=bright] .error-content{background:#0e081cf2!important}[data-theme=bright] .bg-canvas-wrapper:after{content:"";background:#efece7bd;position:absolute;inset:0}[data-theme=bright] .hero h1,[data-theme=bright] .hero p.desc,[data-theme=bright] .hero p.role{text-shadow:0 0 16px #ffffffe6,0 0 4px #fffc}[data-theme=bright] .hero h1{-webkit-text-stroke:0}[data-theme=bright] .hero p.role{color:var(--amber-dim);text-shadow:none;background:#efece7d9;padding:3px 10px;display:inline-block}[data-theme=bright] .nav-mark{isolation:isolate;color:#e3a857;position:relative}[data-theme=bright] .nav-mark:before{content:"";z-index:-1;background:#120721;border-radius:0 0 14px;position:absolute;inset:-14px -20px -14px -100vw}[data-theme=bright] .nav-mark:hover,[data-theme=bright] .nav-mark:focus-visible{color:#fff}:root:not([data-theme=bright]) .bg-canvas-wrapper:before{content:"";pointer-events:none;mix-blend-mode:screen;background:radial-gradient(55% 45% at 85% 8%,#7c3aed57 0%,#0000 70%),radial-gradient(45% 40% at 8% 88%,#e3a85729 0%,#0000 70%),radial-gradient(40% 35% at 50% 55%,#896abd2e 0%,#0000 70%);position:absolute;inset:0}:root:not([data-theme=bright]) .card-glow-bg{display:none}.nav-header-actions[data-astro-cid-wpvy4v7s]{flex-shrink:0;align-items:center;gap:10px;display:none}.nav-theme-btn[data-astro-cid-wpvy4v7s]{width:34px;height:34px;color:var(--steel);cursor:pointer;background:0 0;border:1px solid #e3a8574d;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.nav-theme-btn[data-astro-cid-wpvy4v7s]:hover{border-color:var(--amber);color:var(--amber);background:#e3a85726}.nav-cta-item[data-astro-cid-wpvy4v7s]{align-items:center;display:flex}.nav-cta-btn[data-astro-cid-wpvy4v7s]{background:#e3a8571f;border:1px solid #e3a85766;border-radius:6px;align-items:center;gap:8px;padding:5px 14px;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:500;text-decoration:none;transition:all .2s;color:var(--amber)!important;display:inline-flex!important}.nav-cta-btn[data-astro-cid-wpvy4v7s]:hover{border-color:var(--amber);background:#e3a85740;transform:translateY(-1px);box-shadow:0 0 14px #e3a85740}@media (width<=760px){.nav-header-actions[data-astro-cid-wpvy4v7s]{display:flex}.nav-theme-item[data-astro-cid-wpvy4v7s]{display:none}}
