/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
.visible{visibility:visible}.absolute{position:absolute}.static{position:static}.container{width:100%}.hidden{display:none}.table{display:table}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{color-scheme:dark;--color-background:#07090e;--color-background-soft:#0a0d14;--color-surface:#0e121b;--color-surface-elevated:#141925;--color-text-primary:#f4f6fb;--color-text-secondary:#98a2b4;--color-text-muted:#697385;--color-border:#ffffff1c;--color-border-strong:#ffffff2e;--color-accent:#7582ff;--color-accent-bright:#95a0ff;--color-accent-secondary:#55dfc1;--color-accent-wash:#7582ff1f;--color-positive:#63e6be;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--radius-sm:.55rem;--radius-md:1rem;--radius-lg:1.6rem;--shadow-panel:0 30px 80px #00000052;--container:76rem}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-background);scroll-padding-top:6rem}body{min-width:320px;color:var(--color-text-primary);background:radial-gradient(circle at 50% -20%, #4e5ab821, transparent 34rem), var(--color-background);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6;overflow-x:hidden}::selection{color:#fff;background:#7582ff8c}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:4px}.skip-link{z-index:1000;color:var(--color-background);background:var(--color-text-primary);border-radius:var(--radius-sm);padding:.7rem 1rem;transition:transform .16s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.container{width:min(calc(100% - 3rem), var(--container));margin-inline:auto}.page-shell{isolation:isolate;position:relative}.background-decoration{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.glow{opacity:.16;filter:blur(90px);border-radius:50%;width:36rem;height:36rem;position:absolute}.glow-one{background:var(--color-accent);top:5rem;right:-18rem}.glow-two{background:var(--color-accent-secondary);top:65rem;left:-24rem}.grid-plane{background-image:linear-gradient(#ffffff07 1px,#0000 1px),linear-gradient(90deg,#ffffff07 1px,#0000 1px);background-size:4rem 4rem;width:min(100%,100rem);height:62rem;position:absolute;top:0;left:50%;transform:translate(-50%);mask-image:linear-gradient(#000,#0000 90%)}.site-header{z-index:100;backdrop-filter:blur(18px);background:#07090ed1;border-bottom:1px solid #0000;position:sticky;top:0}.site-header:after{content:"";background:linear-gradient(90deg, transparent, var(--color-border), transparent);height:1px;position:absolute;bottom:0;left:0;right:0}.header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;min-height:5rem;display:grid}.brand,.footer-identity{align-items:center;gap:.75rem;width:max-content;display:flex}.brand-mark{width:2.25rem;height:2.25rem;color:var(--color-text-primary);background:linear-gradient(135deg, #7582ff52, transparent 65%), var(--color-surface);font-family:var(--font-mono);letter-spacing:-.05em;border:1px solid #95a0ff66;border-radius:.65rem;place-items:center;font-size:.72rem;font-weight:700;display:grid;box-shadow:inset 0 0 0 1px #ffffff0a}.brand-copy,.footer-identity p{flex-direction:column;margin:0;line-height:1.15;display:flex}.brand-copy strong,.footer-identity strong{font-size:.86rem;font-weight:650}.brand-copy small,.footer-identity small{color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.02em;margin-top:.28rem;font-size:.64rem}.desktop-nav{align-items:center;gap:.3rem;display:flex}.desktop-nav a{color:var(--color-text-secondary);border-radius:var(--radius-sm);padding:.5rem .7rem;font-size:.79rem;transition:color .16s,background .16s}.desktop-nav a:hover{color:var(--color-text-primary);background:#ffffff0b}.header-cta{justify-self:end}.mobile-navigation{display:none}.button{border:1px solid var(--color-border);min-height:2.85rem;color:var(--color-text-primary);cursor:pointer;background:#ffffff09;border-radius:.68rem;justify-content:center;align-items:center;gap:.55rem;padding:.72rem 1rem;font-size:.84rem;font-weight:650;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.button:hover{border-color:var(--color-border-strong);background:#fff1;transform:translateY(-2px)}.button--small{min-height:2.4rem;padding:.55rem .82rem;font-size:.77rem}.button--primary{color:#fff;background:linear-gradient(135deg,#6b78ed,#5966df);border-color:#95a0ffad;box-shadow:0 12px 30px #5b68e333}.button--primary:hover{border-color:var(--color-accent-bright);background:linear-gradient(135deg,#7985f4,#6471e7);box-shadow:0 14px 36px #5b68e34d}.button--ghost{background:0 0}.text-link{color:var(--color-text-secondary);align-items:center;gap:.4rem;padding:.35rem 0;font-size:.8rem;display:inline-flex}.text-link:hover{color:var(--color-text-primary)}.hero{min-height:calc(100svh - 5rem);padding:clamp(4.5rem,9vh,8rem) 0 clamp(4rem,8vh,6.5rem);position:relative}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(22rem,.92fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.availability-badge{color:#9cebd6;width:max-content;font-family:var(--font-mono);background:#63e6be0e;border:1px solid #63e6be38;border-radius:999px;align-items:center;gap:.52rem;margin-bottom:2.2rem;padding:.45rem .7rem;font-size:.68rem;display:inline-flex}.availability-badge span{background:var(--color-positive);border-radius:50%;width:.42rem;height:.42rem;box-shadow:0 0 0 .24rem #63e6be1a}.hero-kicker,.section-eyebrow,.visual-label{color:var(--color-accent-bright);font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.68rem;font-weight:600}.hero h1{letter-spacing:-.068em;text-wrap:balance;max-width:12ch;margin:0;font-size:clamp(3.35rem,6.2vw,6.4rem);font-weight:650;line-height:.95}.hero-description{max-width:38rem;color:var(--color-text-secondary);margin:1.75rem 0 0;font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.social-links{flex-wrap:wrap;gap:.65rem;margin-top:2rem;display:flex}.social-links a{min-height:2.5rem;color:var(--color-text-secondary);border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:.48rem;padding:.55rem .72rem;font-size:.75rem;transition:color .16s,border-color .16s,background .16s;display:inline-flex}.social-links a:hover{border-color:var(--color-border);color:var(--color-text-primary);background:#ffffff06}.hero-visual{position:relative}.visual-label{color:var(--color-text-muted);text-align:right;margin-bottom:.7rem}.architecture-visual{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);background:linear-gradient(135deg,#7582ff14,#0000 45%),#0c1018eb;position:relative;overflow:hidden}.architecture-visual:before{content:"";background:linear-gradient(115deg,#0000 30%,#ffffff09 48%,#0000 66%);animation:9s ease-in-out infinite surface-scan;position:absolute;inset:0;transform:translate(-100%)}.architecture-topline,.architecture-footer{z-index:2;color:var(--color-text-muted);font-family:var(--font-mono);justify-content:space-between;align-items:center;font-size:.62rem;display:flex;position:relative}.architecture-topline{border-bottom:1px solid var(--color-border);padding:.9rem 1rem}.live-dot{color:#83ddc7;align-items:center;gap:.4rem;display:inline-flex}.live-dot:before{content:"";background:var(--color-positive);border-radius:50%;width:.35rem;height:.35rem}.architecture-canvas{background-image:radial-gradient(circle,#ffffff17 1px,#0000 1px),linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-position:0 0,0 0,0 0;background-size:1.35rem 1.35rem,4.05rem 4.05rem,4.05rem 4.05rem;min-height:31rem;position:relative}.architecture-node{z-index:3;border:1px solid var(--color-border-strong);background:#111621eb;border-radius:.75rem;grid-template-columns:auto 1fr;gap:0 .6rem;width:9.8rem;padding:.8rem .85rem;display:grid;position:absolute;box-shadow:0 12px 30px #0003}.node-indicator{border:1px solid var(--color-accent-bright);background:#7582ff40;border-radius:50%;grid-row:1/span 2;align-self:center;width:.5rem;height:.5rem}.architecture-node strong{font-size:.72rem;font-weight:650}.architecture-node small{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.56rem}.node-api{top:2.6rem;left:1.8rem}.node-service{border-color:#7582ff7a;top:10.9rem;left:calc(50% - 4.9rem);box-shadow:0 0 34px #7582ff17}.node-events{top:20rem;left:1.8rem}.node-data{bottom:2.65rem;right:1.8rem}.architecture-route{z-index:1;border-bottom:1px solid #95a0ff42;border-right:1px solid #95a0ff42;display:block;position:absolute}.route-a{width:calc(50% - 6.6rem);height:8.2rem;top:5.25rem;left:11.55rem}.route-b{border-left:1px solid #95a0ff42;border-right:0;width:calc(50% - 6.6rem);height:11.4rem;top:13.55rem;right:11.5rem}.route-c{width:calc(100% - 23rem);height:2.2rem;bottom:7.2rem;left:11.6rem}.architecture-pulse{align-items:end;gap:.23rem;height:3rem;display:flex;position:absolute;top:5.2rem;right:2rem}.architecture-pulse span{background:var(--color-accent-secondary);opacity:.7;border-radius:999px;width:.28rem}.architecture-pulse span:first-child{height:35%}.architecture-pulse span:nth-child(2){height:75%}.architecture-pulse span:nth-child(3){height:50%}.architecture-pulse span:nth-child(4){height:95%}.architecture-pulse span:nth-child(5){height:62%}.architecture-footer{border-top:1px solid var(--color-border);padding:.85rem 1rem}.architecture-footer span{align-items:center;gap:.35rem;display:flex}.architecture-footer i{background:var(--color-accent-secondary);border-radius:50%;width:.4rem;height:.4rem}.architecture-footer strong{color:var(--color-text-secondary);font-weight:500}.hero-signature{border:1px solid var(--color-border);background:#0a0d14f0;border-radius:.8rem;align-items:center;gap:.65rem;padding:.75rem .9rem;display:flex;position:absolute;bottom:-1.55rem;right:-1.35rem;box-shadow:0 18px 35px #00000047}.hero-signature>span{width:2rem;height:2rem;color:var(--color-accent-bright);background:var(--color-accent-wash);font-family:var(--font-mono);border-radius:.45rem;place-items:center;font-size:.62rem;display:grid}.hero-signature p{flex-direction:column;margin:0;line-height:1.2;display:flex}.hero-signature strong{font-size:.68rem}.hero-signature small{color:var(--color-text-muted);margin-top:.2rem;font-size:.57rem}.highlight-strip{border-block:1px solid var(--color-border);background:#ffffff05}.highlight-strip .container{grid-template-columns:repeat(5,1fr);display:grid}.highlight-strip span{border-right:1px solid var(--color-border);min-height:5.5rem;color:var(--color-text-secondary);align-items:center;gap:.65rem;padding:1rem;font-size:.77rem;display:flex}.highlight-strip span:first-child{border-left:1px solid var(--color-border)}.highlight-strip em{color:var(--color-accent-bright);font-family:var(--font-mono);font-size:.58rem;font-style:normal}.section{padding:clamp(6rem,11vw,10rem) 0}.section-heading{margin-bottom:clamp(3rem,6vw,5rem)}.section-heading__row{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);align-items:end;gap:3rem;display:grid}.section-heading h2{letter-spacing:-.055em;text-wrap:balance;max-width:16ch;margin:0;font-size:clamp(2.45rem,4.8vw,4.7rem);font-weight:620;line-height:1}.section-heading__row>p{max-width:36rem;color:var(--color-text-secondary);margin:0;font-size:.94rem}.about-section{border-bottom:1px solid var(--color-border)}.about-grid{grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:clamp(3rem,8vw,8rem);display:grid}.about-copy p{color:#c5cbd6;letter-spacing:-.02em;margin:0;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.55}.about-copy p+p{color:var(--color-text-secondary);margin-top:1.3rem;font-size:clamp(1rem,1.5vw,1.2rem)}.about-context{border-top:1px solid var(--color-border-strong)}.about-context>div{border-bottom:1px solid var(--color-border);color:var(--color-accent-bright);grid-template-columns:auto 1fr;gap:.8rem;padding:1.25rem 0;display:grid}.about-context span{flex-direction:column;display:flex}.about-context small{color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem;font-size:.6rem}.about-context strong{color:var(--color-text-primary);font-size:.82rem;font-weight:500}.experience-section{background:linear-gradient(#ffffff03,#0000)}.timeline{position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--color-accent), var(--color-border), transparent);width:1px;position:absolute;top:0;bottom:0;left:3rem}.timeline-item{grid-template-columns:6rem 1fr;display:grid;position:relative}.timeline-marker{z-index:2;padding-top:2.2rem;position:relative}.timeline-marker span{width:2rem;height:2rem;color:var(--color-accent-bright);background:var(--color-background);font-family:var(--font-mono);border:1px solid #7582ff6b;border-radius:50%;place-items:center;margin-inline:auto;font-size:.56rem;display:grid}.timeline-content{border-top:1px solid var(--color-border);padding:2rem 0 3.4rem 2rem}.timeline-heading{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.entry-label{color:var(--color-text-muted);font-family:var(--font-mono);text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 .6rem;font-size:.61rem;display:flex}.entry-label span{color:var(--color-accent-bright);background:var(--color-accent-wash);border:1px solid #7582ff4d;border-radius:999px;padding:.2rem .4rem}.timeline h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.5rem,2.4vw,2.25rem);font-weight:600}.company{color:var(--color-text-secondary);margin:.28rem 0 0;font-size:.86rem}.timeline time{color:var(--color-text-muted);font-family:var(--font-mono);flex:none;padding-top:.2rem;font-size:.65rem}.timeline-summary{max-width:48rem;color:var(--color-text-secondary);margin:1.35rem 0 1.1rem}.achievement-list{max-width:52rem;margin:0;padding:0;list-style:none}.achievement-list li{color:#bac1cc;padding-left:1.25rem;font-size:.9rem;position:relative}.achievement-list li+li{margin-top:.6rem}.achievement-list li:before{content:"";border:1px solid var(--color-accent-secondary);border-radius:50%;width:.32rem;height:.32rem;position:absolute;top:.7em;left:0}.tag-list{flex-wrap:wrap;gap:.45rem;margin-top:1.4rem;display:flex}.tag-list span{border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-mono);background:#ffffff05;border-radius:.35rem;padding:.28rem .5rem;font-size:.6rem}.projects-section{border-block:1px solid var(--color-border);background:#090c12}.projects-list{gap:1.25rem;display:grid}.project-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(125deg,#ffffff06,#0000 65%);grid-template-columns:8rem minmax(0,1fr) minmax(18rem,.74fr);transition:transform .22s,border-color .22s,box-shadow .22s;display:grid;position:relative;overflow:hidden}.project-card:hover{border-color:#7582ff4d;transform:translateY(-3px);box-shadow:0 24px 70px #0003}.project-card__meta{border-right:1px solid var(--color-border);flex-direction:column;align-items:flex-start;padding:1.6rem 1.2rem;display:flex}.project-card__meta>span{color:var(--color-accent-bright);font-family:var(--font-mono);font-size:.64rem}.project-card__meta p{color:var(--color-text-secondary);font-family:var(--font-mono);writing-mode:vertical-rl;margin:auto 0 0;font-size:.62rem;transform:rotate(180deg)}.project-card__meta em{color:var(--color-accent-secondary);font-family:var(--font-mono);text-transform:uppercase;background:#55dfc114;border-radius:.3rem;margin-top:1rem;padding:.22rem .38rem;font-size:.54rem;font-style:normal}.project-card__content{padding:clamp(1.6rem,3.5vw,3rem)}.project-status{color:var(--color-accent-secondary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .8rem;font-size:.61rem}.project-card h3{letter-spacing:-.045em;max-width:18ch;margin:0;font-size:clamp(1.8rem,3vw,3rem);font-weight:600;line-height:1.05}.project-summary{max-width:42rem;color:var(--color-text-secondary);margin:1rem 0 0;font-size:.9rem}.project-decisions{gap:.85rem;margin:1.6rem 0 0;display:grid}.project-decisions div{grid-template-columns:4rem 1fr;gap:.8rem;display:grid}.project-decisions dt{color:var(--color-text-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:.58rem}.project-decisions dd{color:#b8bfca;margin:0;font-size:.78rem}.project-links{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.project-links a{color:var(--color-text-primary);align-items:center;gap:.45rem;font-size:.75rem;font-weight:650;display:inline-flex}.project-links a:hover{color:var(--color-accent-bright)}.project-architecture{border-left:1px solid var(--color-border);background:#07090e6b;flex-direction:column;justify-content:center;min-width:0;padding:2rem;display:flex;position:relative;overflow:hidden}.architecture-caption{z-index:2;color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2rem;font-size:.56rem;position:relative}.project-flow{z-index:2;flex-direction:column;align-items:flex-start;gap:0;display:flex;position:relative}.project-flow span,.case-study__architecture span{border:1px solid var(--color-border-strong);color:#c7cdd8;min-height:2.25rem;font-family:var(--font-mono);background:#121722f0;border-radius:.45rem;align-items:center;padding:.5rem .65rem;font-size:.6rem;display:inline-flex}.project-flow i{background:linear-gradient(to bottom, var(--color-accent), var(--color-accent-secondary));width:1px;height:1.05rem;margin-left:1.2rem}.project-grid-decoration{background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:2rem 2rem;position:absolute;inset:0;mask-image:linear-gradient(135deg,#000,#0000 75%)}.stack-grid{border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);grid-template-columns:repeat(5,1fr);display:grid}.stack-grid article{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);min-width:0;padding:1.35rem;transition:background .18s}.stack-grid article:hover{background:#7582ff09}.stack-index{color:var(--color-accent-bright);font-family:var(--font-mono);font-size:.58rem}.stack-grid h3{letter-spacing:-.02em;min-height:2.9rem;margin:.9rem 0 1.5rem;font-size:1rem;font-weight:600}.stack-grid ul{margin:0;padding:0;list-style:none}.stack-grid li{color:#bec4ce;border-top:1px solid #ffffff0e;flex-wrap:wrap;justify-content:space-between;gap:.4rem;padding:.55rem 0;font-size:.75rem;display:flex}.stack-grid small{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.52rem}.principles-section{border-top:1px solid var(--color-border);background:linear-gradient(#ffffff04,#0000)}.principles-grid{grid-template-columns:repeat(4,1fr);gap:.8rem;display:grid}.principles-grid article{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff05;min-height:16rem;padding:1.6rem;transition:border-color .18s,background .18s,transform .18s}.principles-grid article:hover{background:#7582ff0b;border-color:#7582ff4d;transform:translateY(-3px)}.principles-grid article>span{color:var(--color-accent-bright);font-family:var(--font-mono);font-size:.63rem}.principles-grid h3{letter-spacing:-.03em;max-width:10ch;margin:4.5rem 0 .75rem;font-size:1.3rem;font-weight:600;line-height:1.15}.principles-grid p{color:var(--color-text-secondary);margin:0;font-size:.78rem}.contact-section{padding-top:4rem}.contact-panel{border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);background:radial-gradient(circle at 80% 20%,#7582ff38,#0000 25rem),linear-gradient(135deg,#101522,#0a0e16);border:1px solid #7582ff47;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);align-items:end;gap:3rem;padding:clamp(2rem,5vw,4.5rem);display:grid;position:relative;overflow:hidden}.contact-panel:after{content:"";border:1px solid #7582ff26;border-radius:50%;width:24rem;height:24rem;position:absolute;bottom:-9rem;right:-5rem;box-shadow:0 0 0 3rem #7582ff06,0 0 0 6rem #7582ff05}.contact-panel>*{z-index:2;position:relative}.contact-panel h2{letter-spacing:-.06em;max-width:14ch;margin:0;font-size:clamp(2.45rem,5vw,5rem);font-weight:620;line-height:.98}.contact-panel>div:first-child>p:last-child{max-width:38rem;color:var(--color-text-secondary);margin:1.5rem 0 0}.contact-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.contact-icon-link{border:1px solid var(--color-border);width:2.85rem;height:2.85rem;color:var(--color-text-secondary);border-radius:.68rem;place-items:center;transition:color .16s,border-color .16s,transform .16s;display:grid}.contact-icon-link:hover{border-color:var(--color-border-strong);color:var(--color-text-primary);transform:translateY(-2px)}.copy-email .check-icon,.copy-email.is-copied .copy-icon{display:none}.copy-email.is-copied .check-icon{display:block}.contact-form{border-top:1px solid var(--color-border);grid-column:1/-1;grid-template-columns:1fr 1fr;gap:1rem;padding-top:2rem;display:grid}.contact-form label{color:var(--color-text-secondary);gap:.45rem;font-size:.75rem;display:grid}.contact-form label:nth-child(3){grid-column:1/-1}.contact-form input,.contact-form textarea{border:1px solid var(--color-border);width:100%;color:var(--color-text-primary);border-radius:var(--radius-sm);background:#ffffff09;padding:.75rem}.contact-form button{justify-self:start}.site-footer{padding:1.7rem 0 2.3rem}.footer-grid{border-top:1px solid var(--color-border);grid-template-columns:1fr auto auto auto;align-items:center;gap:1.5rem;padding-top:1.7rem;display:grid}.footer-note{color:var(--color-text-muted);font-family:var(--font-mono);text-align:right;margin:0;font-size:.58rem}.social-links--compact{margin:0}.social-links--compact a{width:2.35rem;padding-inline:0}.back-to-top{border:1px solid var(--color-border);width:2.35rem;height:2.35rem;color:var(--color-text-secondary);border-radius:var(--radius-sm);place-items:center;display:grid}.back-to-top:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.case-study{padding:6rem 0 8rem}.breadcrumbs{color:var(--color-text-muted);font-family:var(--font-mono);flex-wrap:wrap;gap:.55rem;margin-bottom:3.5rem;font-size:.65rem;display:flex}.breadcrumbs a:hover{color:var(--color-text-primary)}.case-study__title{grid-template-columns:minmax(0,1fr) 18rem;align-items:end;gap:4rem;display:grid}.case-study__title h1{letter-spacing:-.068em;max-width:14ch;margin:0;font-size:clamp(3rem,7vw,6.6rem);font-weight:620;line-height:.94}.case-study__title>div>p:last-child{max-width:44rem;color:var(--color-text-secondary);margin:1.5rem 0 0;font-size:1.05rem}.case-study__title dl{border-top:1px solid var(--color-border);margin:0}.case-study__title dl div{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:1rem;padding:.85rem 0;display:flex}.case-study__title dt{color:var(--color-text-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:.59rem}.case-study__title dd{color:var(--color-text-secondary);text-align:right;margin:0;font-size:.7rem}.case-study__architecture{border:1px solid var(--color-border);background:linear-gradient(135deg, #7582ff12, transparent), var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);align-items:center;margin-top:4.5rem;padding:2.4rem;display:flex;overflow-x:auto}.case-study__architecture span{flex:none}.case-study__architecture i{background:linear-gradient(90deg, var(--color-accent), var(--color-accent-secondary));flex:1 0 2.5rem;min-width:2.5rem;height:1px}.case-study__body{grid-template-columns:11rem minmax(0,1fr) 13rem;align-items:start;gap:clamp(2rem,5vw,5rem);margin-top:6rem;display:grid}.case-study__body>aside{flex-direction:column;display:flex;position:sticky;top:7rem}.case-study__body>aside>p{color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 1rem;font-size:.59rem}.case-study__body>aside>a{color:var(--color-text-secondary);padding:.35rem 0;font-size:.7rem}.case-study__body>aside>a:hover{color:var(--color-text-primary)}.prose{min-width:0}.prose h2{letter-spacing:-.04em;margin:4rem 0 1rem;font-size:clamp(1.65rem,3vw,2.4rem);font-weight:600}.prose h2:first-child{margin-top:0}.prose p{color:#bac1cc;margin:0 0 1.2rem;font-size:1rem;line-height:1.8}.prose ul{margin:0 0 1.5rem;padding:0;list-style:none}.prose li{color:#bac1cc;padding-left:1.3rem;position:relative}.prose li+li{margin-top:.65rem}.prose li:before{content:"";background:var(--color-accent-secondary);border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.7em;left:0}.case-study__facts .tag-list{margin-top:0}.case-study__links{border-top:1px solid var(--color-border);gap:.55rem;margin-top:1.3rem;padding-top:1.2rem;display:grid}.case-study__links a{color:var(--color-text-secondary);align-items:center;gap:.45rem;font-size:.7rem;display:inline-flex}.case-study__nav{border-top:1px solid var(--color-border);grid-template-columns:1fr 1.5fr;align-items:stretch;margin-top:7rem;display:grid}.case-study__nav>a{align-items:center;gap:.7rem;min-height:8rem;padding:1.5rem;display:flex}.case-study__nav>a+a{border-left:1px solid var(--color-border);text-align:right;justify-content:flex-end}.case-study__nav a:hover{background:#ffffff06}.case-study__nav span{flex-direction:column;font-size:.9rem;display:flex}.case-study__nav small{color:var(--color-text-muted);font-family:var(--font-mono);text-transform:uppercase;margin-bottom:.25rem;font-size:.56rem}.not-found{background:radial-gradient(circle at center, #7582ff21, transparent 28rem), var(--color-background);place-items:center;min-height:100svh;padding:2rem;display:grid}.not-found__panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);max-width:42rem;box-shadow:var(--shadow-panel);padding:clamp(2rem,7vw,5rem)}.not-found__panel>svg{color:var(--color-accent-bright);margin-bottom:2rem}.not-found h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.8rem,7vw,5.5rem);font-weight:620;line-height:.98}.not-found__panel>p:not(.section-eyebrow){max-width:34rem;color:var(--color-text-secondary);margin:1.4rem 0 2rem}.js [data-reveal]{opacity:0;transition:opacity .62s,transform .62s cubic-bezier(.2,.8,.2,1);transform:translateY(1.4rem)}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes surface-scan{0%,35%{transform:translate(-110%)}65%,to{transform:translate(110%)}}@media (width<=1100px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(20rem,.78fr);gap:3rem}.project-card{grid-template-columns:5rem minmax(0,1fr) minmax(15rem,.65fr)}.stack-grid{grid-template-columns:repeat(3,1fr)}.principles-grid{grid-template-columns:repeat(2,1fr)}.case-study__body{grid-template-columns:minmax(0,1fr) 12rem}.case-study__body>aside:first-child{display:none}}@media (width<=860px){.container{width:min(calc(100% - 2rem), var(--container))}.header-inner{grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.mobile-navigation{justify-self:end;display:block;position:relative}.mobile-navigation summary{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;place-items:center;width:2.7rem;height:2.7rem;list-style:none;display:grid}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation .menu-close,.mobile-navigation[open] .menu-open{display:none}.mobile-navigation[open] .menu-close{display:block}.mobile-navigation nav{border:1px solid var(--color-border-strong);width:min(19rem,100vw - 2rem);box-shadow:var(--shadow-panel);background:#0d111afa;border-radius:.8rem;padding:.7rem;display:grid;position:absolute;top:calc(100% + .75rem);right:0}.mobile-navigation nav>a:not(.button){color:var(--color-text-secondary);border-radius:var(--radius-sm);padding:.75rem;font-size:.84rem}.mobile-navigation nav>a:not(.button):hover{color:var(--color-text-primary);background:#ffffff0a}.mobile-navigation nav .button{margin-top:.5rem}.hero{padding-top:4rem}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:44rem}.hero-visual{max-width:38rem;margin-left:auto}.highlight-strip .container{grid-template-columns:repeat(2,1fr)}.highlight-strip span:first-child{border-left:0}.section-heading__row,.about-grid{grid-template-columns:1fr;gap:1.4rem}.section-heading h2{max-width:18ch}.about-grid{gap:3.5rem}.project-card{grid-template-columns:4rem 1fr}.project-architecture{border-top:1px solid var(--color-border);border-left:0;grid-column:1/-1;min-height:16rem}.project-flow{flex-direction:row;align-items:center;overflow-x:auto}.project-flow span{flex:none}.project-flow i{flex:0 0 1.4rem;width:1.4rem;height:1px;margin-left:0}.stack-grid{grid-template-columns:repeat(2,1fr)}.contact-panel{grid-template-columns:1fr;align-items:start}.contact-actions{justify-content:flex-start}.footer-grid{grid-template-columns:1fr auto}.footer-note{display:none}.case-study{padding-top:4rem}.case-study__title{grid-template-columns:1fr;gap:2.5rem}.case-study__title dl{max-width:28rem}.case-study__body{grid-template-columns:1fr}.case-study__facts{border-top:1px solid var(--color-border);padding-top:2rem;position:static!important}}@media (width<=560px){.brand-copy small{display:none}.hero{min-height:auto;padding:3.2rem 0 4.5rem}.availability-badge{margin-bottom:1.5rem}.hero h1{font-size:clamp(3rem,15vw,4.25rem)}.hero-actions{align-items:stretch}.hero-actions .button{flex:calc(50% - .75rem)}.hero-actions .text-link{flex-basis:100%}.social-links{gap:.2rem}.architecture-canvas{min-height:25rem}.architecture-node{width:8rem;padding:.65rem}.node-api,.node-events{left:1rem}.node-data{right:1rem}.node-service{top:9rem;left:calc(50% - 4rem)}.node-events{top:16.5rem}.route-a,.route-b,.route-c,.architecture-footer span:nth-child(2){display:none}.hero-signature{bottom:-1.2rem;right:.75rem}.highlight-strip .container{grid-template-columns:1fr}.highlight-strip span{border-right:0;border-bottom:1px solid var(--color-border);min-height:3.75rem}.highlight-strip span:last-child{border-bottom:0}.section{padding:5.5rem 0}.section-heading h2{font-size:clamp(2.25rem,11vw,3.4rem)}.timeline:before{left:1rem}.timeline-item{grid-template-columns:2rem 1fr}.timeline-marker span{width:1.7rem;height:1.7rem}.timeline-content{padding:1.8rem 0 3rem 1.1rem}.timeline-heading{flex-direction:column;gap:.8rem}.project-card{grid-template-columns:1fr}.project-card__meta{border-right:0;border-bottom:1px solid var(--color-border);flex-direction:row;align-items:center;gap:.8rem;padding:1rem 1.2rem}.project-card__meta p{writing-mode:initial;margin:0;transform:none}.project-card__meta em{margin:0 0 0 auto}.project-architecture{grid-column:auto;min-height:13rem;padding:1.4rem}.project-decisions div{grid-template-columns:1fr;gap:.25rem}.stack-grid,.principles-grid{grid-template-columns:1fr}.stack-grid h3{min-height:0}.principles-grid article{min-height:13rem}.principles-grid h3{margin-top:3rem}.contact-panel{gap:2rem;padding:1.5rem}.contact-actions .button{flex:100%}.contact-form{grid-template-columns:1fr}.contact-form label:nth-child(3){grid-column:auto}.footer-grid{grid-template-columns:1fr auto}.footer-grid .social-links{grid-area:2/1/auto/-1}.back-to-top{grid-area:1/2}.case-study__architecture{margin-top:3rem;padding:1.3rem}.case-study__body{margin-top:4rem}.case-study__nav{grid-template-columns:1fr}.case-study__nav>a+a{border-top:1px solid var(--color-border);border-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}}
