:root{--paper:#fcfbfb;--surface:#e9e7e4;--line:#f4f4f3;--muted:#78716c;--ink:#1c1917;--black:#272826;--crimson:#a61c1c;--blush:#f7e4e2;--ink-on-dark:#fcfbfb;--font-display:"Petrona",Georgia,serif;--font-body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--text-xs:clamp(0.75rem,0.7321rem + 0.0893vw,0.8125rem);--text-sm:clamp(0.8125rem,0.7902rem + 0.1116vw,0.875rem);--text-base:clamp(0.9375rem,0.9152rem + 0.1116vw,1rem);--text-md:clamp(1rem,0.9554rem + 0.2232vw,1.125rem);--text-lg:clamp(1.125rem,1.0179rem + 0.5357vw,1.5rem);--text-xl:clamp(1.5rem,1.3214rem + 0.8929vw,2rem);--text-2xl:clamp(1.75rem,1.4821rem + 1.3393vw,2.5rem);--text-3xl:clamp(2.25rem,1.8036rem + 2.2321vw,3.5rem);--text-4xl:clamp(2.5rem,1.7857rem + 3.5714vw,4.5rem);--text-caption:var(--text-sm);--text-body:var(--text-md);--text-lead:var(--text-lg);--text-title:var(--text-3xl);--text-display:var(--text-4xl);--image-bg:#e6e6e6;--container-max:1120px;--page-padding:clamp(1.25rem,5vw,8.75rem);--section-pad-top:clamp(4.5rem,12vw,10rem);--section-pad-bottom:clamp(4rem,10vw,8.125rem);--section-pad-y:clamp(4.5rem,10vw,10rem);--cs-stack-gap:3rem;--cs-stack-gap-lg:4rem;--cs-copy-gap:1.5rem;--cs-intro-gap:16px;--thumb-max-width:48rem;--thumb-max-height:26.25rem}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:clip}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;margin:0}a{color:inherit}img{display:block;height:auto;max-width:100%}button{cursor:pointer;font:inherit}.wordmark{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1;position:relative;text-decoration:none}.wordmark--light{color:var(--ink-on-dark);font-size:var(--text-title);font-weight:500}.wordmark__dot{position:relative}.wordmark__dot:after{border-radius:50%;content:"";height:.2em;left:50%;position:absolute;top:.12em;transform:translateX(-50%);width:.2em}.wordmark--light .wordmark__dot:after,.wordmark__dot:after{background:var(--crimson)}.navbar{backdrop-filter:blur(6px) saturate(1.1);-webkit-backdrop-filter:blur(6px) saturate(1.1);background:#fcfbfbb8;border-bottom:1px solid #1c19170f;position:sticky;top:0;transition:background .25s ease,border-color .25s ease;width:100%;z-index:100}.navbar--scrolled{background:#fcfbfbe0;border-bottom-color:#1c19171a}.navbar__shell{margin:0 auto;padding:1.25rem var(--page-padding);position:relative;width:100%}.navbar__inner{align-items:baseline;display:flex;gap:1rem;justify-content:space-between;margin:0 auto;max-width:var(--container-max)}.navbar__brand .wordmark{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:normal}.navbar__inner--compact{justify-content:flex-start}.navbar__brand{color:inherit;flex-shrink:0;text-decoration:none}.navbar__back{align-items:center;color:var(--ink);display:inline-flex;font-family:var(--font-body);font-size:.9375rem;font-weight:500;gap:.5rem;padding:.375rem 0;text-decoration:none;transition:color .2s ease}.navbar__back:hover{color:var(--crimson)}.navbar__back-icon{align-items:center;background:var(--line);border-radius:999px;display:inline-flex;font-size:.875rem;height:1.5rem;justify-content:center;line-height:1;transition:background .2s ease;width:1.5rem}.navbar__back:hover .navbar__back-icon{background:var(--blush)}.navbar__toggle{align-items:center;background:#0000;border:0;color:var(--ink);cursor:pointer;display:none;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;gap:.625rem;letter-spacing:.1em;margin-left:auto;padding:.375rem 0;text-transform:uppercase}.navbar__toggle-icon{height:.75rem;position:relative;width:1rem}.navbar__toggle-icon span{background:currentColor;border-radius:999px;height:1.5px;left:0;position:absolute;transition:transform .25s ease,top .25s ease,opacity .2s ease;width:100%}.navbar__toggle-icon span:first-child{top:.125rem}.navbar__toggle-icon span:last-child{top:calc(100% - .125rem)}.navbar--open .navbar__toggle-icon span:first-child{top:50%;transform:translateY(-50%) rotate(45deg)}.navbar--open .navbar__toggle-icon span:last-child{top:50%;transform:translateY(-50%) rotate(-45deg)}.navbar__links{align-items:center;display:flex;gap:1.875rem;list-style:none;margin:0;padding:0}.navbar__link{align-items:center;color:var(--muted);display:inline-flex;font-family:var(--font-body);font-size:1rem;font-weight:500;letter-spacing:0;line-height:1.5;padding:0;text-decoration:none;text-transform:none;transition:color .2s ease}.navbar__link--active,.navbar__link:hover{color:var(--ink)}@media (max-width:768px){.navbar__toggle{display:inline-flex}.navbar__shell{padding-block:1rem}.navbar__inner nav{left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:100%;transform:translateY(-.25rem);transition:opacity .22s ease,transform .22s ease,visibility .22s ease;visibility:hidden;width:auto}.navbar--open .navbar__inner nav{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.navbar__links{align-items:stretch;backdrop-filter:blur(12px) saturate(1.25);-webkit-backdrop-filter:blur(12px) saturate(1.25);background:#fcfbfbeb;border-bottom:1px solid #1c19170f;flex-direction:column;gap:.125rem;padding:.75rem var(--page-padding) 1rem}.navbar__link{font-size:1rem;justify-content:center;padding:.75rem 0}}@media (prefers-reduced-motion:reduce){.navbar,.navbar__back,.navbar__inner nav,.navbar__link,.navbar__toggle,.navbar__toggle-icon span{transition:none}}.hero-scene{inset:0;pointer-events:none}.hero-orbit,.hero-scene{overflow:visible;position:absolute}.hero-orbit{aspect-ratio:1440/960;left:50%;top:50%;transform:translate(-50%,calc(-50% + 40px));width:min(1280px,92vw)}.hero-orbit__stage{height:100%;overflow:visible;position:relative;width:100%}.hero-orbit__ring{pointer-events:none;position:absolute}.hero-orbit__ring img{display:block;height:100%;width:100%}.hero-orbit__ring--outer{aspect-ratio:1;left:8.333%;top:-12.5%;width:83.333%}.hero-orbit__ring--inner{aspect-ratio:1;left:22.222%;top:8.333%;width:55.556%}.hero-orbit__dot,.hero-orbit__trail{opacity:0}.hero-orbit__stage--live .hero-orbit__dot{opacity:1;transition:opacity .35s ease}.hero-orbit__stage--live .hero-orbit__trail{opacity:1}.hero-orbit__dot{background:var(--crimson);border-radius:50%;left:50%;position:absolute;top:50%;will-change:transform;z-index:2}.hero-orbit__dot--outer{box-shadow:0 0 0 4px #a61c1c1f;height:10px;width:10px}.hero-orbit__dot--inner{box-shadow:0 0 0 3px #a61c1c1a;height:8px;width:8px}.hero-orbit__trail{background:var(--crimson);border-radius:50%;left:50%;pointer-events:none;position:absolute;top:50%;will-change:transform,opacity;z-index:1}.hero-orbit__trail--outer{box-shadow:0 0 10px #a61c1c38;height:10px;width:10px}.hero-orbit__trail--inner{box-shadow:0 0 8px #a61c1c2e;height:8px;width:8px}.hero-chips{inset:0;overflow:visible;position:absolute;z-index:3}.hero-chip{background:var(--paper);border:1px solid var(--ink);border-radius:999px;color:var(--ink);font-family:var(--font-body);font-size:1rem;font-weight:500;padding:.45rem 1rem;position:absolute;transform:translate(-50%,-50%);white-space:nowrap}.hero-chip--lit{background:var(--crimson);border-color:var(--crimson);box-shadow:0 8px 24px #a61c1c2e;color:var(--paper)}@media (max-width:1100px){.hero-orbit{transform:translate(-50%,calc(-50% + 28px));width:min(1280px,100vw)}.hero-chip{font-size:.875rem;padding:.375rem .85rem}}@media (max-width:900px){.hero-orbit{transform:translate(-50%,calc(-50% + 16px));width:min(1280px,118vw)}.hero-chip{font-size:.75rem;padding:.3rem .7rem}.hero-orbit__dot--outer,.hero-orbit__trail--outer{height:8px;width:8px}.hero-orbit__dot--inner,.hero-orbit__trail--inner{height:6px;width:6px}}@media (max-width:640px){.hero-orbit{transform:translate(-50%,calc(-50% + 8px));width:min(1280px,135vw)}.hero-chips{display:none}}@media (max-width:400px){.hero-orbit{width:min(1280px,150vw)}}@media (prefers-reduced-motion:reduce){.hero-orbit__dot--inner,.hero-orbit__dot--outer{box-shadow:none}.hero-orbit__trail{display:none}}.work-card{margin-inline:auto;max-width:var(--thumb-max-width);width:100%}.work-card__link{color:inherit;display:flex;flex-direction:column;gap:.5rem;text-decoration:none}.work-card__link:hover .work-card__cover img,.work-card__link:hover .work-card__cover-media,.work-card__link:hover .work-card__cover-phone{transform:scale(1.01)}.work-card__cover{aspect-ratio:16/9;background:var(--surface);border:1px solid var(--line);max-height:var(--thumb-max-height);overflow:hidden;position:relative;width:100%}.work-card__cover img,.work-card__cover-bg,.work-card__cover-media{height:100%;object-fit:cover;object-position:center top;transition:transform .3s ease;width:100%}.work-card__cover-bg{display:block;inset:0;position:absolute}.work-card__cover--oracle .work-card__cover-media{height:92.5%;left:50%;max-width:none;object-fit:cover;object-position:top center;position:absolute;top:50%;transform:translate(-50%,-50%);width:92.4%}.work-card__link:hover .work-card__cover--oracle .work-card__cover-media{transform:translate(-50%,-50%) scale(1.01)}.work-card__cover--qr .work-card__cover-phone{height:93%;left:4.7%;position:absolute;top:3.5%;transform-origin:center bottom;transition:transform .3s ease;width:26%}.work-card__cover--qr .work-card__cover-phone .cs-header__phone-chroma,.work-card__cover--qr .work-card__cover-phone .cs-header__phone-chroma-canvas,.work-card__cover--qr .work-card__cover-phone .cs-header__phone-gif,.work-card__cover--qr .work-card__cover-phone img,.work-card__cover--qr .work-card__cover-phone video{display:block;height:100%;object-fit:contain;object-position:top center;width:100%}.work-card__cover--qr .work-card__cover-phone .cs-header__phone-chroma{height:100%;position:relative;width:100%}.work-card__cover--qr .work-card__cover-phone .cs-header__phone-chroma-source{height:100%;inset:0;object-fit:cover;object-position:top;opacity:0;pointer-events:none;position:absolute;width:100%;z-index:0}.work-card__placeholder{background:var(--surface);height:100%;width:100%}.work-card__info{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:clamp(1rem,3vw,1.25rem) .5rem clamp(1.5rem,4vw,2rem);text-align:center}@media (max-width:640px){.work-card__meta{font-size:.75rem;letter-spacing:.03em}.work-card__info--dashed{padding-inline:.25rem}}.work-card__info--dashed{border-bottom:1px dashed var(--ink)}.work-card__info--muted{border-bottom-color:var(--muted);color:var(--muted)}.work-card__meta{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;margin:0;text-transform:uppercase}.work-card__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:1.15;margin:0}.work-card--static .work-card__cover{aspect-ratio:16/9;max-height:var(--thumb-max-height)}.work-card--static .work-card__info{padding-bottom:2.5rem;padding-top:1rem}.footer{background:var(--ink);color:var(--paper);padding:clamp(3.5rem,8vw,6rem) var(--page-padding) clamp(2.5rem,5vw,3.5rem)}.footer__container{display:flex;flex-direction:column;gap:2.25rem;margin:0 auto;max-width:var(--container-max)}.footer__top{align-items:flex-end;display:flex;flex-wrap:wrap;gap:3rem;justify-content:space-between}.footer__identity{display:flex;flex-direction:column;gap:.625rem}.footer__name{color:var(--paper);font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0}.footer__role{font-family:var(--font-body);font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.footer__links{align-items:flex-end;display:flex;flex-direction:column;gap:1rem}.footer__label{color:var(--paper);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1;margin:0}.footer__link{color:var(--paper);font-family:var(--font-body);font-size:var(--text-base);font-weight:500;line-height:1.5;text-decoration:none}.footer__link:hover{text-decoration:underline}.footer__rule{background:var(--paper);border:none;height:1px;margin:0}.footer__bottom{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.footer__copyright{color:var(--paper);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1;margin:0}.footer__top-btn{background:none;border:none;color:var(--paper);cursor:pointer;font-family:var(--font-body);font-size:var(--text-base);font-weight:500;line-height:1.5;padding:0}.footer__top-btn:hover{text-decoration:underline}@media (max-width:640px){.footer__top{gap:2rem}.footer__bottom,.footer__links,.footer__top{align-items:flex-start}.footer__bottom{flex-direction:column;gap:1rem}}.case-study--motion .cs-header:not(.cs-header--qr) .cs-orbit{opacity:0;transition:opacity .5s ease}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-orbit{opacity:1}.case-study--motion .cs-header:not(.cs-header--qr) .cs-orbit__ring{opacity:0;transition:opacity .85s ease}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-orbit__ring--outer{opacity:1}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-orbit__ring--inner{opacity:.5;transition-delay:.08s}.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__intro{opacity:0;transform:translateX(40px);transition:opacity .7s ease .2s,transform .9s cubic-bezier(.16,1,.3,1) .2s}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__intro{opacity:1;transform:translateX(0)}.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__title span{display:block;opacity:0;transform:translateY(36px);transition:opacity .75s ease,transform .85s cubic-bezier(.16,1,.3,1)}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__title span{opacity:1;transform:translateY(0)}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__title span:first-child{transition-delay:.28s}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__title span:nth-child(2){transition-delay:.42s}.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__meta-row{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .65s cubic-bezier(.16,1,.3,1)}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__meta-row{opacity:1;transform:translateY(0)}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__meta-row:first-child{transition-delay:.5s}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__meta-row:nth-child(2){transition-delay:.58s}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__meta-row:nth-child(3){transition-delay:.66s}.case-study--motion.case-study--loaded .cs-header:not(.cs-header--qr) .cs-header__meta-row:nth-child(4){transition-delay:.74s}.case-study--motion .cs-header--stacked .cs-header__intro{transform:translateY(28px)}.case-study--motion.case-study--loaded .cs-header--stacked .cs-header__intro{transform:translateY(0)}.case-study--motion .cs-header--stacked .cs-header__hero-media{opacity:0;transform:translateY(28px);transition:opacity .8s ease .55s,transform .9s cubic-bezier(.16,1,.3,1) .55s}.case-study--motion.case-study--loaded .cs-header--stacked .cs-header__hero-media{opacity:1;transform:none}.case-study--motion .cs-header--qr .cs-orbit{opacity:0;transition:opacity .5s ease}.case-study--motion.case-study--loaded .cs-header--qr .cs-orbit{opacity:1}.case-study--motion .cs-header--qr .cs-orbit__ring{opacity:0;transition:opacity .85s ease}.case-study--motion.case-study--loaded .cs-header--qr .cs-orbit__ring--outer{opacity:1}.case-study--motion.case-study--loaded .cs-header--qr .cs-orbit__ring--inner{opacity:.5;transition-delay:.08s}.case-study--motion .cs-header--qr .cs-header__phone{filter:blur(6px);opacity:0;transform:translateX(-56px) translateY(20px) scale(.9);transition:opacity .85s ease .18s,transform .95s cubic-bezier(.16,1,.3,1) .18s,filter .85s ease .18s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__phone{filter:blur(0);opacity:1;transform:translateX(0) translateY(0) scale(1)}.case-study--motion .cs-header--qr .cs-header__intro{opacity:0;transform:translateX(40px);transition:opacity .7s ease .25s,transform .9s cubic-bezier(.16,1,.3,1) .25s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__intro{opacity:1;transform:translateX(0)}.case-study--motion .cs-header--qr .cs-header__title span{display:block;opacity:0;transform:translateY(36px);transition:opacity .75s ease,transform .85s cubic-bezier(.16,1,.3,1)}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__title span{opacity:1;transform:translateY(0)}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__title span:first-child{transition-delay:.32s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__title span:nth-child(2){transition-delay:.46s}.case-study--motion .cs-header--qr .cs-header__meta-row{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .65s cubic-bezier(.16,1,.3,1)}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__meta-row{opacity:1;transform:translateY(0)}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__meta-row:first-child{transition-delay:.54s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__meta-row:nth-child(2){transition-delay:.62s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__meta-row:nth-child(3){transition-delay:.7s}.case-study--motion.case-study--loaded .cs-header--qr .cs-header__meta-row:nth-child(4){transition-delay:.78s}.cs-reveal{display:flex;flex-direction:column;opacity:0;transform:translateY(14px)}.cs-reveal--text{transform:translateY(12px)}.cs-reveal--media{transform:translateY(10px) scale(.99)}.cs-reveal--highlight{transform:translateY(12px)}.cs-reveal--visible{opacity:1;transform:none;transition:opacity .45s ease,transform .5s ease;transition-delay:0ms;transition-delay:var(--reveal-delay,0ms)}.cs-reveal--highlight.cs-reveal--visible,.cs-reveal--media.cs-reveal--visible,.cs-reveal--text.cs-reveal--visible,.cs-reveal.cs-reveal--visible{transform:none}@media (prefers-reduced-motion:reduce){.case-study--motion .cs-header--qr .cs-header__intro,.case-study--motion .cs-header--qr .cs-header__meta-row,.case-study--motion .cs-header--qr .cs-header__phone,.case-study--motion .cs-header--qr .cs-header__title span,.case-study--motion .cs-header--qr .cs-orbit,.case-study--motion .cs-header--qr .cs-orbit__ring,.case-study--motion .cs-header--stacked .cs-header__hero-media,.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__intro,.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__meta-row,.case-study--motion .cs-header:not(.cs-header--qr) .cs-header__title span,.case-study--motion .cs-header:not(.cs-header--qr) .cs-orbit,.case-study--motion .cs-header:not(.cs-header--qr) .cs-orbit__ring,.cs-reveal{filter:none;opacity:1;transform:none;transition:none}}.home{background:var(--paper)}.home__hero{justify-content:center;min-height:min(900px,100svh);overflow:visible;padding:clamp(5.5rem,14vw,11rem) var(--page-padding)}.home__hero,.home__hero-content{align-items:center;display:flex;flex-direction:column;position:relative}.home__hero-content{gap:clamp(.75rem,2vw,1rem);max-width:var(--container-max);text-align:center;width:100%;z-index:1}.home__headline{text-wrap:balance;color:var(--ink);font-family:var(--font-display);font-size:clamp(2.25rem,1.4464rem + 4.0179vw,4.5rem);font-weight:500;letter-spacing:-.02em;line-height:1.04;margin:0;max-width:57.5rem}.home__headline span{display:block}.home__subhead{text-wrap:pretty;color:var(--ink);font-size:var(--text-body);line-height:1.62;margin:0;max-width:min(40rem,100%)}.home__section-title{color:var(--ink);font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0 0 7.5rem}.home__work{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:90rem;padding:var(--section-pad-y) clamp(1.25rem,5vw,10rem)}.home__work .home__section-title{text-align:center;width:100%}.home__work-list{align-items:center;display:flex;flex-direction:column;gap:4.5rem;width:100%}.home__work-list>.cs-reveal{display:flex;justify-content:center;width:100%}.home__about{background:var(--blush);padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.home__about-inner{display:flex;flex-direction:column;gap:3rem;margin:0 auto;max-width:72.5rem}.home__about .home__section-title{margin-bottom:0}.home__about-grid{grid-gap:3.5rem;align-items:start;display:grid;gap:3.5rem;grid-template-columns:26.25rem minmax(0,1fr)}.home__headshot{aspect-ratio:420/411;background:#0000;max-width:100%;overflow:hidden;position:relative;width:26.25rem}.home__headshot img{height:114.47%;left:-14.93%;max-width:none;object-fit:cover;object-position:center;position:absolute;top:-11.89%;width:112.02%}.home__bio{color:var(--ink);display:flex;flex-direction:column;font-size:var(--text-body);gap:1.25rem;line-height:1.62}.home__bio p{margin:0}.home__bio-lead{text-wrap:pretty;font-size:var(--text-lead);font-weight:500;line-height:1.32}.home__bio-advantage strong{font-weight:600}.home__bio-closing{max-width:37.5rem}.home__resume{background:var(--paper);padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.home__resume-inner{display:flex;flex-direction:column;gap:3rem;margin:0 auto;max-width:var(--container-max)}.home__resume-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.home__resume-head .home__section-title{margin-bottom:0}.home__resume-btn{align-items:center;background:var(--crimson);border-radius:.75rem;color:var(--paper);display:inline-flex;font-size:var(--text-base);font-weight:500;line-height:1.5;padding:.875rem 1.5rem;text-decoration:none;white-space:nowrap}.home__resume-btn:hover{filter:brightness(1.05)}.home__timeline{display:flex;flex-direction:column}.home__timeline-row{grid-gap:3rem;align-items:baseline;border-bottom:1px dashed var(--ink);display:grid;gap:3rem;grid-template-columns:170px 1fr;padding:1.5rem 0}.home__timeline-period{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1;margin:0}.home__timeline-detail{display:flex;flex-direction:column;gap:.25rem}.home__timeline-title{font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.home__timeline-org{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1;margin:0}@media (max-width:900px){.home__hero{min-height:min(760px,100svh);padding-block:clamp(5rem,12vw,8rem)}.home__work{padding-inline:var(--page-padding)}.home__work-list{gap:3.25rem}.home__about-inner,.home__resume-inner{gap:2.25rem}}@media (max-width:768px){.home__hero{min-height:auto;padding-block:clamp(4.5rem,16vw,6.5rem) clamp(3.5rem,12vw,5.5rem)}.home__about-grid{gap:2rem;grid-template-columns:1fr}.home__headshot{margin-inline:auto;width:min(26.25rem,100%)}.home__timeline-row{gap:.75rem;grid-template-columns:1fr}.home__section-title{margin-bottom:3rem}.home__about .home__section-title,.home__resume-head .home__section-title{margin-bottom:0}.home__resume-head{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.home__work-list{gap:2.5rem}}.home--motion .hero-orbit__ring{opacity:0;transition:opacity .85s ease}.home--motion.home--loaded .hero-orbit__ring--outer{opacity:1}.home--motion.home--loaded .hero-orbit__ring--inner{opacity:1;transition-delay:.08s}.home--motion .hero-chip{opacity:0;transition:opacity .45s ease}.home--motion.home--loaded .hero-chip{opacity:1}.home--motion.home--loaded .hero-chip:first-child{transition-delay:.42s}.home--motion.home--loaded .hero-chip:nth-child(2){transition-delay:.48s}.home--motion.home--loaded .hero-chip:nth-child(3){transition-delay:.54s}.home--motion.home--loaded .hero-chip:nth-child(4){transition-delay:.5s}.home--motion.home--loaded .hero-chip:nth-child(5){transition-delay:.56s}.home--motion.home--loaded .hero-chip:nth-child(6){transition-delay:.52s}.home--motion.home--loaded .hero-chip:nth-child(7){transition-delay:.58s}.home--motion.home--loaded .hero-chip:nth-child(8){transition-delay:.46s}.home--motion .home__headline span{display:block;opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .8s cubic-bezier(.16,1,.3,1)}.home--motion.home--loaded .home__headline span{opacity:1;transform:translateY(0)}.home--motion.home--loaded .home__headline span:first-child{transition-delay:.28s}.home--motion.home--loaded .home__headline span:nth-child(2){transition-delay:.4s}.home--motion .home__subhead{opacity:0;transform:translateY(16px);transition:opacity .55s ease .48s,transform .6s cubic-bezier(.16,1,.3,1) .48s}.home--motion.home--loaded .home__subhead{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.home--motion .hero-chip,.home--motion .hero-orbit__ring,.home--motion .home__headline span,.home--motion .home__subhead{opacity:1;transition:none}.home--motion .home__headline span,.home--motion .home__subhead{transform:none}}.cs-lightbox{align-items:center;animation:cs-lightbox-fade .2s ease;background:#1c1917f0;display:flex;inset:0;justify-content:center;padding:clamp(1rem,4vw,2.5rem);position:fixed;z-index:1000}@keyframes cs-lightbox-fade{0%{opacity:0}to{opacity:1}}.cs-lightbox__close{background:#0000;border:1px solid #fcfbfb59;border-radius:999px;color:var(--paper);cursor:pointer;font-family:var(--font-mono);font-size:.8125rem;font-weight:500;letter-spacing:.08em;padding:.5rem 1rem;position:absolute;right:clamp(1rem,3vw,1.5rem);text-transform:uppercase;top:clamp(1rem,3vw,1.5rem)}.cs-lightbox__close:hover{background:#fcfbfb1a}.cs-lightbox__content{max-height:90vh;overflow:auto;text-align:center;width:min(72rem,100%)}.cs-lightbox__image{border-radius:0;display:block;height:auto;margin:0 auto;max-width:100%;width:auto}.cs-lightbox__compare{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.cs-lightbox__compare-item{margin:0}.cs-lightbox__compare-label{border:1px solid #fcfbfb59;border-radius:999px;color:var(--paper);display:inline-block;font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.1em;margin-bottom:.75rem;padding:.35rem .75rem;text-transform:uppercase}.cs-lightbox__compare-item img{border-radius:0;display:block;height:auto;width:100%}.cs-lightbox__caption{color:#fcfbfbbf;font-size:1rem;font-weight:500;line-height:1.5;margin:1.25rem 0 0}@media (max-width:768px){.cs-lightbox__compare{grid-template-columns:1fr}}.cs-media-preview{background:none;border:none;color:inherit;cursor:zoom-in;display:block;margin:0;padding:0;text-align:left;width:100%}.cs-media-preview__frame{align-items:center;background:#e6e6e6;border:1px solid #e7e5e4;border-radius:0;display:flex;justify-content:center;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease;width:100%}.cs-media-preview:focus-visible .cs-media-preview__frame,.cs-media-preview:hover .cs-media-preview__frame{box-shadow:0 10px 28px #1c19171a;transform:scale(1.008)}.cs-media-preview:focus-visible{border-radius:0;outline:2px solid var(--crimson);outline-offset:4px}.cs-media-preview__frame img{display:block;height:auto;max-height:inherit;object-fit:contain;width:100%}.cs-media-preview--phone{max-width:17.5rem}.cs-media-preview--phone .cs-media-preview__frame{background:#e6e6e6;max-height:28rem;padding:.5rem}.cs-media-preview--phone .cs-media-preview__frame img{max-height:26rem}.cs-media-preview--document .cs-media-preview__frame,.cs-media-preview--full .cs-media-preview__frame,.cs-media-preview--gallery .cs-media-preview__frame,.cs-media-preview--screen-grid .cs-media-preview__frame{height:auto;max-height:none;overflow:hidden}.cs-media-preview--diagram.cs-media-preview--full .cs-media-preview__frame,.cs-media-preview--document .cs-media-preview__frame{background:var(--image-bg);border:none;border-radius:0;height:auto;max-height:none;padding:1.5rem}.cs-media-preview--diagram.cs-media-preview--full:focus-visible,.cs-media-preview--document:focus-visible{border-radius:0}.cs-media-preview--diagram.cs-media-preview--full .cs-media-preview__frame img,.cs-media-preview--document .cs-media-preview__frame img{border-radius:0}.cs-media-preview--screen-grid .cs-media-preview__frame{background:var(--image-bg);border:none;border-radius:0;padding:1.5rem}.cs-media-preview--document .cs-media-preview__frame img,.cs-media-preview--full .cs-media-preview__frame img,.cs-media-preview--gallery .cs-media-preview__frame img,.cs-media-preview--screen-grid .cs-media-preview__frame img{height:auto;max-height:none;object-fit:contain;object-position:center;position:static;width:100%}.cs-media-preview--crop .cs-media-preview__frame{height:clamp(20rem,36vh,32rem);max-height:none;overflow:hidden;position:relative;width:100%}.cs-media-preview--diagram.cs-media-preview--crop .cs-media-preview__frame{height:clamp(26rem,50vh,46rem)}.cs-media-preview--crop .cs-media-preview__frame img{height:100%;inset:0;max-height:none;object-fit:cover;object-position:top center;position:absolute;width:100%}.cs-media-preview--crop .cs-media-preview__frame:after{background:linear-gradient(180deg,#0000,#e6e6e6 85%);bottom:0;content:"";height:4.5rem;left:0;pointer-events:none;position:absolute;right:0}.cs-media-preview--outcome .cs-media-preview__frame{background:#0000;border:none;max-height:clamp(24rem,40vw,32rem);padding:1.5rem}.cs-media-preview--outcome .cs-media-preview__frame img{border-radius:0;position:static}.cs-media-preview--default .cs-media-preview__frame{max-height:clamp(24rem,45vh,36rem)}.cs-figure--diagram,.cs-figure--document,.cs-figure--gallery,.cs-figure--screen-grid,.cs-media-preview--default,.cs-media-preview--diagram,.cs-media-preview--document,.cs-media-preview--gallery,.cs-media-preview--screen-grid{max-width:none}.cs-media-preview--compare-wrap{cursor:zoom-in;width:100%}.cs-media-preview--compare-wrap .cs-compare__grid{pointer-events:none}.cs-media-preview--compare-wrap .cs-compare__panel{padding:1.25rem}.cs-media-preview--compare-wrap .cs-compare__image{max-height:min(62vh,40rem);min-height:0}.cs-media-preview--header-phone{height:100%;max-width:none;width:100%}.cs-media-preview--header-phone .cs-media-preview__frame{background:#0000;border:none;height:100%;max-height:none}.cs-media-preview--header-phone .cs-media-preview__frame img{height:100%;max-height:none;object-fit:cover;object-position:top;width:100%}.cs-media-preview--header-phone:focus-visible .cs-media-preview__frame,.cs-media-preview--header-phone:hover .cs-media-preview__frame{box-shadow:none;transform:none}.cs-orbit{inset:0;overflow:visible;pointer-events:none;position:absolute}.cs-orbit__ring{border:1px solid #fcfbfb26;border-radius:50%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.cs-orbit__ring--outer{height:min(860px,90vw);width:min(860px,90vw)}.cs-orbit__ring--inner{height:min(1300px,120vw);opacity:.5;width:min(1300px,120vw)}.cs-orbit__dot,.cs-orbit__trail{opacity:0}.cs-orbit--live .cs-orbit__dot{opacity:1;transition:opacity .35s ease}.cs-orbit--live .cs-orbit__trail{opacity:1}.cs-orbit__dot{background:var(--paper);border-radius:50%;left:50%;position:absolute;top:50%;will-change:transform;z-index:2}.cs-orbit__dot--outer{box-shadow:0 0 0 4px #fcfbfb24;height:10px;width:10px}.cs-orbit__dot--inner{box-shadow:0 0 0 3px #fcfbfb1f;height:9px;width:9px}.cs-orbit__trail{background:var(--paper);border-radius:50%;left:50%;pointer-events:none;position:absolute;top:50%;will-change:transform,opacity;z-index:1}.cs-orbit__trail--outer{box-shadow:0 0 10px #fcfbfb38;height:10px;width:10px}.cs-orbit__trail--inner{box-shadow:0 0 8px #fcfbfb2e;height:9px;width:9px}@media (max-width:900px){.cs-orbit__dot--outer,.cs-orbit__trail--outer{height:8px;width:8px}.cs-orbit__dot--inner,.cs-orbit__trail--inner{height:7px;width:7px}}@media (prefers-reduced-motion:reduce){.cs-orbit__dot--inner,.cs-orbit__dot--outer{box-shadow:none}.cs-orbit__trail{display:none}}.opc-lifecycle,.opc-lineage,.opc-sprint{margin:0;width:100%}.opc-lifecycle{align-items:stretch;background:#0000;border:none;border-radius:0;display:flex;gap:1.25rem;overflow-x:auto;padding:0}.opc-lifecycle__card{background:#f4f4f3;border:1px dashed #c4c0bb;border-radius:.5rem;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:.75rem;justify-content:center;min-height:9rem;min-width:0;padding:1.5rem 1.25rem}.opc-lifecycle__card--accent{background:var(--crimson);border-color:var(--crimson);border-style:solid}.opc-lifecycle__head{align-items:center;display:flex;min-height:2rem}.opc-lifecycle__title{color:var(--ink);font-family:var(--font-body);font-size:1.25rem;font-weight:600;line-height:1.2;margin:0}.opc-lifecycle__logo{display:block;height:1.125rem;object-fit:contain;object-position:left center;width:auto}.opc-lifecycle__logo--oracle{height:1rem;max-width:7.5rem}.opc-lifecycle__logo--adyen{height:1.5rem;max-width:5.875rem}.opc-lifecycle__body{color:var(--muted);font-family:var(--font-body);font-size:.9375rem;line-height:1.4;margin:0}.opc-lifecycle__card--accent .opc-lifecycle__body{color:#fcfbfbd9}.opc-lifecycle__arrow{align-items:center;align-self:center;color:var(--muted);display:flex;flex:0 0 1.5rem;justify-content:center}.opc-lifecycle__arrow svg{height:.5rem;width:1.5rem}@media (max-width:700px){.opc-lifecycle{flex-direction:column;gap:1.25rem}.opc-lifecycle__card{flex:none;width:100%}.opc-lifecycle__arrow{transform:rotate(90deg)}}.opc-sprint{grid-gap:0;background:#f4f4f3;border:1px dashed var(--muted);border-radius:0;box-sizing:border-box;display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr));padding:1.75rem 1.5rem}.opc-sprint__col{align-items:center;display:flex;flex-direction:column;gap:1.5rem;padding:0 .5rem;position:relative}.opc-sprint__col:not(:last-child):after{border-right:1px dashed var(--muted);bottom:.25rem;content:"";opacity:.45;position:absolute;right:0;top:.15rem}.opc-sprint__label{color:var(--muted);font-family:var(--font-mono);font-size:.875rem;font-weight:400;letter-spacing:.1em;margin:0;text-align:center;white-space:nowrap}.opc-sprint__stack{align-items:center;display:flex;flex-direction:column;gap:1.5rem;width:100%}.opc-sprint__spacer{height:2.5rem}.opc-sprint__pill{align-items:center;border-radius:.375rem;box-sizing:border-box;display:inline-flex;font-family:var(--font-body);font-size:1rem;font-weight:500;justify-content:center;line-height:1.5;max-width:6.5rem;min-width:6rem;padding:.5rem 1rem;width:100%}.opc-sprint__pill--design{background:var(--blush);border:1px solid var(--crimson);color:var(--crimson)}.opc-sprint__pill--build{background:#0000;border:1px solid var(--ink);color:var(--ink)}.opc-lineage{grid-gap:.75rem .5rem;align-items:start;background:var(--paper);border:1px solid #e7e5e4;border-radius:.875rem;display:grid;gap:.75rem .5rem;grid-template-columns:minmax(0,.95fr) 1.4rem minmax(0,1.55fr);padding:1.25rem}.opc-lineage__patterns{display:flex;flex-direction:column;gap:1.25rem}.opc-lineage__pattern-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.5rem}.opc-lineage__source{color:var(--muted);font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.04em;margin:0}.opc-lineage__status{border:1px solid var(--crimson);color:var(--crimson);flex-shrink:0;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em;padding:.2rem .55rem}.opc-lineage__status--rejected{border-color:var(--muted);color:var(--muted)}.opc-lineage__body{color:var(--ink);font-family:var(--font-body);font-size:.875rem;line-height:1.45;margin:.55rem 0 0}.opc-lineage__bridges{align-self:stretch;display:flex;flex-direction:column;gap:1rem;justify-content:space-around;padding:3.5rem 0 8rem}.opc-lineage__bridge{background:var(--crimson);height:2px;position:relative;width:100%}.opc-lineage__bridge--adapted{background:repeating-linear-gradient(90deg,var(--crimson) 0 6px,#0000 6px 11px)}.opc-lineage__bridge--rejected{background:var(--muted)}.opc-lineage__bridge:after,.opc-lineage__bridge:before{background:inherit;background-image:none;border-radius:50%;content:"";height:7px;position:absolute;top:50%;transform:translateY(-50%);width:7px}.opc-lineage__bridge:before{background:var(--crimson);left:-2px}.opc-lineage__bridge:after{background:var(--crimson);right:-2px}.opc-lineage__bridge--rejected:after,.opc-lineage__bridge--rejected:before{background:var(--muted)}.opc-lineage__result-label{color:var(--crimson);font-family:var(--font-mono);font-size:.8125rem;font-weight:500;letter-spacing:.06em;margin:0 0 .65rem}.opc-lineage__result-frame{position:relative}.opc-mock{background:#fff;border:1px solid #e7e5e4;overflow:hidden}.opc-mock--summary{grid-gap:.35rem .75rem;display:grid;gap:.35rem .75rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.65rem .75rem}.opc-mock__metric{display:flex;flex-direction:column;gap:.1rem}.opc-mock__metric span{color:var(--muted);font-family:var(--font-body);font-size:.625rem}.opc-mock__metric strong{color:var(--ink);font-family:var(--font-body);font-size:.75rem;font-weight:600}.opc-mock--date{max-width:11rem;padding:.35rem 0}.opc-mock__date-head{border-bottom:1px solid #eee;font-size:.6875rem;font-weight:600;padding:.35rem .75rem .45rem}.opc-mock__date-head,.opc-mock__date-row{color:var(--ink);font-family:var(--font-body)}.opc-mock__date-row{font-size:.75rem;padding:.4rem .75rem}.opc-mock__date-row--active{background:#ebf2ff;color:#1d4ed8;font-weight:600}.opc-mock--filters{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem .65rem}.opc-mock--filters span{background:#fafafa;border:1px solid #ddd;border-radius:.25rem;color:var(--muted);font-family:var(--font-body);font-size:.6875rem;padding:.25rem .45rem}.opc-tx{background:#fff;border:1px solid #e7e5e4;overflow:hidden}.opc-tx__header{background:#2c3345;color:#fff;padding:1rem 1rem .85rem}.opc-tx__title{font-family:var(--font-display);font-size:1.35rem;font-weight:500;margin:0 0 .75rem}.opc-tx__bar{align-items:center;background:#ffffff14;border-radius:.35rem;display:flex;flex-wrap:wrap;gap:.4rem;padding:.4rem}.opc-tx__search{background:#ffffff1f;color:#ffffffb3;flex:1 1 8rem;font-size:.75rem;min-width:7rem;padding:.35rem .55rem}.opc-tx__chip,.opc-tx__search{border-radius:.25rem;font-family:var(--font-body)}.opc-tx__chip{background:#ffffff24;color:#fff;font-size:.6875rem;padding:.3rem .5rem;white-space:nowrap}.opc-tx__kpis{grid-gap:.5rem;background:#fff;border-bottom:1px solid #ececec;display:grid;gap:.5rem;grid-template-columns:repeat(5,minmax(0,1fr));padding:.75rem 1rem}.opc-tx__kpi{display:flex;flex-direction:column;gap:.15rem}.opc-tx__kpi span{color:var(--muted);font-family:var(--font-body);font-size:.625rem;line-height:1.3}.opc-tx__kpi strong{color:var(--ink);font-family:var(--font-body);font-size:.9375rem;font-weight:600}.opc-tx__table{padding:.35rem 0 .5rem}.opc-tx__row,.opc-tx__thead{grid-gap:.5rem;display:grid;font-family:var(--font-body);font-size:.6875rem;gap:.5rem;grid-template-columns:1.4fr .8fr 1fr .7fr .7fr;padding:.45rem 1rem}.opc-tx__thead{border-bottom:1px solid #ececec;color:var(--muted);font-weight:500}.opc-tx__row{border-bottom:1px solid #f3f3f3;color:var(--ink)}.opc-tx__ref{color:#2563eb;font-weight:500}.opc-lineage__pins{inset:0;pointer-events:none;position:absolute}.opc-lineage__pin{background:var(--paper);border:1px solid var(--crimson);color:var(--crimson);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.05em;padding:.2rem .45rem;position:absolute;white-space:nowrap}.opc-lineage__pin--rejected{border-color:var(--muted);color:var(--muted)}.opc-lineage__pin--kpis{left:.75rem;top:5.6rem}.opc-lineage__pin--date{right:.85rem;top:3.35rem}.opc-lineage__pin--search{left:.75rem;top:3.35rem}@media (max-width:900px){.opc-lineage{grid-template-columns:1fr}.opc-lineage__bridges{display:none}.opc-tx__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.opc-lineage__pin--date{right:.5rem;top:3.5rem}}@media (max-width:700px){.opc-sprint{gap:1.5rem;grid-template-columns:1fr}.opc-sprint__col:not(:last-child):after,.opc-sprint__spacer{display:none}.opc-tx__row,.opc-tx__thead{grid-template-columns:1.2fr .8fr 1fr}.opc-tx__row span:nth-child(n+4),.opc-tx__thead span:nth-child(n+4){display:none}}.opc-pattern-compare{display:flex;flex-direction:column;gap:1.5rem;gap:var(--cs-copy-gap,1.5rem);margin-top:0;padding-bottom:0}.opc-pattern-compare+.opc-pattern-compare{padding-top:0}.opc-pattern-compare__copy{display:flex;flex-direction:column;gap:1rem;gap:var(--cs-intro-gap,1rem);max-width:46.25rem}.opc-pattern-compare__eyebrow{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1;margin:0;text-transform:uppercase}.opc-pattern-compare__title{color:var(--ink);font-family:var(--font-body);font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.opc-pattern-compare__copy .cs-body{margin:0;max-width:none}.opc-pattern-compare__stack{align-items:center;display:flex;flex-direction:column;gap:1.5rem;width:100%}.opc-pattern-compare__panel{background:#e6e6e6;border:none;border-radius:0;box-sizing:border-box;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;width:100%}.opc-pattern-compare__label{color:var(--ink);font-family:var(--font-body);font-size:1rem;font-weight:500;line-height:1.5;margin:0}.opc-pattern-compare__label--accent{color:var(--crimson)}.opc-pattern-compare__caption{color:var(--ink);font-family:var(--font-body);font-size:1rem;font-weight:500;line-height:1.5;margin:0}.opc-pattern-compare__panel .cs-media-preview{width:100%}.opc-pattern-compare__panel .cs-media-preview__frame{background:#0000;border:none;border-radius:0;box-shadow:none;height:auto;max-height:none;overflow:hidden;padding:0}.opc-pattern-compare__panel .cs-media-preview:focus-visible .cs-media-preview__frame,.opc-pattern-compare__panel .cs-media-preview:hover .cs-media-preview__frame{box-shadow:none;transform:none}.opc-pattern-compare__panel .cs-media-preview__frame img{display:block;height:auto;max-height:none;object-fit:contain;object-position:top center;position:static;width:100%}.opc-compare-arrow{color:var(--crimson);flex-shrink:0}@media (max-width:700px){.opc-pattern-compare{gap:1.25rem;padding-bottom:0}.opc-pattern-compare__stack{gap:1.125rem}.opc-pattern-compare__panel{padding:1rem}}.case-study{background:var(--paper)}.cs-container{margin:0 auto;max-width:var(--container-max);width:100%}.cs-eyebrow{align-items:center;align-self:flex-start;background:var(--crimson);border-radius:999px;color:var(--paper);display:inline-flex;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.1em;margin:0;padding:.375rem .75rem;width:fit-content}.cs-eyebrow--compact{font-weight:400;line-height:1;margin-bottom:0;padding:.3125rem .75rem}.cs-section-title{color:var(--ink);font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0;max-width:56.25rem}.cs-section-title span{display:block}.cs-body{color:var(--ink);font-size:var(--text-body);line-height:1.62;margin:0;max-width:46.25rem}.cs-header{align-items:center;background:var(--crimson);color:var(--paper);display:flex;justify-content:center;min-height:580px;overflow:hidden;padding:clamp(6rem,14vw,11rem) var(--page-padding) clamp(5rem,10vw,8.75rem);position:relative}.cs-header__content{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1fr auto;max-width:var(--container-max);position:relative;width:100%;z-index:1}.cs-header__content--offset{display:flex;justify-content:flex-end}.cs-header__content--offset .cs-header__intro{display:flex;flex-direction:column;gap:1.5rem;max-width:39.5rem}.cs-header--stacked{align-items:flex-start;min-height:0;padding:clamp(5.5rem,12.5vw,11.25rem) var(--page-padding) clamp(5.5rem,12.5vw,11.375rem)}.cs-header__content--stacked{align-items:center;display:flex;flex-direction:column;gap:1.5rem;max-width:72.5rem}.cs-header__content--stacked .cs-header__intro{display:flex;flex-direction:column;gap:1.5rem;max-width:39.5625rem;width:100%}.cs-header__hero-media{aspect-ratio:952/536;background:var(--crimson);border-radius:0;overflow:hidden;width:min(59.5rem,100%)}.cs-header__hero-media img,.cs-header__hero-video{display:block;height:100%;object-fit:cover;object-position:top center;width:100%}.cs-header__title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;line-height:1.02;margin:0;max-width:40rem}.cs-header__title span{display:block}.cs-header__meta{display:flex;flex-direction:column;font-family:var(--font-mono);font-size:var(--text-caption);gap:1rem;letter-spacing:.1em;margin:0}.cs-header__meta-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:120px 1fr}.cs-header__meta-row dt{font-weight:500;margin:0}.cs-header__meta-row dd{display:flex;flex-direction:column;font-weight:400;gap:.15rem;letter-spacing:.04em;margin:0}.cs-header--qr{align-items:flex-start;background:var(--crimson);min-height:58rem;padding:11.25rem var(--page-padding) 8.75rem}.cs-header--qr .cs-header__content--qr{align-items:start;gap:clamp(1.5rem,3vw,3.5rem);grid-template-columns:auto 1fr;max-width:69.9375rem;min-height:33.5rem}.cs-header--qr .cs-header__intro{display:flex;flex-direction:column;gap:1.5rem;max-width:39.1875rem;padding-top:0}.cs-header--qr .cs-header__title{font-size:var(--text-display);max-width:39.1875rem}.cs-header--qr .cs-header__meta{gap:1rem;padding-top:.5rem}.cs-header--qr .cs-header__meta-row dd,.cs-header--qr .cs-header__meta-row dt{color:var(--paper);font-size:var(--text-caption);font-weight:400;letter-spacing:.1em;line-height:1}.cs-header--qr .cs-header__meta-row dd:not(.cs-header__team){letter-spacing:.1em}.cs-header--qr .cs-header__phone{align-self:start;aspect-ratio:720/1454;flex-shrink:0;margin-left:-1.90625rem;margin-top:-8.125rem;width:24.6875rem}.cs-header--qr .cs-header__phone-chroma{height:100%;position:relative;width:100%}.cs-header__phone-chroma-source{height:100%;inset:0;object-fit:cover;object-position:top;opacity:0;pointer-events:none;position:absolute;width:100%;z-index:0}.cs-header--qr .cs-header__phone-gif,.cs-header__phone-chroma-canvas{position:relative;z-index:1}.cs-header--qr .cs-header__phone .cs-media-preview--header-phone,.cs-header--qr .cs-header__phone-gif,.cs-header--qr .cs-header__phone>img,.cs-header__phone-chroma-canvas{display:block;height:100%;object-fit:contain;object-position:top center;width:100%}.cs-header--qr .cs-header__phone .cs-media-preview__frame{background:#0000;height:100%}.cs-header--qr .cs-header__phone .cs-media-preview__frame img{height:100%;object-fit:contain;object-position:top center;width:100%}.cs-header--qr .cs-header__team{font-family:var(--font-mono);font-size:var(--text-base);font-weight:400;letter-spacing:.04em;line-height:1.2}.cs-header__content--qr{align-items:end;gap:clamp(2rem,5vw,4rem);grid-template-columns:auto 1fr}.cs-header__phone>img{display:block;height:auto;width:100%}.cs-tldr{background:var(--line);padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.cs-tldr__container,.cs-tldr__inner{align-items:flex-start;display:flex;flex-direction:column}.cs-tldr__inner{gap:var(--cs-copy-gap);width:100%}.cs-tldr__text{color:var(--ink);font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0;max-width:56.25rem}.cs-highlights{background:var(--paper);padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.cs-highlights .cs-container{display:flex;flex-direction:column;gap:var(--cs-stack-gap)}.cs-highlights .cs-section-title{margin-bottom:0}.cs-highlights__list{display:flex;flex-direction:column;gap:var(--cs-copy-gap)}.cs-highlight{border-bottom:1px dashed var(--ink);display:flex;flex-direction:column;gap:.75rem;padding:1.75rem 0}.cs-highlight--muted-border{border-bottom-color:var(--muted)}.cs-highlight__num{color:var(--crimson);font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0;padding:.5rem 0}.cs-highlight__title{font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.cs-highlight__body{font-size:var(--text-body);line-height:1.62;margin:0;max-width:45rem}.cs-section{padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.cs-section>.cs-container{display:flex;flex-direction:column;gap:var(--cs-stack-gap)}.cs-section>.cs-container:has(.opc-lifecycle){gap:var(--cs-stack-gap-lg)}.cs-section__intro{gap:var(--cs-copy-gap)}.cs-section__intro,.cs-section__intro-head{display:flex;flex-direction:column;width:100%}.cs-section__intro-head{align-items:flex-start;gap:var(--cs-intro-gap)}.cs-section__copy{display:flex;flex-direction:column;gap:var(--cs-copy-gap);width:100%}.cs-section__copy .cs-body{margin:0}.cs-section--gray{background:var(--line)}.cs-figure{display:flex;flex-direction:column;gap:1rem;margin:0}.cs-figure__image-wrap{background:#f0f0f0;border:1px solid #e7e5e4;border-radius:0;overflow:hidden}.cs-figure__image-wrap img{display:block;height:auto;width:100%}.cs-figure--tall .cs-figure__image-wrap{max-width:56.25rem}.cs-figure--component,.cs-figure--wide .cs-figure__image-wrap{max-width:none}.cs-figure__placeholder{align-items:center;background:#f0f0f0;border:1px solid #e7e5e4;border-radius:0;color:var(--muted);display:flex;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;justify-content:center;letter-spacing:.1em;min-height:28rem;padding:2rem;text-align:center}.cs-compare{display:flex;flex-direction:column;gap:1rem;margin:0}.cs-compare__grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.cs-compare__panel{background:var(--image-bg);border:1px solid #f4f4f3;border-radius:0;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.cs-compare__panel--after{background:var(--blush);border-color:#f4f4f3}.cs-compare__badge{align-self:flex-start;background:var(--paper);border:1px solid var(--crimson);border-radius:999px;color:var(--crimson);display:inline-flex;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.1em;padding:.5rem 1rem}.cs-compare__image{align-items:center;border-radius:0;display:flex;flex:1 1;justify-content:center;overflow:hidden}.cs-compare__image img{display:block;height:100%;object-fit:contain;width:100%}.cs-compare--editorial .cs-compare__image{height:auto;max-height:min(62vh,40rem);min-height:0}.cs-compare--editorial .cs-compare__image img{height:auto;max-height:min(62vh,40rem);max-width:100%;object-fit:contain;object-position:top center;width:auto}.cs-compare--editorial .cs-compare__panel{padding:1.5rem}.cs-figure--outcome,.cs-figure--phone{margin-top:0}.cs-figure__video{aspect-ratio:16/9;background:#1c1917;border:1px solid #f4f4f3;overflow:hidden;position:relative;width:100%}.cs-figure__video iframe{border:0;height:100%;inset:0;position:absolute;width:100%}.cs-ask-split{align-items:flex-end;display:flex;gap:4rem;justify-content:flex-end;width:100%}.cs-ask-split__figure{flex-shrink:0;width:19.75rem}.cs-ask-split__text{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;min-width:0;padding:1rem 0}.cs-ask-split__head{display:flex;flex-direction:column;gap:var(--cs-intro-gap);width:100%}.cs-ask-split__head .cs-section-title{margin:0;max-width:56.25rem}.cs-ask-split__body .cs-body{margin:0;max-width:none;width:100%}.cs-ask-figure{display:flex;flex-direction:column;gap:1rem;margin:0;width:100%}.cs-ask-figure__tray{background:var(--image-bg);border:none;cursor:zoom-in;display:block;margin:0;padding:.5rem;text-align:left;transition:box-shadow .25s ease;width:100%}.cs-ask-figure__tray:focus-visible,.cs-ask-figure__tray:hover{box-shadow:0 10px 28px #1c19171a}.cs-ask-figure__tray:focus-visible{outline:2px solid var(--crimson);outline-offset:4px}.cs-ask-figure__screen{aspect-ratio:1568/3376;background:var(--paper);border:1px solid var(--line);overflow:hidden;width:100%}.cs-ask-figure__screen img{display:block;height:100%;object-fit:contain;width:100%}.cs-ask-figure__caption{color:var(--muted);font-size:var(--text-base);font-weight:500;line-height:1.5;margin:0}.cs-body--intro{margin:0}.cs-iterations{display:flex;flex-direction:column;gap:4rem}.cs-iteration__divider{display:none}.cs-iteration{padding-bottom:3rem}.cs-iteration .cs-compare,.cs-iteration .cs-figure{margin-top:1.5rem}.cs-iteration__title{color:var(--ink);font-family:var(--font-body);font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0 0 1rem}.cs-outcome-split{grid-gap:3.5rem;align-items:start;display:grid;gap:3.5rem;grid-template-columns:minmax(0,1fr) minmax(0,500px)}.cs-section--outcome .cs-section-title{margin-bottom:0}.cs-outcome-split__text{display:flex;flex-direction:column;gap:var(--cs-copy-gap)}.cs-outcome-split__text .cs-body{margin:0}.cs-outcome-split__figure .cs-figure{margin-top:0}.cs-section--reflection{background:var(--black);color:var(--ink-on-dark)}.cs-reflection__title{color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0}.cs-reflection__list{display:flex;flex-direction:column;gap:1rem}.cs-reflection__item{grid-gap:clamp(1.5rem,4vw,4rem);display:grid;gap:clamp(1.5rem,4vw,4rem);grid-template-columns:minmax(0,22.5rem) minmax(0,1fr);padding:1.75rem 0}.cs-reflection__item-title{color:var(--ink-on-dark);font-family:var(--font-body);font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.cs-reflection__item-body{color:var(--line);font-size:var(--text-body);line-height:1.62;margin:0}.cs-figure--outcome-card .cs-figure__image-wrap{background:#0000;border:none;padding:2rem}.cs-figure--outcome-card .cs-figure__image-wrap img{border-radius:0}.cs-section--up-next{padding:var(--section-pad-top) var(--page-padding) var(--section-pad-bottom)}.cs-section--up-next .cs-container,.cs-section--up-next .cs-reveal{display:flex;flex-direction:column;gap:24px}.cs-section--up-next.cs-section--up-next-centered .cs-container{align-items:center}.cs-section--up-next-centered .cs-up-next-card{border:1px solid #e7e5e4;border-radius:0;max-width:34.25rem;overflow:hidden;width:100%}.cs-section--up-next-centered .cs-up-next-card__cover{aspect-ratio:548/300;border:none;border-radius:0}.cs-section--up-next-centered .cs-up-next-card__info{padding:1.625rem 1.75rem 1.75rem}.cs-section--up-next-centered .cs-up-next-card__title{font-size:var(--text-2xl);line-height:1.1}.cs-feature-rows{display:flex;flex-direction:column;gap:1.5rem}.cs-feature-row{grid-gap:6.375rem;display:grid;gap:6.375rem;grid-template-columns:16.25rem 1fr;padding:1.75rem 0}.cs-feature-row__title{font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.cs-feature-row__body{font-size:var(--text-body);line-height:1.62;margin:0;max-width:45rem}.cs-stack-cards{gap:1.5rem}.cs-stack-card,.cs-stack-cards{display:flex;flex-direction:column}.cs-stack-card{gap:.625rem;padding:1.75rem 0}.cs-stack-card__title{font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0}.cs-stack-card__body{color:var(--muted);font-size:var(--text-body);line-height:1.62;margin:0;max-width:47.5rem}.cs-section--rich .cs-body--muted{color:var(--muted)}.cs-section--rich .cs-container>.cs-body,.cs-section--rich .cs-container>.cs-reveal>.cs-body{margin-top:0;max-width:45rem}.cs-section--rich .cs-container>.cs-compare,.cs-section--rich .cs-container>.cs-figure,.cs-section--rich .cs-container>.cs-quote,.cs-section--rich .cs-container>.cs-reveal>.cs-compare,.cs-section--rich .cs-container>.cs-reveal>.cs-figure,.cs-section--rich .cs-container>.cs-reveal>.cs-quote,.cs-section--rich .cs-container>.cs-reveal>.opc-pattern-compare,.cs-section--rich .cs-container>.opc-pattern-compare{margin-top:0}.cs-section--rich .cs-container>.cs-reveal:last-child>.opc-pattern-compare,.cs-section--rich .cs-container>.opc-pattern-compare:last-child{padding-bottom:0}.cs-content-aside{grid-gap:2rem 1.5rem;align-items:start;display:grid;gap:2rem 1.5rem;grid-template-columns:minmax(0,1fr) minmax(14rem,25rem);margin-top:0;width:100%}.cs-content-aside__text{display:flex;flex-direction:column;gap:1.5rem;max-width:45rem}.cs-content-aside__text .cs-body{margin:0;max-width:none}.cs-content-aside__figure{margin:0;min-width:0}.cs-content-aside__figure .cs-figure{margin:0}.cs-content-aside__figure .cs-figure--component{width:100%}.cs-rich-two-col{grid-gap:3.5rem;align-items:start;display:grid;gap:3.5rem;grid-template-columns:minmax(0,1fr) minmax(0,28.75rem)}.cs-rich-two-col__text{display:flex;flex-direction:column;gap:2.75rem}.cs-up-next__label{color:var(--muted);font-family:var(--font-body);font-size:var(--text-base);font-weight:500;line-height:1.5;margin:0}.cs-up-next-card{color:inherit;display:flex;flex-direction:column;gap:.5rem;text-decoration:none}.cs-up-next-card:hover .cs-up-next-card__title{color:var(--crimson)}.cs-up-next-card__cover{aspect-ratio:1120/606;background:var(--surface);border:1px solid var(--line);overflow:hidden;width:100%}.cs-up-next-card__cover img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.cs-up-next-card:hover .cs-up-next-card__cover img{transform:scale(1.01)}.cs-up-next-card__info{display:flex;flex-direction:column;gap:16px;padding:1rem 1rem 3.5rem}.cs-up-next-card__meta{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:400;letter-spacing:.1em;line-height:1;margin:0;text-transform:uppercase}.cs-up-next-card__title{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.12;margin:0;transition:color .2s ease}.cs-up-next-card__subtitle{color:var(--muted);font-size:var(--text-body);line-height:1.62;margin:0}.cs-figure__caption{color:var(--muted);font-size:var(--text-base);font-weight:500;margin-top:0}.cs-figure__caption--stack{display:flex;flex-direction:column;gap:0}.cs-figure__caption-link{color:inherit;text-decoration:none;word-break:break-all}.cs-figure__caption-link:focus-visible,.cs-figure__caption-link:hover{text-decoration:underline}.cs-quote{border-left:2px solid var(--crimson);margin:0;padding:.5rem 0 .5rem 1.5rem}.cs-quote p{text-wrap:pretty;font-size:var(--text-lead);font-weight:500;line-height:1.32;margin:0;max-width:51.25rem}.cs-quote p+p{margin-top:1.5rem}.cs-content-figure{display:flex;flex-direction:column;gap:var(--cs-stack-gap);width:100%}.cs-content-figure .cs-figure{margin:0}.cs-content-figure .cs-body{margin:0;max-width:45rem}.cs-next{border-top:1px dashed var(--ink);padding:var(--section-pad-y) var(--page-padding)}.cs-next__label{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.1em;margin:0 0 1.5rem}.cs-next__link{align-items:center;color:var(--ink);display:flex;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;gap:1.5rem;justify-content:space-between;text-decoration:none}.cs-next__link:hover{color:var(--crimson)}@media (max-width:1100px){.cs-reflection__item{gap:.75rem;grid-template-columns:1fr}.cs-compare__grid{gap:1rem}}@media (max-width:900px){.cs-header{min-height:0;padding:clamp(4.5rem,12vw,8rem) var(--page-padding) clamp(3.5rem,10vw,6rem)}.cs-header__content{gap:2rem;grid-template-columns:1fr}.cs-header__meta-row{gap:.75rem;grid-template-columns:minmax(6.5rem,7.5rem) 1fr}.cs-header--qr{align-items:flex-start;min-height:0;padding:clamp(4.5rem,12vw,8rem) var(--page-padding) clamp(3.5rem,10vw,6rem)}.cs-header--qr .cs-header__content--qr{gap:2rem;grid-template-columns:1fr;min-height:0}.cs-header--qr .cs-header__phone{margin:0 auto 0 0;order:-1;width:min(15rem,52vw)}.cs-header--qr .cs-header__title{font-size:clamp(2.25rem,7vw,3.25rem)}.cs-ask-split{align-items:stretch;flex-direction:column}.cs-ask-split__figure{margin:0 auto;width:min(19.75rem,100%)}.cs-content-aside{grid-template-columns:1fr}.cs-content-aside__figure{max-width:25rem}.cs-compare__grid,.cs-feature-row,.cs-outcome-split,.cs-reflection__item{grid-template-columns:1fr}.cs-feature-row{gap:1rem}.cs-rich-two-col{grid-template-columns:1fr}.cs-header__content--offset{justify-content:flex-start}.cs-header--stacked{padding:clamp(4.5rem,12vw,8rem) var(--page-padding) clamp(3.5rem,10vw,6rem)}.cs-header__content--stacked{align-items:stretch}.cs-header__content--stacked .cs-header__intro{max-width:none}.cs-header__hero-media{width:100%}.cs-highlights .cs-container,.cs-section>.cs-container,.cs-section>.cs-container:has(.opc-lifecycle),.cs-tldr__inner{gap:2.25rem}.cs-section__copy,.cs-section__intro{gap:1.25rem}}@media (max-width:600px){.cs-header__meta-row{gap:.35rem;grid-template-columns:1fr}.cs-header--qr .cs-header__phone{width:min(13.5rem,58vw)}.cs-eyebrow{font-size:var(--text-xs)}}.App{background:var(--paper);min-height:100vh;text-align:left}
/*# sourceMappingURL=main.ad31edf9.css.map*/