@media(min-width:1180px){.split-root__toolbar{top:34px;left:calc(50% + 40px);right:40px}.split-root__terminal{margin-top:36px;min-height:278px}}.theme-root.is-minimal #main-content{--root-gutter: clamp(18px, 2.5vw, 56px);display:flex;flex-direction:column;min-height:100svh}.split-root{--root-title-size: clamp(3rem, 5.8vw, 6.75rem);flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto minmax(32px,1fr) repeat(4,auto)}.split-root__toolbar{position:fixed;top:28px;left:calc(50% + 28px);right:28px;z-index:5;display:flex;justify-content:flex-end;pointer-events:none}.split-root__panel{position:relative;display:grid;grid-row:span 6;grid-template-rows:subgrid;min-width:0;padding:var(--root-gutter);border-inline:1px solid transparent;overflow:hidden}.split-root__panel:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.9}.split-root__panel--devops{--devops-bg: #eee2ca;--devops-bg-alt: rgba(248, 240, 225, .86);--devops-surface: rgba(242, 232, 214, .94);--devops-border: #7f9db2;--devops-text: #17334b;--devops-muted: #55616a;--devops-accent: #215979;--devops-accent-dim: #163f59;--devops-accent-bright: #215f82;--devops-prod-badge: #b8271f;--devops-prod-badge-muted: #9b2b3a;--devops-shadow: 0 20px 44px rgba(28, 74, 108, .09);--devops-glow: 0 0 0 1px rgba(33, 89, 121, .12), 0 0 26px rgba(33, 89, 121, .12);--devops-hero-glow: 0 0 12px rgba(33, 89, 121, .1);--devops-hero-glow-hover: 0 0 8px rgba(33, 89, 121, .08);color:var(--devops-text);font-family:JetBrains Mono,IBM Plex Mono,Courier New,monospace;background:radial-gradient(circle at 18% 84%,rgba(33,89,121,.1),transparent 26%),linear-gradient(180deg,#f5eddd,#ecdfc5 58%,#dfccad)}.split-root__panel--devops:before{background:radial-gradient(circle at 14% 16%,rgba(255,255,255,.34),transparent 24%),linear-gradient(180deg,rgba(255,255,255,.28),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.015) 0px,transparent 1px,transparent 2px,rgba(0,0,0,.015) 3px);opacity:.74}html[data-theme=dark] .split-root__panel--devops{--devops-bg: #0a0e14;--devops-bg-alt: #0d1117;--devops-surface: #161b22;--devops-border: #30363d;--devops-text: #e6edf3;--devops-muted: #8b949e;--devops-accent: #a78bfa;--devops-accent-dim: #8b5cf6;--devops-accent-bright: #c4b5fd;--devops-prod-badge: #2d9940;--devops-prod-badge-muted: #358745;--devops-shadow: 0 8px 24px rgba(0, 0, 0, .4);--devops-glow: 0 0 20px rgba(167, 139, 250, .3);--devops-hero-glow: 0 0 8px rgba(167, 139, 250, .2);--devops-hero-glow-hover: 0 0 4px rgba(167, 139, 250, .1);color:var(--devops-text);background:var(--devops-bg)}html[data-theme=dark] .split-root__panel--devops:before{background:repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0px,transparent 1px,transparent 2px,rgba(255,255,255,.015) 3px)}.split-root__panel--photo{--photo-panel-fill: #0b0b0a;--photo-word: #ecebe7;--photo-word-glow: rgba(119, 170, 164, .12);--photo-aperture-rim: #77aaa4;--photo-aperture-shell: transparent;--photo-aperture-blade: #ecebe7;--photo-aperture-seam: rgba(11, 11, 10, .38);--photo-aperture-opening: #0b0b0a;color:#ecebe7;background:var(--photo-panel-fill)}@font-face{font-family:Root Pixel;src:url(/webdev/reference/neue-bit-bold.woff2) format("woff2");font-weight:700;font-display:swap}.root-masthead{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(14px,1.5vw,28px) var(--root-gutter);border-bottom:1px solid #343434;background:#0e0e0e;color:#fff}.root-masthead h1{font:700 clamp(28px,6.8vw,84px)/.9 "Root Pixel",monospace;text-transform:uppercase;margin:0}.root-masthead img{width:clamp(96px,16vw,220px);height:auto;filter:invert(1)}.split-root__panel--webdev{background:#1a1a1a;color:#fff;border-inline-color:#343434}.split-root__panel--webdev:before{content:none}.split-root__panel--webdev .split-root__meta{color:currentColor;opacity:1;text-transform:none}.split-root__panel--webdev .split-root__title{font-family:Root Pixel,monospace;font-size:calc(var(--root-title-size) * 1.23);font-weight:700;line-height:.8;letter-spacing:0;text-transform:uppercase}.root-project-window{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:8px;border:1px solid #7a7a7a;box-shadow:5px 5px #000}.root-window-bar{display:flex;gap:6px;align-items:center;font:14px/1 monospace}.root-window-bar i{flex:1;height:8px;background:repeating-linear-gradient(0deg,currentColor 0 1px,transparent 1px 3px)}.root-webdev-field{display:block;width:100%;height:100%;min-width:0;min-height:0;background:#000 url(/webdev/art/field-memory-2.svg) center / cover;image-rendering:pixelated}.split-root__panel--webdev:hover .root-project-window{transform:translate(-2px,-2px);box-shadow:7px 7px #000}.split-root__panel--photo:before{background:repeating-linear-gradient(0deg,rgba(236,235,231,.012) 0px,transparent 1px,transparent 3px);opacity:.5}.split-root__panel--photo:after{content:none}.split-root__panel--photo .split-root__meta{color:#77aaa4;opacity:1}html[data-theme=dark] .split-root__panel--photo{--photo-panel-fill: #0b0b0a;--photo-word: #f4eadf;--photo-word-glow: rgba(119, 170, 164, .12);--photo-aperture-rim: #77aaa4;--photo-aperture-shell: transparent;--photo-aperture-blade: #ecebe7;--photo-aperture-seam: rgba(11, 11, 10, .38);--photo-aperture-opening: #0b0b0a;color:#ecebe7;background:var(--photo-panel-fill)}html[data-theme=dark] .split-root__panel--photo:before{background:repeating-linear-gradient(0deg,rgba(236,235,231,.012) 0px,transparent 1px,transparent 3px);opacity:.5}html[data-theme=dark] .split-root__panel--photo:after{content:none}.split-root__meta,.split-root__content{width:100%;max-width:40rem;margin-inline:auto}.split-root__meta{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;opacity:.86}.split-root__panel--devops .split-root__meta{color:var(--devops-muted)}.split-root__content{position:relative;z-index:1;display:grid;grid-row:3 / span 4;grid-template-rows:subgrid;min-width:0}.split-root__title{display:flex;align-items:center;margin:0;font-family:var(--font-display);font-size:var(--root-title-size);line-height:1;letter-spacing:-.05em;white-space:nowrap}.split-root__word{position:relative;display:inline-block}.split-root__word--devops{color:var(--devops-accent-bright);text-shadow:var(--devops-hero-glow);transition:color .3s ease-out,text-shadow .3s ease-out,transform .3s ease-out}.split-root__word--devops:after{content:"█";margin-left:4px;color:var(--devops-accent-bright);animation:split-root-blink 1s step-end infinite}.split-root__panel--devops:hover .split-root__word--devops{color:var(--devops-accent-dim);text-shadow:var(--devops-hero-glow-hover);transform:translate(3px)}.split-root__panel--devops:hover .split-root__word--devops:after{color:var(--devops-accent-dim)}.split-root__panel--devops:hover .split-root__word--devops.is-typing{color:var(--devops-accent-bright);text-shadow:var(--devops-hero-glow);transform:none}.split-root__panel--devops:hover .split-root__word--devops.is-typing:after{color:var(--devops-accent-bright)}.split-root__photo-lockup{display:inline-flex;align-items:center;gap:.2em}.split-root__photo-aperture{position:relative;width:.68em;aspect-ratio:1;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid var(--photo-aperture-rim);background:var(--photo-aperture-shell);box-shadow:inset 0 0 0 1px #77aaa424,0 18px 42px #0000002e;transition:transform .38s ease,box-shadow .38s ease,border-color .38s ease;animation:split-root-photo-aperture-breathe 7.2s ease-in-out infinite}.split-root__photo-aperture:before{content:"";position:absolute;inset:8%;border-radius:50%;background:conic-gradient(from -18deg,var(--photo-aperture-blade) 0deg 53deg,var(--photo-aperture-seam) 53deg 55deg,var(--photo-aperture-blade) 55deg 113deg,var(--photo-aperture-seam) 113deg 115deg,var(--photo-aperture-blade) 115deg 173deg,var(--photo-aperture-seam) 173deg 175deg,var(--photo-aperture-blade) 175deg 233deg,var(--photo-aperture-seam) 233deg 235deg,var(--photo-aperture-blade) 235deg 293deg,var(--photo-aperture-seam) 293deg 295deg,var(--photo-aperture-blade) 295deg 353deg,var(--photo-aperture-seam) 353deg 355deg,var(--photo-aperture-blade) 355deg 360deg);transform:rotate(-10deg) scale(1);transition:transform .42s ease}.split-root__photo-aperture:after{content:"";position:absolute;inset:34%;border-radius:0;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0% 50%);background:var(--photo-aperture-opening);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--photo-aperture-rim) 78%,transparent),0 0 0 1px #0000000d;transform:rotate(30deg);transition:inset .42s ease,box-shadow .42s ease,transform .42s ease}.split-root__word--photo{color:var(--photo-word);font-family:IBM Plex Mono,ui-monospace,Courier New,monospace;font-weight:400;text-shadow:0 0 18px var(--photo-word-glow);transition:transform .3s ease-out,text-shadow .3s ease-out,color .3s ease-out}.split-root__panel--photo:hover .split-root__word--photo,.split-root__panel--photo:focus-visible .split-root__word--photo,.split-root__panel--photo:active .split-root__word--photo{transform:translate(3px);text-shadow:0 0 24px var(--photo-word-glow)}.split-root__panel--photo:hover .split-root__photo-aperture,.split-root__panel--photo:focus-visible .split-root__photo-aperture,.split-root__panel--photo:active .split-root__photo-aperture{transform:scale(1.03);box-shadow:inset 0 0 0 1px #ffffff12,0 22px 48px #00000038}.split-root__panel--photo:hover .split-root__photo-aperture:before,.split-root__panel--photo:focus-visible .split-root__photo-aperture:before,.split-root__panel--photo:active .split-root__photo-aperture:before{transform:rotate(18deg) scale(1.02)}.split-root__panel--photo:hover .split-root__photo-aperture:after,.split-root__panel--photo:focus-visible .split-root__photo-aperture:after,.split-root__panel--photo:active .split-root__photo-aperture:after{inset:16%;transform:rotate(0);box-shadow:inset 0 0 0 1px var(--photo-aperture-rim),0 0 0 1px #00000014}.split-root__lede{max-width:35ch;margin:14px 0 0;font:1rem/1.55 var(--font-sans);opacity:.9}.split-root__panel--devops .split-root__lede{color:var(--devops-muted);opacity:1}.split-root__ornament{width:100%;aspect-ratio:2 / 1;margin-top:24px}.split-root__photo-card{position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-radius:0;border:1px solid rgba(236,235,231,.12);background:#141312bd;box-shadow:none;transition:border-color .3s ease-out,box-shadow .3s ease-out,transform .3s ease-out,background-color .3s ease-out}.split-root__photo-card-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid rgba(236,235,231,.12);color:#8d8b84;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.split-root__photo-card-image{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(236,235,231,.04),transparent 24%),#141312}.split-root__photo-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 70%}html[data-theme=dark] .split-root__photo-card{border-color:#ecebe71f;background:#141312bd;box-shadow:none}html[data-theme=dark] .split-root__photo-card-bar{border-bottom-color:#ecebe71f;color:#8d8b84}.split-root__terminal{margin-top:28px;border:2px solid var(--devops-border);background:var(--devops-bg-alt);box-shadow:var(--devops-shadow);transition:border-color .3s ease-out,box-shadow .3s ease-out,transform .3s ease-out,background-color .3s ease-out}.split-root__terminal-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border-bottom:2px solid var(--devops-border);color:var(--devops-muted);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.split-root__panel--devops:hover .split-root__terminal{border-color:var(--devops-accent);background:var(--devops-surface);box-shadow:var(--devops-glow);transform:translate(4px)}.split-root__panel--photo:hover .split-root__photo-card{border-color:#76462a1f;box-shadow:0 0 0 1px #76462a08,0 20px 42px #37231a1a;transform:translateY(-4px) rotate(-.2deg)}html[data-theme=dark] .split-root__panel--photo:hover .split-root__photo-card{border-color:#cba0841c;box-shadow:0 0 0 1px #cba0840a,0 22px 44px #0000003d}@keyframes split-root-photo-panel-drift{0%{opacity:.9;transform:translateZ(0) scale(1)}to{opacity:.96;transform:translate3d(-1%,.6%,0) scale(1.02)}}@keyframes split-root-photo-aperture-breathe{0%,to{border-color:var(--photo-aperture-rim);box-shadow:inset 0 0 0 1px #ffffff14,0 18px 42px #0000002e}50%{border-color:color-mix(in srgb,var(--photo-aperture-rim) 82%,white 18%);box-shadow:inset 0 0 0 1px #ffffff1f,0 22px 48px #00000038}}.split-root__terminal-list{display:grid;gap:12px;margin:0;padding:18px;list-style:none;color:var(--devops-text);font-size:.95rem}.split-root__terminal-list li:before{content:"#";margin-right:10px;color:var(--devops-accent);font-weight:700}.split-root__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.split-root__actions span{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px;border:2px solid var(--devops-border);background:transparent;color:var(--devops-text);font-family:JetBrains Mono,IBM Plex Mono,Courier New,monospace;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.split-root__panel--devops .split-root__actions span:first-child{border-color:var(--devops-accent);background:var(--devops-accent);color:var(--devops-bg)}@keyframes split-root-blink{0%,50%{opacity:1}51%,to{opacity:0}}.split-root__toolbar .theme-toggle{width:auto;min-width:86px;justify-content:center;pointer-events:auto;border-color:#38241b24;background:#fffaf5eb;box-shadow:0 18px 38px #291c131f;color:#261815}.split-root__toolbar .theme-toggle:hover{border-color:#9d5b2f6b;background:#fff9f4eb}.split-root__toolbar .theme-toggle:focus-visible{outline-color:#9d5b2f}.split-root__toolbar .theme-icon{color:#9d5b2f}html[data-theme=dark] .split-root__toolbar .theme-toggle{border-color:#f6efe91f;background:#1c181ad6;box-shadow:0 22px 44px #00000047;color:#f6efe9}html[data-theme=dark] .split-root__toolbar .theme-toggle:hover{border-color:#7bd5ff57;background:#221d1ff0}html[data-theme=dark] .split-root__toolbar .theme-icon{color:#7bd5ff}.split-root__crawlcopy{padding:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-alt) 94%,var(--surface)),var(--bg));border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent)}.split-root__crawlcopy-inner{max-width:900px;margin:0 auto;display:grid;gap:12px}.split-root__crawlcopy h2{margin:0;font-family:Space Grotesk,Fraunces,serif;font-size:clamp(1.2rem,2.6vw,1.75rem);line-height:1.1;letter-spacing:-.03em;color:var(--text)}.split-root__crawlcopy p{margin:0;max-width:72ch;color:var(--muted);font-size:.98rem;line-height:1.8}.split-root__crawlcopy a{color:var(--accent);font-weight:700}@media(max-width:960px){.split-root{--root-title-size: clamp(2.6rem, 9vw, 4.8rem);grid-template-columns:minmax(0,1fr);grid-template-rows:none}.split-root__panel{grid-row:auto;grid-template-rows:auto auto;gap:22px;padding-block:26px}.split-root__content{grid-row:auto;grid-template-rows:none}.split-root__panel--webdev{border-inline-color:transparent;border-block:1px solid #343434}}@media(max-width:720px){.split-root__ornament{margin-top:18px}.split-root__panel--devops .split-root__terminal{margin-top:16px;border-width:1px}.split-root__panel--devops .split-root__terminal-bar{display:none}.split-root__panel--devops .split-root__terminal-list{gap:8px;padding:12px 14px;font-size:.82rem}.split-root__panel--photo:after{background:linear-gradient(180deg,#fff0,#351f171a 54%,#2415103d)}html[data-theme=dark] .split-root__panel--photo:after{background:linear-gradient(180deg,#0000,#08060629 54%,#08060661)}.split-root__actions{display:none}.split-root__toolbar{top:16px;left:auto;right:16px}.split-root__toolbar .theme-toggle{width:auto}.split-root__crawlcopy{display:none}}@media(prefers-reduced-motion:reduce){.split-root__panel--photo:after,.split-root__photo-aperture,.split-root__word--devops:after,.split-root__photo-aperture:before,.split-root__photo-aperture:after,.split-root__word--photo{animation:none}.split-root__panel--photo:after,.split-root__photo-aperture,.split-root__photo-aperture:before,.split-root__photo-aperture:after,.split-root__word--photo{transition:none}}.split-root__panel--devops{--devops-bg: #fafaf8;--devops-bg-alt: #fafaf8;--devops-surface: #f0f0ec;--devops-border: #d8d9d5;--devops-text: #0a0a0a;--devops-muted: #626671;--devops-accent: #3455d1;--devops-accent-dim: #243fa8;--devops-accent-bright: #0a0a0a;--devops-shadow: none;--devops-glow: none;--devops-hero-glow: none;--devops-hero-glow-hover: none;background:#fafaf8;color:var(--devops-text);font-family:Inter Tight,Arial,sans-serif}.split-root__panel--devops:before{background-image:linear-gradient(rgba(28,37,65,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(28,37,65,.035) 1px,transparent 1px);background-size:9px 9px;opacity:1}html[data-theme=dark] .split-root__panel--devops{--devops-bg: #101217;--devops-bg-alt: #101217;--devops-surface: #1b1f28;--devops-border: #343a46;--devops-text: #f3f4f0;--devops-muted: #9da2ae;--devops-accent: #a7b8ff;--devops-accent-dim: #c2ceff;--devops-accent-bright: #f3f4f0;background:#101217}html[data-theme=dark] .split-root__panel--devops:before{background-image:linear-gradient(rgba(243,244,240,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(243,244,240,.035) 1px,transparent 1px);background-size:9px 9px}.split-root__panel--devops .split-root__title{font-family:Inter Tight,Arial,sans-serif;font-weight:600;letter-spacing:-.065em}.split-root__word--devops:after{content:"";display:inline-block;width:.12em;height:.12em;margin-left:.08em;background:#f5c518;animation:none}.split-root__terminal,.split-root__panel--devops:hover .split-root__terminal{border:1px solid var(--devops-border);background:var(--devops-bg-alt);box-shadow:none;transform:none}.split-root__terminal-bar{border-bottom:1px solid var(--devops-border);font-family:IBM Plex Mono,monospace}.split-root__terminal-list{font-family:IBM Plex Mono,monospace}.split-root__terminal-list li:before{color:#3b5bd9}.split-root__actions span{border-width:1px;font-family:IBM Plex Mono,monospace}.split-root__panel--devops .split-root__actions span:first-child{background:#3b5bd9;border-color:#3b5bd9;color:#fff}.split-root__signal{overflow:hidden}.split-root__signal canvas{display:block;width:100%;height:100%}
