:root{color-scheme:light;font-family:Geist,Aptos,Segoe UI,sans-serif;background:#f6fbfc;color:#0a1a23;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--page-bg: oklch(.985 .006 208);--panel: oklch(.965 .012 202);--panel-strong: oklch(.94 .017 198);--panel-warm: oklch(.964 .018 128);--line: oklch(.78 .023 218);--line-strong: oklch(.42 .038 219);--text: oklch(.21 .028 233);--muted: oklch(.43 .027 226);--soft: oklch(.58 .027 222);--accent: oklch(.47 .085 185);--accent-strong: oklch(.34 .074 188);--moss: oklch(.47 .068 145);--amber: oklch(.65 .075 82);--shadow: 0 24px 70px color-mix(in srgb, var(--accent) 12%, transparent)}*{box-sizing:border-box}main,section,header,footer,div,article,aside{min-width:0}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--panel-strong) 62%,transparent),transparent 28rem),linear-gradient(180deg,var(--page-bg),color-mix(in srgb,var(--panel) 54%,var(--page-bg)));color:var(--text)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}#root{min-height:100vh}.page-shell{overflow-x:clip;width:100%;max-width:100vw}.page-frame{width:100%;max-width:88rem;margin:0 auto;padding:1.15rem clamp(1rem,3vw,2rem) 4rem}.masthead,.hero,.signal-band,.console,.case-section,.experience-section,.portfolio-footer{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.masthead{display:flex;justify-content:space-between;gap:1.25rem;padding:.95rem 0 1.1rem;align-items:center}.eyebrow,.hero-kicker,.case-format,.console-tag,.masthead-copy,.masthead-link,.hero-panel-header,.experience-company,.experience-product,.experience-meta,.technology-row>p{letter-spacing:0}.eyebrow,.hero-kicker,.case-format,.console-tag{margin:0;font-size:.78rem;font-weight:700;text-transform:uppercase;color:var(--accent-strong)}.masthead-copy{margin:.32rem 0 0;max-width:39rem;color:var(--muted);font-size:.94rem}.masthead-links,.hero-actions,.token-row,.token-row-light,.case-study-metrics,.masthead-link{display:flex;flex-wrap:wrap}.masthead-links{gap:.75rem;justify-content:flex-end}.masthead-link{gap:.45rem;align-items:center;min-height:2.75rem;padding:.48rem 0;color:var(--muted);font-size:.92rem}.hero{padding:clamp(2rem,5vw,4.4rem) 0 clamp(2.2rem,5vw,3.8rem);min-height:min(44rem,72dvh);display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;width:100%}.hero-copy{display:grid;gap:1rem;min-width:0}.hero h1,.signal-copy h2,.console-header h2,.section-heading h2,.experience-section h2{margin:0;font-weight:780;letter-spacing:-.015em;line-height:.98}.hero h1{font-size:clamp(3.25rem,8vw,6.3rem);max-width:10ch}.hero-subtitle{margin:0;max-width:42rem;font-size:clamp(1.14rem,2.2vw,1.55rem);line-height:1.28;color:color-mix(in srgb,var(--text) 86%,var(--accent))}.hero-actions{gap:.85rem;padding-top:.75rem;align-items:flex-start}.action-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3rem;padding:.83rem 1.08rem;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:color-mix(in srgb,var(--panel) 86%,var(--page-bg));color:var(--text);border-radius:.7rem;font-size:.96rem;font-weight:700;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s ease,background-color .18s ease}.action-button-primary{background:var(--text);border-color:var(--text);color:var(--page-bg)}.download-menu{position:relative}.download-menu summary{cursor:pointer;list-style:none}.download-menu summary::-webkit-details-marker{display:none}.download-menu[open] summary svg:last-child{transform:rotate(180deg)}.download-panel{position:absolute;z-index:3;top:calc(100% + .55rem);left:0;display:grid;min-width:min(21rem,calc(100vw - 2rem));padding:.45rem;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:.8rem;background:color-mix(in srgb,var(--page-bg) 92%,var(--panel));box-shadow:var(--shadow)}.download-panel a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.9rem;padding:.7rem .78rem;border-radius:.58rem;color:var(--text);font-weight:700}.download-panel a:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.hero-panel{min-width:0;align-self:stretch;padding:clamp(1rem,2vw,1.25rem);background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 78%,transparent),transparent),color-mix(in srgb,var(--panel-strong) 70%,var(--page-bg));border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:1rem;box-shadow:var(--shadow)}.hero-panel-header{padding-bottom:.85rem;border-bottom:1px solid color-mix(in srgb,var(--line) 68%,transparent);color:var(--muted);font-size:.86rem;font-weight:700}.lifecycle-stack{display:grid;gap:.85rem;padding-top:.95rem}.lifecycle-stack article{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.85rem;padding:.85rem;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:.75rem;background:color-mix(in srgb,var(--page-bg) 70%,transparent)}.lifecycle-stack svg{color:var(--accent-strong)}.lifecycle-stack h2,.impact-grid h3,.workflow-step h3{margin:0;font-size:1rem;line-height:1.25}.lifecycle-stack p,.signal-copy p,.console-header p,.console-detail p,.case-study-copy>p:last-of-type,.reference-copy>p:last-of-type,.experience-item li,.footer-note,.impact-grid p,.workflow-heading p,.workflow-step p:last-child,.capability-block p{max-width:100%;margin:0;font-size:1rem;line-height:1.65;color:var(--muted);overflow-wrap:break-word}.signal-band,.case-section,.experience-section,.portfolio-footer{padding:clamp(2.6rem,6vw,4.5rem) 0}.signal-band{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}.signal-copy{display:grid;gap:.95rem}.signal-copy h2,.console-header h2,.section-heading h2,.experience-section h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.02}.impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.impact-grid article{min-height:10.4rem;padding:1rem;border:1px solid color-mix(in srgb,var(--line) 76%,transparent);border-radius:.85rem;background:color-mix(in srgb,var(--panel) 74%,transparent)}.metric-value{margin:0 0 .65rem;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(1.55rem,3vw,2.1rem);font-weight:700;line-height:1;color:var(--accent-strong)}.console{padding:clamp(2rem,5vw,3rem);border:1px solid color-mix(in srgb,var(--line) 76%,transparent);border-radius:1.1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--moss) 7%,transparent),transparent 60%),color-mix(in srgb,var(--panel) 78%,var(--page-bg));color:var(--text)}.console-header{display:grid;gap:.85rem;max-width:55rem;padding-bottom:1.5rem;border-bottom:1px solid color-mix(in srgb,var(--line) 74%,transparent)}.console-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(18rem,1.15fr);gap:1.3rem;padding-top:1.5rem}.workflow-strip{display:grid;gap:1.15rem;padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid color-mix(in srgb,var(--line) 74%,transparent)}.workflow-heading{max-width:48rem}.workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}.workflow-step{display:grid;gap:.6rem;padding:1rem;border:1px solid color-mix(in srgb,var(--line) 76%,transparent);border-radius:.78rem;background:color-mix(in srgb,var(--page-bg) 72%,transparent)}.console-primary,.console-side{display:grid;gap:1rem}.console-detail,.capability-block{border:1px solid color-mix(in srgb,var(--line) 76%,transparent);border-radius:.9rem;background:color-mix(in srgb,var(--page-bg) 70%,transparent)}.console-detail{display:grid;gap:.9rem;align-content:start;padding:1rem}.console-detail ul,.case-outcomes,.experience-item ul{margin:0;padding-left:1.2rem}.console-detail li,.case-outcomes li,.experience-item li{margin-top:.5rem}.console-tag{color:var(--accent-strong)}.capability-block{padding:1rem}.capability-heading,.text-link,.footer-email{display:inline-flex;align-items:center}.capability-heading{gap:.55rem;color:var(--text)}.capability-heading svg{color:var(--accent-strong)}.capability-heading p,.case-study-copy h3,.reference-copy h3,.experience-item h3{margin:0;font-size:1.08rem;line-height:1.3}.capability-block p{margin-top:.65rem}.token-row,.token-row-light,.case-study-metrics{gap:.65rem}.token-row{margin-top:.85rem}.technology-row span,.token-row span,.token-row-light span,.case-study-metrics span{display:inline-flex;align-items:center;min-height:2.15rem;padding:.42rem .68rem;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:999px;background:color-mix(in srgb,var(--page-bg) 62%,transparent);color:color-mix(in srgb,var(--text) 88%,var(--accent));font-size:.86rem;font-weight:650}.section-heading,.section-heading-tight{display:grid;gap:.85rem;padding-bottom:1.4rem}.case-study-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(15rem,.92fr);gap:1.15rem;padding:1.2rem 0 1.65rem;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.case-study-copy,.reference-copy,.experience-item{display:grid;gap:.82rem}.case-theme,.experience-product,.experience-meta,.reference-copy p,.case-study-copy p{color:var(--muted)}.case-study-metrics{align-content:start}.reference-grid,.experience-list{display:grid;gap:1.25rem;padding-top:1.45rem}.reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reference-item{display:grid;gap:.95rem;min-width:0;align-content:start}.reference-image-wrap{border-top:1px solid color-mix(in srgb,var(--line-strong) 74%,transparent);padding-top:.9rem}.reference-evidence-panel{display:grid;gap:.68rem;padding:1rem;border-top:1px solid color-mix(in srgb,var(--line-strong) 74%,transparent);border-radius:.75rem;background:color-mix(in srgb,var(--panel-warm) 55%,var(--page-bg))}.reference-evidence-panel p{margin:0;color:var(--text);font-weight:700;line-height:1.4}.reference-image{width:100%;aspect-ratio:16 / 10;object-fit:cover;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:.8rem;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s ease}.token-row-light span,.case-study-metrics span{background:color-mix(in srgb,var(--panel-warm) 50%,var(--page-bg))}.text-link,.footer-email{gap:.5rem;width:fit-content;color:var(--accent-strong);font-weight:750}.experience-item{padding-top:1.2rem;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.experience-header{display:flex;justify-content:space-between;gap:1rem}.experience-company{margin:0;color:var(--accent-strong);font-size:.84rem;font-weight:760;text-transform:uppercase}.experience-product,.experience-meta{margin:0;font-size:.95rem;line-height:1.5}.experience-meta{text-align:right}.portfolio-footer{display:flex;justify-content:space-between;gap:1rem;align-items:center}.footer-note{max-width:42rem;color:var(--text);font-weight:620}.footer-email{min-height:3rem;padding:.75rem 0}.reveal{opacity:0;transform:translateY(14px);animation:reveal-in .7s cubic-bezier(.19,1,.22,1) forwards}.masthead.reveal{animation-delay:40ms}.hero.reveal{animation-delay:.11s}.signal-band.reveal,.console.reveal,.case-section.reveal,.experience-section.reveal,.portfolio-footer.reveal{animation-delay:.17s}.action-button:hover,.masthead-link:hover,.text-link:hover,.footer-email:hover,.reference-item:hover .reference-image{transform:translateY(-2px)}.action-button:hover,.masthead-link:hover,.reference-item:hover .reference-image{border-color:color-mix(in srgb,var(--accent) 46%,var(--line))}.action-button:active,.download-panel a:active{transform:translateY(1px)}.action-button:focus-visible,.masthead-link:focus-visible,.text-link:focus-visible,.footer-email:focus-visible,.download-panel a:focus-visible,.download-menu summary:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 58%,var(--page-bg));outline-offset:3px}@keyframes reveal-in{to{opacity:1;transform:translateY(0)}}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--page-bg: oklch(.19 .025 232);--panel: oklch(.24 .026 229);--panel-strong: oklch(.29 .029 226);--panel-warm: oklch(.27 .033 157);--line: oklch(.42 .036 224);--line-strong: oklch(.63 .032 220);--text: oklch(.92 .012 205);--muted: oklch(.74 .02 216);--soft: oklch(.7 .022 220);--accent: oklch(.68 .09 184);--accent-strong: oklch(.76 .082 184);--moss: oklch(.68 .075 145);--amber: oklch(.78 .075 82);--shadow: 0 24px 70px color-mix(in srgb, oklch(.11 .025 232) 64%, transparent)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:0ms!important;transition-delay:0ms!important}.reveal{opacity:1;transform:none}}@media(max-width:1080px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.hero{min-height:auto}.hero-grid,.signal-band,.console-grid,.case-study-feature,.reference-grid,.workflow-grid{grid-template-columns:1fr}.experience-header,.portfolio-footer,.masthead{flex-direction:column;align-items:flex-start}.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-meta{text-align:left}}@media(max-width:640px){.page-frame{width:100%;max-width:100vw;padding-left:.9rem;padding-right:.9rem}.masthead,.hero-grid,.hero-copy,.hero-panel,.signal-band,.console,.case-section,.experience-section,.portfolio-footer{width:100%;max-width:100%}.hero h1{max-width:100%;font-size:clamp(2.85rem,13vw,3.35rem);line-height:1;overflow-wrap:anywhere}.hero-subtitle{font-size:1.06rem}.hero-actions,.masthead-links{width:100%;justify-content:flex-start}.download-menu,.action-button{width:100%}.action-button{justify-content:flex-start}.action-button-primary{justify-content:space-between}.download-panel{position:static;margin-top:.55rem;min-width:100%}.masthead-link{flex:1 1 7rem}.impact-grid{grid-template-columns:1fr}.hero-panel,.console,.case-study-feature{padding-left:1rem;padding-right:1rem}}
