.protocol-experience.protocol-reader{--protocol-header-offset:78px;--protocol-family-height:55px;--protocol-reader-gutter:max(24px, 5vw, calc((100vw - 1440px) / 2));display:flow-root;overflow:visible}.protocol-experience.protocol-reader .protocol-family-nav{inset:auto;top:var(--protocol-header-offset);z-index:145;min-height:var(--protocol-family-height);margin-top:var(--protocol-header-offset);padding:5px var(--protocol-reader-gutter);gap:16px;font-size:10px;position:sticky}.protocol-experience.protocol-reader .protocol-family-nav>div{flex-wrap:wrap;min-width:0}.protocol-experience.protocol-reader .protocol-family-nav a{letter-spacing:.08em;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-size:11px;display:inline-flex}.protocol-experience.protocol-reader .protocol-hero{min-height:0;padding:clamp(35px, 4.4vw, 68px) var(--protocol-reader-gutter) 0;grid-template-columns:minmax(0,1fr);gap:36px;display:grid;overflow:visible}.protocol-experience.protocol-reader section[id]{scroll-margin-top:calc(var(--protocol-header-offset) + var(--protocol-family-height) + 20px)}.protocol-experience.protocol-reader .protocol-hero-meta{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:12px 34px;min-width:0;padding:18px 0 25px;display:grid;overflow:visible}.protocol-experience.protocol-reader .protocol-hero-meta>span{grid-column:1/-1;font-size:11px;line-height:1.6}.protocol-experience.protocol-reader .protocol-hero-meta>strong{letter-spacing:-.045em;overflow-wrap:normal;word-break:normal;min-width:0;margin:0;font-size:clamp(34px,4.5vw,62px);line-height:1}.protocol-experience.protocol-reader .protocol-hero-meta>small{letter-spacing:.08em;overflow-wrap:normal;justify-self:end;min-width:0;max-width:520px;padding:0;font-size:12px;line-height:1.7}.protocol-experience.protocol-reader .protocol-hero-copy{width:100%;min-width:0;max-width:none;container-type:inline-size}.protocol-experience.protocol-reader .protocol-hero-copy .protocol-reader-title{letter-spacing:-.055em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance;max-width:22ch;margin:0;font-size:clamp(34px,7.8cqw,102px);font-weight:740;line-height:.98}.protocol-experience.protocol-reader .protocol-reader-title>span,.protocol-experience.protocol-reader .protocol-reader-title>em{display:block}.protocol-experience.protocol-reader .protocol-reader-title>em{margin-top:.1em;line-height:1.06}.protocol-experience.protocol-reader .protocol-hero-lede{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:30px clamp(30px,5vw,80px);max-width:1240px;margin:36px 0 0;display:grid}.protocol-experience.protocol-reader .protocol-hero-lede p{border:0;min-width:0;margin:0;padding:0;font-size:clamp(16px,1.25vw,19px);line-height:1.75}.protocol-experience.protocol-reader .protocol-hero-lede p:first-child{color:var(--ink);font-size:clamp(19px,1.65vw,24px);line-height:1.55}.protocol-experience.protocol-reader .protocol-stats{grid-template-columns:repeat(var(--protocol-stat-columns,4), minmax(0, 1fr));background:#f8faf6b8;width:100%;min-width:0;margin:8px 0 0}.protocol-experience.protocol-reader .protocol-stats>span{place-content:start;gap:14px;min-width:0;min-height:0;padding:24px;display:grid}.protocol-experience.protocol-reader .protocol-stats strong{font-size:clamp(44px,4vw,60px);line-height:.95}.protocol-experience.protocol-reader .protocol-stats small{overflow-wrap:normal;max-width:none;font-size:11px;line-height:1.6}.protocol-experience.protocol-reader .protocol-reader-index{z-index:3;padding:24px var(--protocol-reader-gutter) 36px;background:#f8faf6cc;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px;margin:0;display:grid;position:relative}.protocol-experience.protocol-reader .protocol-reader-index a{border-bottom:1px solid var(--line);min-height:54px;color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;font-size:14px;line-height:1.45;display:grid}.protocol-experience.protocol-reader .protocol-reader-index a>span,.protocol-experience.protocol-reader .protocol-reader-index a>i{color:var(--teal);font:500 11px/1.4 var(--font-mono), monospace}.protocol-experience.protocol-reader .protocol-reader-index a:hover{color:var(--teal);border-color:var(--teal)}.protocol-experience.protocol-reader :is(.protocol-problem,.protocol-principles,.protocol-lifecycle,.protocol-capabilities,.protocol-comparison,.protocol-architecture,.protocol-cta){min-height:0;padding:clamp(56px, 6vw, 90px) var(--protocol-reader-gutter)}.protocol-experience.protocol-reader .protocol-section-label{letter-spacing:.08em;font-size:12px;line-height:1.55}.protocol-experience.protocol-reader .protocol-section-label>span{flex:none}.protocol-experience.protocol-reader :is(.protocol-problem-copy,.protocol-lifecycle-heading,.protocol-comparison-heading,.protocol-architecture-heading){grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:32px clamp(32px,5vw,76px);min-width:0;margin:38px 0 0;display:grid}.protocol-experience.protocol-reader :is(.protocol-problem-copy,.protocol-lifecycle-heading,.protocol-comparison-heading,.protocol-architecture-heading)>h2,.protocol-experience.protocol-reader .protocol-capabilities>h2,.protocol-experience.protocol-reader .protocol-cta>h2{letter-spacing:-.045em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance;min-width:0;max-width:100%;margin:0;font-size:clamp(34px,4.3vw,65px);line-height:1.08}.protocol-experience.protocol-reader .protocol-capabilities>h2{max-width:1100px;margin:38px 0}.protocol-experience.protocol-reader :is(.protocol-problem-copy,.protocol-lifecycle-heading,.protocol-comparison-heading,.protocol-architecture-heading) p{font-size:17px;line-height:1.8}.protocol-experience.protocol-reader .protocol-problem-copy>div{min-width:0;padding:0}.protocol-experience.protocol-reader .protocol-problem-copy p{padding:22px 0}.protocol-experience.protocol-reader .protocol-principles-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px}.protocol-experience.protocol-reader .protocol-principles-grid>:is(article,.protocol-principle-link){min-width:0;min-height:0;padding:clamp(22px,2.3vw,34px);transform:none}.protocol-experience.protocol-reader .protocol-principles-grid h3{letter-spacing:-.035em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:32px 0 18px;font-size:clamp(29px,2.7vw,42px);line-height:1.1}.protocol-experience.protocol-reader .protocol-principles-grid>:is(article,.protocol-principle-link)>b{font-size:11px;line-height:1.65}.protocol-experience.protocol-reader .protocol-principles-grid>:is(article,.protocol-principle-link)>p{margin-top:22px;font-size:16px;line-height:1.75}.protocol-experience.protocol-reader .protocol-stage-lab{grid-template-columns:245px minmax(0,1fr);min-height:0;margin-top:38px}.protocol-experience.protocol-reader .stage-lab-nav button{text-align:start;grid-template-columns:28px minmax(0,1fr);gap:10px;min-height:68px;padding:18px;font-size:12px;line-height:1.55}.protocol-experience.protocol-reader .stage-lab-display{min-width:0;overflow:visible}.protocol-experience.protocol-reader .stage-lab-display>header{flex-wrap:wrap;gap:12px;font-size:10px;line-height:1.6}.protocol-experience.protocol-reader .stage-protocol-definition{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px}.protocol-experience.protocol-reader .stage-protocol-definition>div:first-child p{font-size:16px;line-height:1.65}.protocol-experience.protocol-reader .stage-letter-key{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;min-width:0}.protocol-experience.protocol-reader .stage-letter-key.is-protocol-family{grid-template-columns:repeat(3,minmax(0,1fr))}.protocol-experience.protocol-reader .stage-letter-key span{grid-template-columns:minmax(0,1fr);gap:7px;min-width:0;padding:12px}.protocol-experience.protocol-reader .stage-letter-key small{overflow-wrap:normal;font-size:10px;line-height:1.5}.protocol-experience.protocol-reader .stage-lab-visual{grid-template-columns:165px minmax(0,1fr);gap:30px;min-height:0;padding:35px 28px 42px}.protocol-experience.protocol-reader .stage-core{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:160px;height:160px;padding:18px;display:flex}.protocol-experience.protocol-reader .stage-core img{width:75px;height:75px}.protocol-experience.protocol-reader .stage-core span{letter-spacing:.1em;text-align:center;max-width:100%;margin:0;font-size:13px}.protocol-experience.protocol-reader .stage-rails{top:50%;left:auto;width:30px;height:1px;inset-inline-start:188px;overflow:hidden;transform:none}.protocol-experience.protocol-reader .stage-readout{text-align:start;min-width:0;padding:0;animation-name:protocol-readout-in}@keyframes protocol-readout-in{0%{opacity:0;transform:translateY(12px)}}.protocol-experience.protocol-reader .stage-readout h3{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:15px 0;font-size:clamp(30px,3.1vw,46px);line-height:1.08}.protocol-experience.protocol-reader .stage-readout strong{font-size:15px;line-height:1.65}.protocol-experience.protocol-reader .protocol-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.protocol-experience.protocol-reader .protocol-capability-grid>article:nth-child(n){grid-column:auto;min-width:0;min-height:0;padding:28px;transform:none}.protocol-experience.protocol-reader .protocol-capability-grid h3{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:25px 0 16px;font-size:clamp(28px,2.8vw,39px);line-height:1.12}.protocol-experience.protocol-reader .protocol-capability-grid p,.protocol-experience.protocol-reader .protocol-comparison-grid p{font-size:16px;line-height:1.75}.protocol-experience.protocol-reader .protocol-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px}.protocol-experience.protocol-reader .protocol-comparison-grid article{min-width:0;padding:28px}.protocol-experience.protocol-reader .protocol-architecture-map{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px;min-height:0;margin-top:38px;padding:28px;overflow:visible}.protocol-experience.protocol-reader .architecture-core{order:-1;grid-column:1/-1;justify-self:center;width:160px;height:160px;margin:12px 0 20px;position:relative;inset:auto;transform:none}.protocol-experience.protocol-reader .architecture-line{display:none}.protocol-experience.protocol-reader .protocol-architecture-map article{min-width:0;min-height:0;padding:24px;animation:none}.protocol-experience.protocol-reader .protocol-architecture-map article>span{max-width:calc(100% - 25px);font-size:11px;line-height:1.6;display:block}.protocol-experience.protocol-reader .protocol-architecture-map article>strong{overflow-wrap:normal;word-break:normal;margin:28px 0 14px;font-size:clamp(24px,2.1vw,32px);line-height:1.15}.protocol-experience.protocol-reader .protocol-architecture-map article>p{font-size:16px;line-height:1.75}.protocol-experience.protocol-reader .protocol-cta>p{margin-bottom:26px;font-size:12px}.protocol-experience.protocol-reader .protocol-cta>h2{max-width:1100px}.protocol-experience.protocol-reader .protocol-cta>div{flex-wrap:wrap;margin-top:38px}.protocol-experience.protocol-reader .protocol-cta :is(a,button){align-items:center;gap:24px;min-width:0;max-width:100%;min-height:52px;padding:17px 20px;font-size:12px;line-height:1.6}.protocol-experience.protocol-reader .protocol-footer{padding-inline:var(--protocol-reader-gutter);grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.1fr);gap:34px}.protocol-experience.protocol-reader :is(.protocol-reader-index a,.protocol-family-nav a,.stage-lab-nav button,.protocol-principle-link,.protocol-cta a,.protocol-cta button):focus-visible{outline:2px solid var(--teal);outline-offset:4px}@media (max-width:1150px){.protocol-experience.protocol-reader .protocol-stage-lab{grid-template-columns:minmax(0,1fr)}.protocol-experience.protocol-reader .stage-lab-nav{border-bottom:1px solid #5ee8d12e;border-right:0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.protocol-experience.protocol-reader .stage-lab-nav button{border-bottom:1px solid #5ee8d124}.protocol-experience.protocol-reader .protocol-principles-grid{grid-template-columns:minmax(0,1fr)}.protocol-experience.protocol-reader .protocol-principles-grid h3{max-width:100%;font-size:39px}.protocol-experience.protocol-reader .protocol-architecture-map{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.protocol-experience.protocol-reader{--protocol-header-offset:124px}.protocol-experience.protocol-reader .service-site-nav>nav{justify-self:stretch;width:100%}.protocol-experience.protocol-reader .protocol-hero-lede,.protocol-experience.protocol-reader :is(.protocol-problem-copy,.protocol-lifecycle-heading,.protocol-comparison-heading,.protocol-architecture-heading){grid-template-columns:minmax(0,1fr);gap:26px}.protocol-experience.protocol-reader .protocol-reader-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.protocol-experience.protocol-reader .protocol-footer{grid-template-columns:minmax(0,1fr)}}@media (max-width:650px){.protocol-experience.protocol-reader{--protocol-reader-gutter:20px}.protocol-experience.protocol-reader .protocol-family-nav{padding-inline:12px}.protocol-experience.protocol-reader .protocol-family-nav>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:100%;display:grid}.protocol-experience.protocol-reader .protocol-family-nav a{letter-spacing:.02em;min-width:0;padding-inline:4px;font-size:10px}.protocol-experience.protocol-reader .protocol-hero{gap:25px}.protocol-experience.protocol-reader .protocol-hero-meta{grid-template-columns:minmax(0,1fr);gap:16px}.protocol-experience.protocol-reader .protocol-hero-meta>small{justify-self:start}.protocol-experience.protocol-reader .protocol-hero-copy .protocol-reader-title{letter-spacing:-.04em;font-size:clamp(30px,9.3cqw,51px);line-height:1.03}.protocol-experience.protocol-reader .protocol-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.protocol-experience.protocol-reader .protocol-stats>span{border-bottom:1px solid var(--line);padding:22px 15px}.protocol-experience.protocol-reader .protocol-reader-index a{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;font-size:13px}.protocol-experience.protocol-reader .protocol-reader-index a>span{grid-column:1/-1}.protocol-experience.protocol-reader :is(.protocol-problem-copy,.protocol-lifecycle-heading,.protocol-comparison-heading,.protocol-architecture-heading)>h2,.protocol-experience.protocol-reader .protocol-capabilities>h2,.protocol-experience.protocol-reader .protocol-cta>h2{letter-spacing:-.035em;font-size:clamp(29px,7.5vw,45px);line-height:1.12}.protocol-experience.protocol-reader .protocol-principles-grid h3{font-size:31px}.protocol-experience.protocol-reader .stage-lab-nav{grid-template-columns:minmax(0,1fr)}.protocol-experience.protocol-reader .stage-lab-nav button{min-height:60px}.protocol-experience.protocol-reader .stage-protocol-definition{padding:21px}.protocol-experience.protocol-reader .stage-letter-key,.protocol-experience.protocol-reader .stage-letter-key.is-protocol-family{grid-template-columns:repeat(2,minmax(0,1fr))}.protocol-experience.protocol-reader .stage-letter-key.is-protocol-family>span:last-child{grid-column:1/-1}.protocol-experience.protocol-reader .stage-lab-visual{grid-template-columns:minmax(0,1fr);gap:35px;padding:30px 21px 36px}.protocol-experience.protocol-reader .stage-core{justify-self:center}.protocol-experience.protocol-reader .stage-rails{display:none}.protocol-experience.protocol-reader .stage-readout h3{font-size:31px}.protocol-experience.protocol-reader .protocol-capability-grid,.protocol-experience.protocol-reader .protocol-comparison-grid{grid-template-columns:minmax(0,1fr)}.protocol-experience.protocol-reader .protocol-capability-grid>article:nth-child(n),.protocol-experience.protocol-reader .protocol-comparison-grid>article{padding:23px}.protocol-experience.protocol-reader .protocol-architecture-map{padding:22px 16px}.protocol-experience.protocol-reader .protocol-architecture-map article{padding:22px}}.protocol-experience.protocol-reader .protocol-reader-title:before{inset-inline:0}.protocol-experience.protocol-reader .protocol-architecture-map article{container-type:inline-size}.protocol-experience.protocol-reader .protocol-architecture-map article>strong{font-size:clamp(20px,10.5cqi,27px)}@media (max-width:480px){.protocol-experience.protocol-reader .stage-letter-key,.protocol-experience.protocol-reader .stage-letter-key.is-protocol-family{grid-template-columns:minmax(0,1fr)}}.protocol-experience.protocol-reader .protocol-reader-index a:last-child{grid-column:1/-1}
