@charset "UTF-8";
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("/assets/instrument-sans-latin.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/ibm-plex-mono-latin.woff2") format("woff2")}
:root{color-scheme:light;--paper:#eef0ee;--ink:#1b1d1b;--muted:#5c615d;--line:#c9ceca;--orange:#ff4b20;--dark:#20231f;--sans:"Instrument Sans","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{overflow-wrap:anywhere;margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #be2b09;outline-offset:6px}::selection{background:var(--orange);color:var(--ink)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip-link{position:absolute;top:-80px;left:20px;z-index:20;background:var(--ink);color:white;padding:16px}.skip-link:focus{top:12px}.header{min-height:100px;padding-block:20px;flex-wrap:wrap;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.brand{font-size:2.8rem;font-weight:700;letter-spacing:-.08em;line-height:1;display:inline-flex;align-items:center}.brand-period{color:var(--orange)}.brand-mark{display:grid;gap:4px;width:24px;margin-right:10px}.brand-mark i{display:block;background:var(--orange);height:5px}.brand-mark i:nth-child(2){width:17px}.brand-mark i:nth-child(3){width:10px}.header-descriptor{font-size:.8125rem;line-height:1.45;max-width:150px;color:var(--muted)}.header nav{display:flex;gap:28px;margin-left:auto;font-size:.875rem}.header nav a:hover,.footer>a:not(.brand):hover{color:#bd2c0d}.button{min-height:54px;padding:0 28px;display:inline-flex;justify-content:center;align-items:center;font-size:.9375rem;font-weight:600;border:1px solid transparent;border-radius:3px;transition:background .2s,transform .2s;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#f5f6f3}.button-dark:hover{background:#373d35}.button-small{min-height:43px;padding-inline:22px;font-size:.875rem}.button-orange{background:var(--orange);color:#171b16}.button-orange:hover{background:#e8431b}.eyebrow,.index-label{font-family:var(--mono);font-size:.75rem;line-height:1.6;font-weight:400;letter-spacing:.055em}.eyebrow{margin:0}.index-label{color:var(--muted)}.hero{padding-top:44px}.hero-kicker{display:flex;justify-content:space-between}.hero-heading{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:start;margin-top:28px}h1{font-size:clamp(5rem,9.2vw,8.3rem);line-height:.99;letter-spacing:-.067em;font-weight:500;margin:0}h1 span{display:inline-block}.hero-intro{width:100%;font-size:1.0625rem;line-height:1.5}.hero-intro p{margin:0 0 18px}.hero-intro .secondary{font-size:1rem;color:var(--muted);line-height:1.55}.text-link{font-size:.875rem;font-weight:600;display:inline-block;border-bottom:1px solid currentColor;padding-block:3px 5px}.text-link:hover{color:#bc300f}.hero-art{margin:24px -12px 0;position:relative}.hero-art picture{display:block;overflow:hidden;aspect-ratio:2.05;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(0deg,transparent,#000 8%,#000 95%,transparent);mask-composite:intersect}.hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 54%}.hero-art figcaption{display:flex;align-items:center;justify-content:space-between;margin:10px 12px 0;gap:20px}.art-caption{font: .75rem/1.6 var(--mono);letter-spacing:.055em}.hero-footnote{margin-top:31px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;font-size:.875rem;color:var(--muted)}
.framework-section{padding-block:112px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:22px 60px}.section-heading>.eyebrow{grid-column:1/-1}h2{font-size:clamp(2.6rem,4.2vw,3.65rem);font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:0}h2 span{color:#777e76}.section-description{font-size:1.0625rem;line-height:1.65;color:var(--muted);max-width:360px;margin:0}.section-heading .section-description{align-self:end;justify-self:end;padding-bottom:3px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:66px}.principles article{border-top:1px solid var(--ink);padding-top:20px}.principles h3{font-size:1.35rem;font-weight:500;line-height:1.25;letter-spacing:-.03em;margin:36px 0 14px}.principles p{color:var(--muted);font-size:1rem;line-height:1.65;margin:0}
.practice-section{background:var(--dark);color:#f0f2ed;padding:90px 0 96px}.practice-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}.practice-heading .eyebrow{color:#f9a18c;margin-bottom:25px}.practice-heading h2{font-size:clamp(2.5rem,4.3vw,3.7rem)}.practice-heading>p{color:#b2b9af;line-height:1.7;font-size:1rem;margin:0 0 5px}.program-demo{border:1px solid #53594e}.demo-controls{display:flex;flex-wrap:wrap;border-bottom:1px solid #53594e}.scenario{flex:1 1 28%;min-width:max-content;display:flex;align-items:center;gap:21px;border:0;border-right:1px solid #53594e;background:transparent;padding:23px 29px;color:#b6bdb2;cursor:pointer;font-size:1rem;text-align:left;transition:background .2s,color .2s}.scenario:last-child{border-right:0}.scenario-number{font: .75rem var(--mono)}.scenario:hover{background:#30362b;color:#fff}.scenario.active{background:var(--orange);color:#171b16}.scenario:focus-visible,.practice-section a:focus-visible{outline-color:#ffab92;outline-offset:-5px}.demo-content{display:grid;grid-template-columns:1fr 1.08fr}.demo-objective{padding:42px;border-right:1px solid #53594e;display:flex;flex-direction:column}.demo-objective .eyebrow{color:#aeb7a7}.demo-objective h3{font-size:clamp(2rem,3.3vw,2.9rem);letter-spacing:-.045em;line-height:1.1;font-weight:400;margin:24px 0}.demo-objective>p:last-of-type{font-size:1rem;color:#b2b9ad;line-height:1.7;max-width:345px;margin:0 0 32px}.boundary{display:flex;gap:16px;border-top:1px solid #53594e;padding-top:23px;margin-top:auto}.boundary-symbol{white-space:nowrap;flex-shrink:0;font:1.2rem var(--mono);letter-spacing:-.22em;color:#ff8765}.boundary .index-label{font-size:.75rem;color:#aeb7a7}.boundary p{font-size:.875rem;line-height:1.6;margin:4px 0 0}.process{padding:18px 38px 25px}.process-list{list-style:none;margin:0;padding:0}.process-list li{padding:20px 0;display:grid;grid-template-columns:35px 1fr 25px;gap:12px;border-bottom:1px solid #444c3f;align-items:start}.process-index{font:.75rem var(--mono);color:#ff9575;padding-top:6px}.process-list h4{font-size:1.125rem;font-weight:500;margin:0 0 6px}.process-list p{font-size:1rem;line-height:1.6;color:#b2b9ad;margin:0}.process-code{color:#798372;font:.75rem var(--mono);text-align:right;padding-top:6px}.loop-return{display:flex;align-items:center;gap:16px;font:.75rem/1.6 var(--mono);color:#aeb7a7;margin:22px 0 0}.loop-line{height:8px;flex:1;border-bottom:1px solid #748169;border-left:1px solid #748169}.demo-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-top:1px solid #53594e;padding:17px 28px;font:.75rem/1.6 var(--mono);color:#aeb7a7}
.control-section{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding-block:115px}.control-intro .eyebrow{margin-bottom:25px}.control-intro .section-description{margin-block:25px}.control-details{padding-top:25px}.control-details article{display:grid;grid-template-columns:25px 1fr;gap:24px;border-top:1px solid var(--line);padding-block:29px}.control-details article>.index-label{padding-top:4px}.control-details h3{font-size:1.45rem;font-weight:500;letter-spacing:-.03em;margin:0 0 13px}.control-details p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}.questions-section{display:grid;grid-template-columns:1fr 1fr;gap:110px;border-top:1px solid var(--line);padding-block:65px 110px}.questions-section .eyebrow{margin-bottom:24px}.questions-section h2{font-size:2.4rem}.questions details{border-bottom:1px solid var(--line);padding-block:24px}.questions details:first-child{padding-top:0}.questions summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-size:1rem;font-weight:500;list-style:none;line-height:1.4}.questions summary::-webkit-details-marker{display:none}.questions summary span{font:1.3rem var(--mono);color:#697163;transition:transform .2s}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{font-size:1rem;line-height:1.7;color:var(--muted);margin:18px 20px 0 0}.closing{background:var(--orange);padding:45px 0 54px}.closing-top{display:flex;justify-content:space-between;gap:20px}.closing .index-label{color:var(--ink)}.closing h2{font-size:clamp(3.5rem,8.5vw,7.6rem);letter-spacing:-.06em;line-height:1.02;margin:49px 0 38px}.closing-bottom{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px}.closing-bottom p{font-size:1rem;line-height:1.55;margin:0}.closing-bottom .button{min-width:165px}.footer{display:flex;align-items:center;gap:32px;padding-block:34px}.footer .brand{font-size:2.25rem}.footer p{font-size:.875rem;color:var(--muted);margin:0}.footer>a:not(.brand){font-size:.875rem;margin-left:auto}.footer>span{font:.75rem var(--mono);color:var(--muted)}
@media(min-width:1550px){.hero-intro{right:20px;top:8px}.hero-heading{margin-top:36px}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.header{gap:28px}.header-descriptor{display:none}.hero-heading{grid-template-columns:minmax(0,1fr) 245px;gap:30px}.hero-intro .secondary{font-size:1rem}.hero-intro p{margin-bottom:12px}h1{font-size:9.4vw}.hero-heading{padding-bottom:0}.hero-footnote{gap:20px}.hero-footnote>.index-label{max-width:180px;text-align:right}.framework-section{padding-block:85px}.principles{gap:28px}.control-section,.questions-section{gap:60px}.demo-objective{padding:32px}.process{padding-inline:26px}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.header{min-height:84px;gap:22px}.brand{font-size:2.45rem}.header nav{gap:20px}.header nav a{font-size:.8125rem}.hero{padding-top:32px}.hero-heading{display:block;margin-top:24px}h1{font-size:11.5vw}.hero-intro{position:static;width:auto;max-width:580px;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;margin-top:26px}.hero-intro .secondary{font-size:1rem}.hero-intro p{margin:0}.hero-intro .text-link{grid-column:1/-1;justify-self:start}.hero-art{margin-top:25px}.hero-art picture{aspect-ratio:2.2}.hero-art figcaption{margin-top:18px}.hero-footnote{font-size:.8125rem;margin-top:25px}.hero-footnote>.index-label{display:none}.section-heading{gap:24px 35px}.section-heading h2{font-size:2.75rem}.section-heading .section-description{font-size:1rem}.principles{gap:24px;margin-top:44px}.principles .index-label{font-size:.75rem;letter-spacing:0}.principles h3{font-size:1.2rem;margin-top:24px}.practice-section{padding-block:65px}.practice-heading{gap:30px}.practice-heading>p{max-width:230px;font-size:1rem}.demo-objective{padding:30px 24px}.demo-objective h3{font-size:2rem}.process{padding-inline:22px}.process-list li{grid-template-columns:25px 1fr;gap:8px}.process-code{display:none}.scenario{padding:21px 22px;gap:14px}.control-section{padding-block:80px;gap:45px}.control-section h2{font-size:2.75rem}.control-details{padding-top:0}.control-details article{gap:14px}.questions-section{gap:40px;padding-bottom:80px}.questions-section h2{font-size:2.15rem}.footer{gap:25px}.footer p{max-width:205px;font-size:.875rem}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{min-height:78px;justify-content:space-between}.header nav{display:none}.brand{font-size:2.3rem}.brand-mark{width:21px}.button-small{min-height:41px;padding-inline:20px}.hero{padding-top:30px}.eyebrow,.index-label{font-size:.75rem}.hero-kicker>.index-label{display:none}h1{font-size:clamp(2.75rem,13.75vw,4.7rem);line-height:1.04;letter-spacing:-.065em}.hero-heading{margin-top:21px}.hero-intro{display:block;margin-top:23px;max-width:370px}.hero-intro>p:first-child{font-size:1.125rem;line-height:1.45;max-width:290px}.hero-intro .secondary{margin-top:15px;font-size:1rem;line-height:1.6}.desktop-break{display:none}.hero-intro .text-link{margin-top:16px;font-size:.875rem}.hero-art{margin:22px -20px 0}.hero-art picture{aspect-ratio:1.6}.hero-art img{object-fit:contain;transform:scale(1.06)}.hero-art figcaption{margin:8px 20px 0;flex-direction:column-reverse;align-items:stretch;gap:18px}.hero-art .button{align-self:stretch}.art-caption{font-size:.75rem;letter-spacing:.015em;text-align:center}.hero-footnote{padding:20px 0;margin-top:23px;font-size:.875rem;line-height:1.6;max-width:none}.framework-section{padding-block:65px}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:23px}.section-heading h2{font-size:2.65rem}.section-heading .section-description{margin-top:24px;font-size:1rem}.principles{grid-template-columns:1fr;gap:29px;margin-top:36px}.principles article{padding-top:17px}.principles .index-label{font-size:.75rem}.principles h3{font-size:1.4rem;margin-top:20px}.principles p{max-width:460px}.practice-section{padding-block:54px}.practice-heading{display:block;margin-bottom:28px}.practice-heading h2{font-size:2.7rem}.practice-heading>p{margin-top:24px;font-size:1rem;max-width:none}.scenario{justify-content:center;padding:20px 8px;font-size:.9375rem;gap:6px}.scenario-number{display:none}.demo-content{grid-template-columns:1fr}.demo-objective{border-right:0;border-bottom:1px solid #53594e;padding:28px 24px}.demo-objective h3{font-size:2.2rem;min-height:0;margin-block:20px}.demo-objective>p:last-of-type{margin-bottom:26px;font-size:1rem}.boundary{padding-top:20px}.process{padding:8px 24px 24px}.process-list li{grid-template-columns:27px 1fr;gap:10px;padding-block:22px}.process-list p{font-size:1rem}.demo-footer{padding:17px 24px;gap:8px;font-size:.75rem}.demo-footer>span{width:100%}.control-section{grid-template-columns:1fr;gap:36px;padding-block:65px}.control-section h2{font-size:2.8rem}.control-intro h2 span br{display:none}.control-details article{grid-template-columns:22px 1fr;padding-block:24px;gap:14px}.control-details h3{font-size:1.35rem}.questions-section{grid-template-columns:1fr;gap:34px;padding-block:50px 60px}.questions-section h2{font-size:2.3rem}.questions-section .eyebrow{margin-bottom:18px}.questions details{padding-block:24px}.questions summary{font-size:1rem}.questions details p{margin-right:0}.closing{padding-block:30px 35px}.closing-top>.index-label{display:none}.closing h2{font-size:clamp(3.25rem,12.6vw,4.7rem);margin:34px 0}.closing-bottom{align-items:center}.closing-bottom p{font-size:.875rem}.closing-bottom .button{min-width:124px;padding-inline:22px}.footer{flex-wrap:wrap;gap:22px 18px;padding-block:28px}.footer .brand{order:0}.footer>a:not(.brand){order:1}.footer>span{order:2}.footer p{order:3;max-width:none;width:100%;font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Let enlarged text reflow inside the layout instead of widening the page. */
.section-heading>*,.hero-heading>*,.demo-content>*,.process-list li>*,.control-section>*,.control-details article>*,.questions-section>*,.boundary>*{min-width:0}
