.nav{position:relative;z-index:2;padding-block:1.4rem}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.nav-brand{text-decoration:none}.wm{display:inline-flex;align-items:center;gap:.6rem}.wm-text{font-family:var(--mono);font-size:.95rem;font-weight:500;letter-spacing:-.01em;color:var(--paper)}.wm-cp{color:var(--muted)}.nav-links{display:flex;align-items:center;gap:clamp(1rem,.5rem + 1.6vw,2.25rem);list-style:none;margin:0;padding:0}.nav-links a{font-size:var(--step--1);color:var(--muted);text-decoration:none;transition:color .15s ease}.nav-links a:hover{color:var(--paper)}@media (max-width: 560px){.nav-links li:first-child,.nav-links li:nth-child(2){display:none}}.foot{padding-block:clamp(2.5rem,1.5rem + 3vw,4rem)}.foot-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem}.foot-meta{font-size:var(--step--1);color:var(--muted)}.foot-ver{font-family:var(--mono);color:var(--paper)}.foot-sep{margin-inline:.6rem;color:var(--ink-line)}.foot-links{display:flex;flex-wrap:wrap;gap:clamp(1rem,.5rem + 1.6vw,2rem);list-style:none;margin:0;padding:0}.foot-links a{font-size:var(--step--1);color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease}.foot-links a:hover{color:var(--paper);border-bottom-color:var(--brand)}.cw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;flex:1;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);-webkit-user-select:none;user-select:none}.cw-col{position:relative;animation:cw-drift linear infinite;animation-duration:90s;will-change:transform}.cw-col[data-speed="1"]{animation-duration:130s;animation-direction:reverse}.cw-col[data-speed="2"]{animation-duration:110s}@keyframes cw-drift{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@media (prefers-reduced-motion: reduce){.cw-col{animation:none}}.cw-list{list-style:none;margin:0;padding:0}.cw-item{font-family:var(--mono);font-size:clamp(.58rem,.44rem + .32vw,.72rem);line-height:2.05;color:var(--muted);opacity:.38;white-space:nowrap;overflow:hidden;text-overflow:clip}.cw-item--lit{color:var(--brand-lift);opacity:1}@media (max-width: 900px){.cw{grid-template-columns:repeat(2,minmax(0,1fr))}.cw-item{opacity:.16}.cw-item--lit{opacity:.45}}.il{margin-top:clamp(2rem,1.2rem + 2vw,3rem);max-width:46rem}.il-row{display:flex;align-items:stretch;gap:0;border:var(--rule);background:#14090fb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.il-row+.il-row{border-top:0}.il-code{font-family:var(--mono);font-size:clamp(.7rem,.6rem + .35vw,.84rem);color:var(--paper);padding:.85rem 1rem;overflow-x:auto;white-space:nowrap;flex:1;min-width:0;scrollbar-width:thin}.il-prompt{color:var(--brand-lift);margin-right:.7rem;-webkit-user-select:none;user-select:none}.il-copy{font-family:var(--mono);font-size:var(--step--1);color:var(--muted);background:transparent;border:0;border-left:var(--rule);padding-inline:1.1rem;cursor:pointer;transition:color .15s ease,background-color .15s ease;flex-shrink:0}.il-copy:hover{color:var(--paper);background:#b7236a29}.il-note{margin-top:1rem;font-size:var(--step--1);color:var(--muted);max-width:52ch}.hero{position:relative;padding-block:clamp(3rem,1.5rem + 6vw,6.5rem) clamp(3.5rem,2rem + 6vw,7rem);overflow:hidden}.hero:before{content:"";position:absolute;inset:auto -20% -55% -20%;height:90%;background:radial-gradient(ellipse at 42% 100%,rgba(183,35,106,.62),rgba(183,35,106,.16) 42%,transparent 72%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2rem,1rem + 4vw,4rem);align-items:stretch}.hero-say{align-self:center}.hero-title{font-size:var(--step-3);max-width:15ch}.hero-title em{font-style:italic;color:var(--brand-lift)}.hero-lede{margin-top:1.5rem;font-size:var(--step-1);line-height:1.45;color:var(--muted);max-width:46ch}.hero-wall{position:relative;height:clamp(430px,68vh,660px);display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.hero-wall-caption{font-size:var(--step--1);color:var(--muted);line-height:1.55;border-top:var(--rule);padding-top:.9rem;max-width:42ch}.hero-wall-count{font-family:var(--mono);color:var(--paper)}.hero-tagline-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 900px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-wall{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;z-index:0;pointer-events:none}.hero-say{position:relative;z-index:1}.hero-wall-caption{display:none}}.plat-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,1rem + 4vw,4.5rem);align-items:start}.plat-list{list-style:none;margin:0;padding:0}.plat-item{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:.85rem;padding-block:.9rem;border-bottom:var(--rule)}.plat-item:first-child{border-top:var(--rule)}.plat-dot{width:6px;height:6px;border-radius:50%;background:var(--signal);transform:translateY(-2px)}.plat-os{font-family:var(--display);font-size:var(--step-1)}.plat-rel{font-family:var(--mono);font-size:var(--step--1);color:var(--muted)}.plat-notes{list-style:none;margin:0;padding:0}.plat-note{position:relative;padding-left:1.5rem;color:var(--muted);font-size:var(--step--1);line-height:1.65}.plat-note+.plat-note{margin-top:.9rem}.plat-note:before{content:"";position:absolute;left:0;top:.62em;width:.65rem;height:1px;background:var(--brand)}@media (max-width: 760px){.plat-grid{grid-template-columns:minmax(0,1fr)}}.svc-head{font-size:var(--step-2);max-width:22ch;margin-bottom:clamp(2rem,1.2rem + 2vw,3.25rem)}.svc-table{margin:0;border-top:var(--rule)}.svc-row{display:grid;grid-template-columns:7rem minmax(0,15rem) minmax(0,1fr);gap:1.5rem;align-items:baseline;padding-block:1.15rem;border-bottom:var(--rule);transition:background-color .18s ease}.svc-row:hover{background:#b7236a12}.svc-job{font-family:var(--display);font-size:var(--step-1);color:var(--paper);margin:0}.svc-stack{font-family:var(--mono);font-size:var(--step--1);color:var(--brand-lift);margin:0;line-height:1.5}.svc-detail{margin:0;color:var(--muted);font-size:var(--step--1);line-height:1.6}@media (max-width: 760px){.svc-row{grid-template-columns:minmax(0,1fr);gap:.35rem;padding-block:1.15rem}}:root{--ink: #14090f;--ink-raised: #1e0e17;--ink-line: #33202b;--brand: #b7236a;--brand-lift: #e8467f;--signal: #4ade9b;--paper: #f6edf1;--muted: #a08d97;--display: "Instrument Serif", "Iowan Old Style", Georgia, serif;--body: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--step--1: clamp(.78rem, .75rem + .15vw, .86rem);--step-0: clamp(.95rem, .92rem + .2vw, 1.05rem);--step-1: clamp(1.2rem, 1.1rem + .5vw, 1.5rem);--step-2: clamp(1.7rem, 1.4rem + 1.4vw, 2.6rem);--step-3: clamp(2.6rem, 1.9rem + 3.4vw, 5.4rem);--gutter: clamp(1.25rem, .9rem + 1.8vw, 3rem);--measure: 62ch;--rule: 1px solid var(--ink-line)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:-.01em;margin:0}p{margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--brand-lift);outline-offset:3px;border-radius:2px}.shell{width:min(100% - calc(var(--gutter) * 2),1180px);margin-inline:auto}.band{border-top:var(--rule);padding-block:clamp(3.5rem,2rem + 7vw,7rem)}.eyebrow{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:1.75rem;display:block}.lede{font-size:var(--step-1);color:var(--muted);max-width:var(--measure);line-height:1.45}
