/* Self-hosted fonts: the WOFF2 files Google Fonts served for DM Sans v17 and Playfair Display v40 (provenance and licences in fonts/README.txt). The descriptors repeat Google's stylesheet so rendering is unchanged; no request leaves this origin. */
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/dm-sans-v17-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/dm-sans-v17-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/playfair-display-v40-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fonts/playfair-display-v40-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fonts/playfair-display-v40-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:600;font-display:swap;src:url(/assets/fonts/playfair-display-v40-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:600;font-display:swap;src:url(/assets/fonts/playfair-display-v40-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Metric-matched local fallbacks: text set in Arial or Georgia before the web fonts arrive occupies the same space, so the font swap does not shift the layout. Roboto stands in for Arial on Android, which has no Arial; the bold face keeps semibold text from re-wrapping. */
@font-face{font-family:'DM Sans Fallback';src:local('Arial'),local('Roboto');size-adjust:104.56%;ascent-override:94.87%;descent-override:29.65%;line-gap-override:0%;unicode-range:U+0000-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2000-206F,U+20A0-20C4,U+2113,U+2122,U+2191,U+2193,U+2212,U+2215,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD}@font-face{font-family:'DM Sans Fallback';font-weight:600 700;src:local('Arial Bold'),local('Arial-BoldMT');size-adjust:104.1%;ascent-override:94.87%;descent-override:29.65%;line-gap-override:0%;unicode-range:U+0000-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2000-206F,U+20A0-20C4,U+2113,U+2122,U+2191,U+2193,U+2212,U+2215,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Fallback';font-style:normal;src:local('Georgia');size-adjust:101.76%;ascent-override:106.33%;descent-override:24.67%;line-gap-override:0%;unicode-range:U+0000-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2000-206F,U+20A0-20C4,U+2113,U+2122,U+2191,U+2193,U+2212,U+2215,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Fallback';font-style:italic;src:local('Georgia Italic'),local('Georgia-Italic');size-adjust:94.52%;ascent-override:114.47%;descent-override:26.56%;line-gap-override:0%;unicode-range:U+0000-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2000-206F,U+20A0-20C4,U+2113,U+2122,U+2191,U+2193,U+2212,U+2215,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD}
:root{--paper:#f3f1e9;--ink:#22221c;--muted:#62665c;--line:#d8d9d0;--green:#284d3d;--yellow:#f4ca3f;--yellow-hover:#e9bf20;--yellow-soft:#f7edc3;--yellow-line:#d5be67;--lime:var(--yellow);--cream:#ebe9dd;--white:#fcfbf6;--serif:'Playfair Display','Playfair Fallback',Georgia,serif;--sans:'DM Sans','DM Sans Fallback',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}p{margin:0 0 1.2em}h1,h2,h3{line-height:1.12;margin:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em}h3{font-weight:550;letter-spacing:-.025em}em{font-weight:500}img{max-width:100%;display:block}small{font-size:11px;letter-spacing:.03em}.skip{position:absolute;left:16px;top:-100px;background:var(--ink);color:white;padding:10px 20px;z-index:99}.skip:focus{top:10px}.site-header{height:100px;margin:0 4.8%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:40px}.brand{display:flex;align-items:center;gap:11px;line-height:1.13;font-size:9px;letter-spacing:.13em;flex-shrink:0}.brand b{font-size:19px;letter-spacing:.19em;font-weight:600}.brand-mark{width:43px;height:43px;border:1px solid var(--ink);border-radius:50%;font-family:var(--serif);font-size:43px;line-height:37px;padding-left:8px;position:relative;letter-spacing:-.1em}.brand-mark>span{position:absolute;font-family:var(--sans);font-size:17px;top:-8px;right:4px}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:12px}.site-header nav a{padding:10px 0;position:relative}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{content:'';position:absolute;bottom:0;left:0;right:0;border-bottom:1px solid var(--green)}.header-cta{font-size:12px;font-weight:550;border:1px solid var(--yellow-line);border-radius:3px;padding:10px 14px;background:var(--yellow);color:var(--ink)}.header-cta span{margin-left:16px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:66px 5% 60px;min-height:730px;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:600;line-height:1.5}.tiny-star{font-size:20px;vertical-align:middle;margin-right:10px}.hero h1{font-size:clamp(70px,6.8vw,112px);line-height:.99;margin:25px 0 28px;letter-spacing:-.06em}.hero h1 em{color:var(--green)}.hero-deck{font-size:14px;line-height:1.8;max-width:400px;color:#676e65}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;padding:14px 19px;border-radius:3px;font-size:12px}.button.dark{background:var(--yellow);color:var(--ink);font-weight:550}.button:hover,.header-cta:hover{background:var(--yellow-hover);color:var(--ink)}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding:6px 0;display:inline-block}.hero-visual{position:relative;min-height:590px;background:radial-gradient(ellipse at center,#f2e3a4 0%,transparent 70%)}.hero-visual:before{content:'';position:absolute;width:450px;height:450px;border:1px solid #dbcf9c;border-radius:50%;left:5%;top:70px}.orbit-label{position:absolute;top:13px;right:10px;font-size:10px;letter-spacing:.15em;line-height:1.6;writing-mode:vertical-rl}.window{position:absolute;width:75%;height:260px;border:1px solid #bdc0b2;background:white;box-shadow:0 18px 35px #26332818;border-radius:5px;overflow:hidden}.window img{width:100%;height:235px;object-fit:cover;object-position:top}.window-bar{height:25px;background:#fcfbf6;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:32px;padding:0 10px;font-size:8px;color:#82867a}.window-bar span{font-size:7px;letter-spacing:2px;color:#a6aa9d}.window-0{left:0;top:60px;transform:rotate(-7deg)}.window-1{right:0;top:165px;transform:rotate(6deg)}.window-2{left:15%;top:315px;transform:rotate(-3deg);height:190px;width:67%}.window-2 img{height:165px}.annotation{position:absolute;bottom:15px;right:10%;font-family:var(--serif);font-size:17px;line-height:1.4;transform:rotate(-5deg)}.annotation span{position:absolute;left:-55px;top:-5px;font-size:45px}.stats-strip{margin:0 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:28px 0;gap:35px}.stats-strip>div{display:flex;align-items:center;gap:18px;padding-right:20px;border-right:1px solid var(--line)}.stats-strip>div:last-child{border:0}.stats-strip strong{font-family:var(--serif);font-size:39px;line-height:1;letter-spacing:-.05em;font-weight:500}.stats-strip span{font-size:10px;color:var(--muted);line-height:1.6;max-width:110px}.section{padding:85px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{font-size:51px;margin-top:15px}.section-heading>p{font-size:13px;max-width:335px;color:var(--muted);margin-bottom:3px}.section-heading>a{font-size:12px;white-space:nowrap}.company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.company-card{border:1px solid var(--line);background:var(--white);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.company-card:hover{transform:translateY(-4px);box-shadow:0 12px 20px #2334280a}.card-main{padding:23px 26px;flex:1;display:block}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.logo{width:45px;height:45px;background:#f1f0e8;border:1px solid #e8e8de;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.logo img{width:31px;height:31px;object-fit:contain}.logo>span{font-size:17px;font-weight:600;letter-spacing:-.07em}.logo.large{width:62px;height:62px}.logo.large img{width:45px;height:45px}.card-arrow{font-size:19px;color:#717a6d}.card-main>small{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.card-main h3{font-size:27px;margin:8px 0 14px}.card-main p{font-size:12px;color:#71766b;line-height:1.7;margin:0;min-height:61px}.card-bottom{border-top:1px solid #e7e6dc;margin:0 26px;padding:12px 0;font-size:9px;display:flex;align-items:center;gap:6px;color:var(--muted)}.card-bottom>span:last-child{margin-left:auto}.status-dot{width:5px;height:5px;background:#adae9f;border-radius:50%}.status-dot.ready{background:#73974f}.featured-section>.text-link{margin-top:30px}.motion-section{background:var(--green);color:var(--white);padding:70px 5% 80px}.motion-section .section-heading p{color:#bdc9b9}.motion-section .eyebrow{color:#c1d1a0}.motion-section h2{font-size:52px}.motion-section h2 em{color:var(--lime)}.motion-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px}.motion-grid>a{border-top:1px solid #648371;border-right:1px solid #648371;padding:21px 25px 0}.motion-grid>a:first-child{padding-left:0}.motion-grid>a:last-child{border-right:0}.motion-number{font-size:10px;color:#abbc9d}.motion-grid h3{font-family:var(--serif);font-size:34px;line-height:1.1;margin:24px 0 22px}.motion-grid p{font-size:12px;max-width:190px;line-height:1.7;color:#bdc9b9;min-height:62px}.motion-count{display:block;font-size:10px;color:var(--lime);margin-top:25px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:11%}.editorial h2{font-size:49px;margin:20px 0 25px}.editorial p{font-size:13px;color:var(--muted);max-width:390px}.editorial .button{margin-top:15px}.editorial-list{align-self:center}.editorial-list>a{display:flex;align-items:center;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}.editorial-list>a:first-child{border-top:1px solid var(--line)}.editorial-list>a>span{font-size:10px;color:var(--muted)}.editorial-list h3{font-family:var(--serif);font-size:23px;margin-bottom:10px}.editorial-list p{font-size:11px;margin:0}.research-note{margin:0 5% 70px;padding:28px 30px;background:var(--yellow-soft);border:1px solid var(--yellow-line);display:flex;gap:25px;align-items:center}.research-note h3{font-size:15px;margin-bottom:9px}.research-note p{font-size:12px;color:#625d43;margin:0;max-width:790px}.research-note>a{margin-left:auto;font-size:11px;white-space:nowrap}.research-note .tiny-star{font-size:30px;margin:0}.research-note p+p{margin-top:12px}footer{border-top:1px solid var(--line);margin:0 5%;padding:40px 0 20px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:35px}.footer-top p{font-family:var(--serif);font-size:18px;line-height:1.5;margin:0}.footer-top>a:last-child{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;font-size:9px;color:var(--muted)}.page-intro{padding:66px 5% 52px}.page-intro h1{font-size:68px;max-width:1000px;margin:22px 0 25px}.page-intro>p{font-size:15px;max-width:680px;color:var(--muted);margin:0}.page-intro h1 em{color:var(--green)}.directory{padding:0 5% 75px}.filters{display:flex;gap:15px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.search{display:flex;gap:12px;align-items:center;flex:1;background:var(--white);border:1px solid var(--line);border-radius:3px;padding:8px 14px}.search span{font-size:22px}.search input{width:100%;border:0;background:transparent;outline:none;font-size:12px}.filters select,.compare-controls select{background:var(--white);border:1px solid var(--line);color:var(--ink);border-radius:3px;padding:12px 35px 12px 12px;font-size:12px}.directory-summary{display:flex;justify-content:space-between;margin:23px 0;font-size:11px;color:var(--muted)}.plain-button{background:none;border:0;color:inherit;cursor:pointer;font-size:11px}.company-card[hidden]{display:none}.tag{display:inline-block;border:1px solid #c7d1bd;background:#ecf0e3;padding:4px 9px;border-radius:3px;font-size:10px;margin:3px 4px 3px 0}.tag:hover{background:var(--yellow-soft);border-color:var(--yellow-line);color:var(--ink)}.article-breadcrumb{padding:28px 5% 0;display:flex;gap:12px;font-size:10px;color:var(--muted)}.case-hero{padding:35px 5% 40px;max-width:1250px}.case-overline{display:flex;align-items:center;gap:14px;font-size:11px;color:var(--muted)}.research-badge{margin-left:8px;background:var(--yellow-soft);color:var(--ink);border:1px solid var(--yellow-line);border-radius:3px;padding:3px 8px;font-size:9px}.case-hero h1{font-size:68px;margin:27px 0 24px;line-height:1.04;max-width:1030px}.case-hero h1 span{display:block;font-size:44px;margin-top:15px;line-height:1.2;color:var(--green);font-style:italic;letter-spacing:-.035em}.case-summary{font-size:16px;line-height:1.8;max-width:850px;color:#6a7167}.case-meta{display:flex;gap:24px;border-top:1px solid var(--line);margin-top:27px;padding-top:16px;font-size:10px;color:var(--muted)}.case-meta a{margin-left:auto;color:var(--green)}.case-layout{display:grid;grid-template-columns:220px minmax(0,830px);gap:65px;padding:25px 5% 20px}.contents{position:sticky;top:25px;align-self:start;display:flex;flex-direction:column;gap:11px;font-size:10px;line-height:1.5;border-top:1px solid var(--line);padding-top:20px;max-height:90vh;overflow:auto}.contents .eyebrow{margin-bottom:12px}.contents a{color:#7a8174}.contents a:hover{color:var(--green)}.case-content{min-width:0}.reading-note{border-left:3px solid var(--yellow);padding:3px 0 3px 17px;font-size:11px;color:var(--muted);margin-bottom:32px}.reading-note b{color:var(--ink);font-size:11px}.reading-note p{margin:7px 0 0}.epistemic{font-size:.73em;line-height:1.6;letter-spacing:.04em;text-transform:uppercase;background:#e8eddb;color:#56613c;border:1px solid #d9e2c6;border-radius:3px;padding:1px 4px;vertical-align:1px;margin-right:4px;white-space:nowrap}.citation{font-size:.75em;color:#5e7e43;vertical-align:super;white-space:nowrap;margin-left:2px}.case-facts{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#eeede3;margin-bottom:45px}.case-facts>div{padding:17px 21px;border-bottom:1px solid var(--line)}.case-facts>div:nth-child(odd){border-right:1px solid var(--line)}.case-facts>div:last-child,.case-facts>div:nth-last-child(2){border-bottom:0}.case-facts span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.case-facts p{font-size:12px;line-height:1.65;margin:8px 0 0}.case-section{padding:35px 0 40px;border-bottom:1px solid var(--line)}.case-section>.eyebrow{color:#7a8b68;display:inline-block;margin-bottom:16px}.case-section h2{font-size:38px;margin-bottom:25px;letter-spacing:-.035em}.case-section p{font-size:14px;line-height:1.95;color:#4d574b}.timeline{border-left:1px solid #c3cbbb;margin:25px 0 5px 6px;padding-left:24px}.timeline>div{padding-bottom:25px;position:relative}.timeline>div:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 1px #a88c26;position:absolute;left:-28px;top:8px}.timeline time{font-size:10px;letter-spacing:.06em;color:#7c866f}.timeline h3{font-size:17px;margin:8px 0 10px}.timeline p{font-size:12px;margin:0}.economics-table{border-top:1px solid var(--line)}.economics-table>div{display:grid;grid-template-columns:130px 1fr;gap:25px;padding:16px 0;border-bottom:1px solid var(--line)}.economics-table strong{font-size:11px;font-weight:550}.economics-table p{font-size:12px;margin:0}.person-card{display:flex;gap:20px;border-top:1px solid var(--line);padding:23px 0}.person-card>img{width:70px;height:70px;border-radius:50%;object-fit:cover;flex-shrink:0;filter:grayscale(.4)}.person-monogram{border-radius:50%;background:#dee4d2;color:#556447;display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0;font-family:var(--serif);font-size:17px}.person-card h3{font-size:19px;margin-bottom:7px}.person-card small{font-size:10px;color:var(--muted);display:block;margin-bottom:12px}.person-card p{font-size:12px;margin:0 0 10px}.people-cards .person-monogram{width:60px;height:60px}blockquote{font-family:var(--serif);font-size:28px;line-height:1.45;letter-spacing:-.02em;margin:40px 0;padding:35px;background:#e7eadc;border-left:2px solid #9eae82}blockquote cite{display:block;font-family:var(--sans);font-size:10px;letter-spacing:0;font-style:normal;margin-top:18px;color:var(--muted)}.critique{background:#e8ebde;margin:25px -25px 0;padding:35px 25px}.critique>div:not(.eyebrow){padding-top:24px;border-top:1px solid #ced5c1;margin-top:22px}.critique h3{font-size:16px;margin-bottom:17px}.critique p{font-size:13px}.muted{font-size:12px!important;color:var(--muted)!important}.evidence-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px}.evidence-gallery figure{margin:0;border:1px solid var(--line);border-radius:3px;background:var(--white);overflow:hidden}.evidence-gallery img{width:100%;height:220px;object-fit:cover;object-position:top;background:#e2e4da}.evidence-gallery figure:only-child{grid-column:1/-1}.evidence-gallery figure:only-child img{height:350px}.evidence-gallery figcaption{font-size:10px;color:var(--muted);padding:12px;line-height:1.6}.evidence-gallery figcaption span,.evidence-gallery figcaption a{display:block;margin-top:5px}.evidence-gallery figcaption a{color:var(--green)}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:14px;font-weight:500;list-style:none;padding-right:25px;position:relative}summary:after{content:'+';position:absolute;right:3px;top:0;font-size:20px;font-weight:400}details[open] summary:after{content:'−'}details>p{margin:15px 0 0}.sources ol{padding-left:24px}.sources li{padding:13px 0;border-bottom:1px solid #e0e1d5;scroll-margin-top:30px;font-size:12px}.sources li>a{color:var(--green);font-weight:550}.sources li>small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.sources li>p{font-size:11px;line-height:1.7;margin:7px 0 0}.open-questions{background:#ebe8df;padding:22px;margin-top:25px}.open-questions h3{font-size:15px;margin-bottom:15px}.open-questions p{font-size:12px;margin-bottom:12px}.related{border-top:1px solid var(--line)}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0 55px}.topic-grid>a{padding:25px;border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;justify-content:space-between;gap:25px}.topic-grid h3{font-size:21px}.topic-grid span{font-size:11px;color:var(--muted)}.pattern-index{padding-top:10px}.pattern-index h2{font-size:35px}.framework-grid{padding:0 10% 70px}.framework-grid>article{display:grid;grid-template-columns:100px 1fr;gap:30px;border-top:1px solid var(--line);padding:35px 0}.step-number{font-family:var(--serif);font-size:55px;color:#aab29c;letter-spacing:-.05em}.framework-grid h2{font-size:30px;margin:9px 0 15px}.framework-grid p{font-size:14px;color:var(--muted);max-width:750px;margin:0}.framework-grid small{color:var(--muted);font-size:9px;letter-spacing:.12em}.people-index{display:grid;grid-template-columns:1fr 1fr;gap:20px}.people-index>a{display:flex;align-items:center;gap:20px;padding:25px;background:var(--white);border:1px solid var(--line)}.people-index h3{font-size:20px}.people-index p{font-size:11px;margin:6px 0;color:var(--muted)}.people-index small{font-size:10px;color:var(--green)}.people-index>a>span:last-child{margin-left:auto}.person-detail{max-width:850px;margin:0 auto;padding:20px 30px 80px}.person-detail article{border-top:1px solid var(--line);padding:30px 0}.person-detail .eyebrow{display:block;margin-bottom:25px}.person-detail p{font-size:15px;color:#5d6858}.comparison{padding:0 5% 80px}.compare-controls{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.compare-controls label{font-size:12px}.compare-controls select{min-width:240px}.compare-controls .plain-button{margin-left:auto}#compare-tags{display:flex;gap:10px;margin:25px 0}#compare-tags button{cursor:pointer;background:var(--yellow-soft);color:var(--ink);border:1px solid var(--yellow-line);border-radius:4px;padding:7px 12px;font-size:11px}#comparison-table{overflow-x:auto}#comparison-table table{width:100%;border-collapse:collapse;min-width:600px;font-size:12px;table-layout:fixed}#comparison-table th,#comparison-table td{padding:18px;border:1px solid var(--line);text-align:left;vertical-align:top}#comparison-table th{background:var(--yellow-soft);font-family:var(--serif);font-weight:500;font-size:21px}#comparison-table th:first-child{width:160px;font-family:var(--sans);font-size:11px}#comparison-table td{line-height:1.8;background:var(--white)}#comparison-table td:first-child{font-size:10px;font-weight:600;background:var(--paper)}#comparison-table a{color:var(--green)}.comparison>.muted{margin-top:20px}.method-content{max-width:850px;margin:0 auto 80px;padding:0 30px}.method-content h2{font-size:33px;margin:35px 0 20px}.method-content p,.method-content li{font-size:14px;line-height:1.9;color:#596451}.method-content ul{padding-left:20px}.source-library{margin:0 10% 75px}.source-library summary{display:flex;gap:30px;align-items:center}.source-library summary span{font-size:19px;font-family:var(--serif)}.source-library summary small{color:var(--muted);margin-left:auto}.source-library ol{font-size:12px}.source-library li{margin:10px 0}.source-library li small{display:block;color:var(--muted);font-size:9px}.page-intro+.section{padding-top:15px}
@media(min-width:1500px){.site-header,footer{max-width:1380px;margin-left:auto;margin-right:auto}.hero,.section,.motion-section,.page-intro,.directory,.case-hero,.case-layout,.article-breadcrumb,.comparison{padding-left:max(5%,calc((100% - 1380px)/2));padding-right:max(5%,calc((100% - 1380px)/2))}.case-hero{max-width:none}.hero{min-height:780px}.hero-visual{max-width:640px}.hero h1{font-size:115px}.stats-strip,.research-note{max-width:1380px;margin-left:auto;margin-right:auto}.case-layout{grid-template-columns:230px minmax(0,920px)}}
@media(max-width:1050px){.site-header{gap:20px}.site-header nav{gap:18px}.header-cta{display:none}.hero{min-height:670px;padding-top:50px}.hero h1{font-size:79px}.hero-actions{gap:15px;align-items:flex-start;flex-direction:column}.hero-visual{min-height:540px}.hero-visual:before{width:330px;height:330px}.window{height:210px;width:90%}.window img{height:185px}.window-0{top:80px}.window-1{top:200px}.window-2{top:340px;left:7%;height:160px}.window-2 img{height:135px}.annotation{bottom:-10px;font-size:15px}.stats-strip{gap:15px}.stats-strip>div{gap:12px}.stats-strip strong{font-size:30px}.stats-strip span{font-size:9px}.section-heading h2,.editorial h2{font-size:43px}.card-main{padding:20px}.card-bottom{margin:0 20px}.card-main h3{font-size:24px}.motion-grid>a{padding:20px 18px 0}.motion-grid h3{font-size:29px}.case-layout{grid-template-columns:180px minmax(0,1fr);gap:35px}.case-hero h1{font-size:58px}.case-hero h1 span{font-size:38px}.case-section h2{font-size:32px}.topic-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.site-header{height:82px;margin:0 6%;gap:10px}.brand{font-size:8px;gap:8px}.brand b{font-size:16px}.brand-mark{width:36px;height:36px;font-size:36px;line-height:30px;padding-left:7px}.site-header nav{gap:17px;font-size:10px}.site-header nav a:nth-child(3),.site-header nav a:nth-child(4){display:none}.hero{grid-template-columns:1fr;padding:42px 6% 40px;gap:0}.hero h1{font-size:83px;margin:23px 0}.hero-deck{font-size:13px;max-width:440px}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-visual{min-height:410px;max-width:540px;width:100%;margin:30px auto 0}.window{width:66%;height:170px}.window img{height:145px}.window-0{top:25px;left:0}.window-1{top:130px;right:0}.window-2{top:250px;left:12%;width:62%;height:130px}.window-2 img{height:105px}.hero-visual:before{width:280px;height:280px;top:40px;left:15%}.orbit-label{top:20px;font-size:8px}.annotation{bottom:0;right:0;font-size:13px}.annotation span{left:-37px;font-size:30px}.stats-strip{margin:0 6%;grid-template-columns:1fr 1fr;gap:22px;padding:25px 0}.stats-strip>div:nth-child(2){border:0}.stats-strip strong{font-size:35px}.stats-strip span{font-size:10px;max-width:120px}.section{padding:58px 6%}.section-heading{display:block;margin-bottom:27px}.section-heading h2{font-size:40px;margin-top:14px}.section-heading>p{margin-top:22px;max-width:none}.company-grid{grid-template-columns:1fr 1fr;gap:12px}.card-main{padding:19px}.card-top{margin-bottom:23px}.card-main h3{font-size:25px}.card-main p{font-size:11px;min-height:90px}.card-main small{font-size:8px}.card-bottom{margin:0 18px;font-size:8px;flex-wrap:wrap}.card-bottom>span:last-child{display:none}.motion-section{padding:50px 6%}.motion-section h2{font-size:42px}.motion-grid{grid-template-columns:1fr 1fr;gap:30px 0}.motion-grid>a:nth-child(2){border-right:0}.motion-grid>a:nth-child(3){padding-left:0}.motion-grid p{max-width:200px}.motion-grid h3{font-size:33px}.editorial{grid-template-columns:1fr;gap:35px}.editorial h2{font-size:40px}.editorial p{max-width:none}.research-note{margin:0 6% 50px;padding:24px;display:block}.research-note>.tiny-star{display:none}.research-note>a{display:inline-block;margin-top:20px}.footer-top{align-items:start;gap:25px;flex-wrap:wrap}.footer-top p{font-size:15px}.footer-top>a:last-child{flex-basis:100%}.footer-bottom{font-size:8px;gap:15px;flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}.page-intro{padding:45px 6% 35px}.page-intro h1{font-size:clamp(34px,12vw,47px);line-height:1.1;overflow-wrap:break-word}.page-intro>p{font-size:13px}.directory{padding:0 6% 55px}.filters{flex-wrap:wrap;gap:10px}.search{flex-basis:100%}.filters select{width:calc(50% - 5px);padding:10px;font-size:10px}.directory-summary{font-size:10px}.article-breadcrumb{padding:24px 6% 0}.case-hero{padding:25px 6% 30px}.case-overline{font-size:10px;gap:10px;flex-wrap:wrap}.logo.large{width:48px;height:48px}.logo.large img{width:35px;height:35px}.research-badge{font-size:8px;margin-left:auto}.case-hero h1{font-size:50px}.case-hero h1 span{font-size:31px;margin-top:16px}.case-summary{font-size:14px}.case-meta{font-size:9px;gap:15px;flex-wrap:wrap}.case-meta a{margin-left:0}.case-layout{display:block;padding:10px 6% 30px}.contents{position:relative;top:0;max-height:none;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px 18px;border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:28px}.contents .eyebrow{flex-basis:100%;margin:0}.contents a{font-size:9px}.case-facts>div{padding:14px}.case-facts p{font-size:11px}.case-section{padding:28px 0}.case-section h2{font-size:33px}.case-section p{font-size:13px}.economics-table>div{grid-template-columns:90px 1fr;gap:15px}.economics-table p{font-size:11px}.person-card{gap:14px}.person-card>img,.people-cards .person-monogram{width:45px;height:45px}.person-card h3{font-size:17px}.person-card p{font-size:12px}.critique{margin:25px -12px 0;padding:28px 20px}.critique p{font-size:12px}blockquote{padding:25px;font-size:24px}.evidence-gallery{grid-template-columns:1fr}.evidence-gallery img{height:230px}.related .section-heading>a{display:inline-block;margin-top:20px}.topic-grid{grid-template-columns:1fr 1fr;gap:12px}.topic-grid>a{padding:20px}.topic-grid h3{font-size:18px}.pattern-index h2{font-size:29px}.framework-grid{padding:0 6% 40px}.framework-grid>article{grid-template-columns:45px 1fr;gap:18px;padding:25px 0}.step-number{font-size:34px}.framework-grid h2{font-size:26px}.framework-grid p{font-size:12px}.people-index{grid-template-columns:1fr;gap:12px}.people-index>a{padding:20px}.comparison{padding:0 6% 50px}.compare-controls{flex-wrap:wrap;gap:12px}.compare-controls select{width:100%;order:2}.compare-controls .plain-button{margin-left:auto}#compare-tags{flex-wrap:wrap}#comparison-table table{font-size:11px;min-width:660px}#comparison-table th,#comparison-table td{padding:15px}#comparison-table th{font-size:20px}.method-content{padding:0 6%;margin-bottom:55px}.method-content h2{font-size:29px}.method-content p,.method-content li{font-size:13px}.source-library{margin:0 6% 55px}.source-library summary span{font-size:18px}}
@media(max-width:420px){.hero h1{font-size:72px}.hero-actions{gap:14px}.button{font-size:10px;gap:15px;padding:13px 14px}.text-link{font-size:10px}.company-grid{grid-template-columns:1fr}.card-main p{min-height:0}.card-main h3{font-size:28px}.card-bottom>span:last-child{display:block}.card-top{margin-bottom:20px}.case-facts{grid-template-columns:1fr}.case-facts>div:nth-child(odd){border-right:0}.case-facts>div:nth-last-child(2){border-bottom:1px solid var(--line)}.topic-grid{grid-template-columns:1fr}.stats-strip>div{gap:10px}.stats-strip strong{font-size:32px}.stats-strip span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.contents,.related,.case-tags,.header-cta,footer,.hero-visual,.compare-controls{display:none!important}body{background:white;font-size:11pt}.case-layout{display:block;padding:0}.case-hero{padding:0}.case-section{break-inside:avoid}.case-section p{font-size:10pt}a{color:#222}.sources a:after{content:' (' attr(href) ')';font-size:8pt}.evidence-gallery img{height:auto}.case-hero h1{font-size:30pt}.case-hero h1 span{font-size:22pt}}
.framework-map{background:var(--yellow-soft);border:1px solid var(--yellow-line);padding:18px 22px;margin:-15px 0 35px}.framework-map summary{font-size:12px}.framework-map .muted{margin-top:16px}.framework-map ol{padding-left:20px;font-size:11px}.framework-map li{padding:8px 0;border-bottom:1px solid var(--line)}.framework-map li>span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.framework-map li>span a{color:var(--green)}
.photo-credit{display:block;font-size:9px;color:var(--muted);margin-top:8px}.synthesis p>a{border-bottom:1px solid #a6b596;color:var(--green)}.synthesis h2{margin-top:50px}

.person-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 64px}.person-detail .person-avatar{width:140px;height:140px;border-radius:12px;float:right;margin:0 0 24px 32px}.person-detail article{display:flow-root}

.archive-company{padding-bottom:70px;margin-bottom:64px;border-bottom:1px solid var(--line)}.visual-archive .evidence-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-archive figure img{height:280px;object-fit:cover;object-position:top}.archive-company h2 a{text-decoration:none}@media(max-width:760px){.visual-archive .evidence-gallery{grid-template-columns:1fr}.visual-archive figure img{height:270px}}

.framework-examples{margin-top:18px}.framework-examples>small{display:block;font-size:9px;letter-spacing:.1em;margin-bottom:6px;color:var(--muted)}

.people-search-row{display:flex;align-items:center;gap:24px;margin-bottom:28px}.people-search-row .search{max-width:650px}.people-search-row>span{font-size:11px;color:var(--muted);white-space:nowrap}.people-index [hidden]{display:none}

.classification-note{font-size:10px;line-height:1.6;color:var(--muted);max-width:780px;margin:10px 0 0}

/* GTM Unpacked identity */
.brand b{font-size:16px;letter-spacing:.14em}.brand-box{border:0;padding:0;display:grid;place-items:center}.brand-box img{width:100%;height:100%}.case-hero h1{font-size:clamp(40px,5vw,68px)}.case-thesis{font-family:var(--serif);font-size:24px;line-height:1.45;max-width:860px;color:var(--green);margin:24px 0 18px}.case-thesis:empty{display:none}@media(max-width:760px){.brand b{font-size:13px}.case-hero h1{font-size:40px}.case-hero h1 span{font-size:30px}.case-thesis{font-size:20px}}
.method-framework{padding-bottom:50px;margin-bottom:42px;border-bottom:1px solid var(--line)}.method-framework>.eyebrow{color:var(--green);margin-top:10px}.method-framework>h2{font-size:46px;margin:18px 0 25px}.method-framework>h2 em{color:var(--green)}.method-framework .method-lead{font-size:16px;line-height:1.9}.method-framework p a,.method-reading a{border-bottom:1px solid #a9b69a}.method-book{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center;padding:28px;background:var(--yellow-soft);border:1px solid var(--yellow-line);margin:32px 0 40px}.method-book-cover{display:block}.method-book-cover img{width:220px;height:auto;mix-blend-mode:multiply}.method-book h3{font-family:var(--serif);font-size:28px;line-height:1.25;margin:12px 0 16px}.method-book p{font-size:12px;line-height:1.8;margin-bottom:10px}.method-subheading{font-family:var(--serif);font-weight:500;font-size:29px;line-height:1.25;margin:40px 0 20px;letter-spacing:-.03em}.method-table-wrap{margin:26px 0 40px;border:1px solid var(--line);background:var(--white)}.method-table{width:100%;border-collapse:collapse;table-layout:fixed}.method-table caption{text-align:left;font-size:10px;letter-spacing:.05em;padding:16px 18px;background:var(--yellow-soft);color:var(--ink)}.method-table thead{text-align:left;background:var(--green);color:var(--white)}.method-table th,.method-table td{padding:17px 19px;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.65;font-size:12px}.method-table thead th{font-size:11px}.method-table th:first-child{width:36%}.method-table tbody th{text-align:left;font-weight:500;border-right:1px solid var(--line)}.method-table tbody th small{display:block;font-size:9px;letter-spacing:.06em;margin-bottom:5px;color:var(--muted)}.method-table tbody td{color:#596451}.method-table tbody tr:last-child>*{border-bottom:0}.method-motion-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 40px}.method-motion-grid>a{display:block;padding:24px;background:var(--green);color:var(--white);border:1px solid var(--green)}.method-motion-grid>a:hover{background:#1d3f30}.method-motion-grid small{font-size:9px;letter-spacing:.1em;color:var(--lime)}.method-motion-grid h4{font-family:var(--serif);font-size:24px;line-height:1.25;font-weight:500;margin:16px 0}.method-motion-grid p{font-size:12px;line-height:1.75;color:#d3dccd;margin:0}.method-constraints{margin:26px 0 38px}.method-constraints>div{display:grid;grid-template-columns:155px 1fr;gap:25px;padding:20px 0;border-top:1px solid var(--line)}.method-constraints>div:last-child{border-bottom:1px solid var(--line)}.method-constraints dt{font-weight:600;font-size:13px;color:var(--green)}.method-constraints dd{margin:0;font-size:13px;line-height:1.8;color:#596451}.method-boundary{padding:25px 28px;background:var(--yellow-soft);border-left:3px solid var(--yellow);margin:30px 0}.method-boundary h4{font-family:var(--serif);font-size:23px;font-weight:500;line-height:1.3;margin:0 0 16px}.method-boundary p{font-size:12px;margin:0;line-height:1.85}.method-reading{padding-top:10px}.method-reading h3{font-family:var(--serif);font-size:29px;font-weight:500;line-height:1.3;margin:24px 0 18px}.method-reading ol{padding-left:20px}.method-reading li{padding:7px 0 13px;font-size:12px;line-height:1.65}.method-reading li span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.method-reading .edition-note{font-size:11px;color:var(--muted);margin-top:20px}@media(max-width:760px){.method-framework>h2{font-size:36px}.method-framework .method-lead{font-size:14px}.method-book{grid-template-columns:1fr;padding:24px;gap:15px}.method-book-cover img{width:190px;margin:auto}.method-book h3{font-size:27px}.method-subheading{font-size:26px}.method-table th,.method-table td{padding:13px 12px;font-size:11px}.method-table th:first-child{width:43%}.method-motion-grid{grid-template-columns:1fr}.method-motion-grid>a{padding:24px}.method-constraints>div{grid-template-columns:1fr;gap:8px}.method-constraints dd{font-size:12px}.method-boundary{padding:22px}.method-reading h3{font-size:26px}}

/* Primary yellow sampled from the supplied cover photograph, not an official brand swatch. Warm cream remains the reading surface. */
::selection{background:var(--yellow);color:var(--ink)}
.hero .tiny-star{background:var(--yellow);color:var(--ink);border-radius:50%;padding:0 .18em}
.motion-section .eyebrow,.motion-number{color:var(--yellow-soft)}
.motion-section a:focus-visible,.method-motion-grid>a:focus-visible{outline-color:var(--yellow)}
.method-book .eyebrow,.method-book h3,.method-boundary h4{color:var(--ink)}
.method-book p,.method-boundary p{color:#625d43}

.hero-framework-link{display:block;font-size:11px;line-height:1.8;color:var(--muted);max-width:410px;margin-top:24px}.hero-framework-link strong{color:var(--ink);font-weight:600;border-bottom:3px solid var(--yellow)}

/* Selected identity: 01 / Engine Block */
.brand{gap:10px;font-family:var(--serif);font-size:24px;font-weight:700;letter-spacing:-.055em;line-height:1.1}.brand-engine{display:block;width:64px;height:36px;object-fit:contain;flex:0 0 64px}.brand-wordmark{white-space:nowrap}.footer-top .brand{font-size:24px}@media(max-width:760px){.brand,.footer-top .brand{font-size:22px}.brand-engine{width:55px;height:32px;flex-basis:55px}}@media(max-width:620px){.site-header{height:auto;min-height:112px;padding:18px 0 12px;flex-wrap:wrap;gap:12px}.site-header nav{margin-left:0;flex-basis:100%;justify-content:space-between;gap:12px;font-size:10px}.site-header nav a:nth-child(n){display:block;padding:5px 0}.brand{font-size:24px}.brand-engine{width:58px;height:34px;flex-basis:58px}}

@media(max-width:420px){.motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.motion-grid>a{min-width:0;padding-right:12px}.motion-grid>a:nth-child(even){padding-left:16px}.motion-grid h3{font-size:29px}}

/* Launch fixes. The comparison area keeps its space while app.js fetches the data, so the page below it does not jump. Form controls are 16px on phones because iOS Safari zooms the page when a smaller control is focused; the two directory filters stack once they no longer fit side by side. */
#comparison-table{min-height:100vh}#compare-tags{min-height:34px}
@media(max-width:760px){.search input,.filters select,.compare-controls select{font-size:16px}}
@media(max-width:420px){.filters select{width:100%}}
/* Launch content markup. A kicker is the small label inside an h1 or h2: it is drawn exactly like the eyebrow it replaces, and .vh hides the separator that keeps kicker and line apart for anything that reads the heading as text. */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.kicker,.row-label,.grid-heading{font-family:var(--sans);font-size:10px;font-weight:600;font-style:normal;letter-spacing:.14em;line-height:1.5;text-transform:uppercase}.kicker{display:block}
.page-intro h1.has-kicker{margin-top:0}.page-intro .kicker{margin-bottom:22px}.section-heading h2.has-kicker{margin-top:0}.section-heading .kicker{margin-bottom:15px}.case-section .kicker{color:#7a8b68;margin-bottom:16px}.case-section h2.has-kicker{padding-top:6px}
/* A research section keeps its framework-step link. It sits on the kicker's line, before it, so the two read as one label instead of two stacked ones. */
.case-section>.step-link{float:left;margin:6px .8em 0 0}.case-section>.step-link:after{content:'·';margin-left:.8em;color:#a6b093}.case-section>.step-link:hover{color:var(--green)}
/* Key facts of a company page: a definition list in the place and the look of the facts grid. Rows marked .wide span both columns. */
.key-facts{margin:0 0 45px;gap:1px;background:var(--line)}.case-facts.key-facts>div{border:0;background:#eeede3}.key-facts>.wide{grid-column:1/-1}.key-facts dt{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.key-facts dd{font-size:12px;line-height:1.65;margin:8px 0 0}.key-facts dd a,.case-overline a,.page-intro>p a,.person-detail p>a:not(.citation){border-bottom:1px solid #a9b69a}.key-facts dd a:hover,.case-overline a:hover,.page-intro>p a:hover,.person-detail p>a:not(.citation):hover{color:var(--green);border-color:var(--green)}.case-summary strong{color:var(--ink);font-weight:600}
/* Rows of chips with a small label, and the links under the related cards. A chip without a page of its own (.is-static) is outlined, not filled, and does not react to the pointer. */
.tag-row{margin:22px 0 0;font-size:12px;line-height:1.5}.row-label{display:inline-block;margin:0 8px 0 0}.tag-row.stacked .row-label{display:block;margin:0 0 10px}.tag.is-static,.tag.is-static:hover{background:transparent;border-color:#c7d1bd;color:inherit;cursor:default}
.featured-section .tag-row{margin-top:26px}.motion-section .tag-row{margin-top:42px}.motion-section .row-label{color:var(--yellow-soft)}.motion-section .tag{background:transparent;border-color:#648371;color:var(--white)}.motion-section .tag:hover{background:var(--yellow-soft);border-color:var(--yellow-line);color:var(--ink)}
.case-nav{margin-top:30px}.case-nav p{margin:0 0 14px}.case-nav .text-link{margin-right:18px}.pattern-index .tag-row{margin:0 0 38px}
.grid-heading{margin:0 0 14px}.directory-summary .grid-heading{font:inherit;letter-spacing:normal;text-transform:none;margin:0}.section>.tag-row:first-child{margin:0 0 26px}
.research-note h2{font-family:var(--sans);font-size:15px;font-weight:550;letter-spacing:-.025em;margin-bottom:9px}
/* The definition block of the four motion pages. */
.topic-definition{margin:0 5% 6px;padding:30px 34px;max-width:920px;background:var(--white);border:1px solid var(--line)}.topic-definition h2{font-size:30px;margin-bottom:16px}.topic-definition p{font-size:14px;line-height:1.8;color:#596451;margin:0 0 14px}.topic-definition .tag-row{font-size:13px;margin:0 0 18px}.topic-definition p:last-child{margin-bottom:0}.topic-definition .text-link{margin-right:18px}.topic-definition+.section{padding-top:42px}
/* The footer's link columns. Each link is tall enough to tap. */
.footer-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;border-top:1px solid var(--line);padding:28px 0 32px}.footer-nav ul{list-style:none;margin:0;padding:0}.footer-nav .row-label{display:block;margin:0 0 8px;color:var(--muted)}.footer-nav a{display:block;font-size:13px;line-height:1.4;padding:6px 0}.footer-nav a:hover{color:var(--green)}
@media(min-width:1500px){.topic-definition{margin-left:max(5%,calc((100% - 1380px)/2))}}
@media(max-width:760px){.key-facts dd{font-size:11px}.topic-definition{margin:0 6% 4px;padding:22px}.topic-definition h2{font-size:25px}.topic-definition p{font-size:13px}.footer-nav{grid-template-columns:1fr 1fr;gap:24px 20px}.section-heading .kicker{margin-bottom:14px}.motion-section .tag-row{margin-top:34px}}
/* Links in the generated paragraphs and lists of /methodology/ and /about/, underlined like the links of the framework attribution. */
.method-content:not(.synthesis)>p a,.method-content>ul a{border-bottom:1px solid #a9b69a}.method-content:not(.synthesis)>p a:hover,.method-content>ul a:hover{color:var(--green);border-color:var(--green)}
/* The learning library: growth stories, glossary and FAQ (build.py section 7b). */
.learning-nav{margin:0 4.8%;padding:11px 0;border-bottom:1px solid var(--line);display:flex;gap:28px;align-items:center;font-size:11px}.learning-nav>span{font-size:9px;letter-spacing:.13em;color:var(--muted)}.learning-nav nav{display:flex;gap:26px;flex-wrap:wrap}.learning-nav a:hover,.learning-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:5px}.learning-intro{padding-bottom:40px}.learning-intro>p{max-width:720px}.learning-quicklinks{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:25px;font-size:12px;color:var(--green)}.learning-quicklinks a{border-bottom:1px solid var(--line);padding-bottom:4px}.learning-directory{margin:0 auto;padding:0 5% 80px;max-width:1535px}.learning-controls{display:flex;gap:18px;align-items:end;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:32px}.learning-controls label{display:block;flex:1;min-width:160px}.learning-controls label:first-child{flex:2;min-width:250px}.learning-controls label>span{display:block;font-size:10px;letter-spacing:.04em;margin-bottom:7px;color:var(--muted)}.learning-controls input,.learning-controls select{width:100%;border:1px solid var(--line);background:var(--white);color:var(--ink);padding:12px 13px;font:inherit;font-size:13px;border-radius:3px;min-height:45px}.learning-controls button,.faq-actions button{padding:11px 15px;min-height:44px;border:1px solid var(--line);background:var(--yellow);color:var(--ink);border-radius:3px;cursor:pointer;font-size:12px}.learning-count{font-size:11px;color:var(--muted);margin:0;align-self:center;white-space:nowrap;padding-top:19px}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-card{background:var(--white);border:1px solid var(--line);border-radius:4px;padding:26px;display:flex;flex-direction:column;min-width:0}.blog-card-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}.blog-card-top>span{font-size:10px;color:var(--muted)}.blog-card .eyebrow{font-size:9px;color:var(--green);margin-bottom:12px}.blog-card h2{font-size:27px;line-height:1.18;letter-spacing:-.035em;margin-bottom:18px}.blog-card h2 a:hover{text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px}.blog-card>p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted)}.blog-card-links{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:17px;margin-top:auto;font-size:11px}.blog-card-links>a:first-child{font-weight:600;color:var(--green)}.blog-card-links>a:last-child{text-decoration:underline;text-underline-offset:3px;color:var(--muted)}.blog-hero h1{max-width:1000px;font-size:clamp(38px,4.7vw,68px);line-height:1.1}.blog-byline{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:11px;color:var(--muted);margin:25px 0}.blog-byline a{text-decoration:underline;text-underline-offset:3px}.blog-deck{max-width:850px;font-size:18px;line-height:1.85;color:var(--green)}.blog-content .case-section{margin-bottom:36px}.blog-content .case-section h2{font-size:32px;margin-bottom:20px}.blog-content .case-section p{font-size:16px;line-height:1.85}.term-link{color:var(--green);text-decoration:underline;text-decoration-color:#b4bfa8;text-underline-offset:3px;text-decoration-thickness:1px}.term-link:hover{background:var(--yellow-soft)}.companion-note{border-left:3px solid var(--yellow);padding:20px 24px;margin:0 0 32px;background:var(--white)}.companion-title{display:block;font-family:var(--serif);font-size:23px;line-height:1.3;margin:10px 0;color:var(--green)}.companion-note>p{font-size:12px;color:var(--muted);margin:0 0 10px}.companion-links{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:10px}.companion-links a{text-decoration:underline;text-underline-offset:3px}.blog-full-case{background:var(--yellow-soft);border:1px solid var(--yellow-line);padding:30px;margin:42px 0}.blog-full-case h2{font-size:31px;margin:14px 0}.blog-full-case p{font-size:14px;line-height:1.8;color:var(--muted)}.blog-full-case .button{margin-top:5px}.blog-terms{border-bottom:1px solid var(--line);padding:0 0 30px;margin-bottom:40px}.blog-terms h2,.blog-faq-link h2{font-size:25px;margin:0 0 18px}.blog-terms>div{display:flex;flex-wrap:wrap;gap:8px}.blog-terms a{border:1px solid var(--line);padding:5px 9px;border-radius:3px;font-size:11px}.blog-related{margin:0 0 40px}.blog-related>h2{font-size:32px;margin:12px 0 16px}.blog-related>p{font-size:12px}.blog-related article{padding:20px 0;border-bottom:1px solid var(--line)}.blog-related small{font-size:10px;color:var(--muted);display:block;margin-bottom:9px}.blog-related h3{font-family:var(--serif);font-size:23px;line-height:1.3;margin-bottom:12px}.blog-related h3 a:hover{color:var(--green)}.related-case{font-size:11px;text-decoration:underline;text-underline-offset:3px}.blog-faq-link{margin-bottom:42px}.blog-faq-link p{display:flex;flex-direction:column;gap:10px;font-size:12px}.blog-faq-link a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.blog-content .sources{scroll-margin-top:35px}.blog-content .sources h2{font-size:30px}.blog-content .sources>p{font-size:12px;line-height:1.8}.blog-content .sources ol{padding-left:22px}.blog-content .sources li{padding:12px 0;font-size:12px}.blog-content .sources li>small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.blog-content .sources a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.learning-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}.learning-home-grid>a{padding:30px;background:var(--white);border-right:1px solid var(--line)}.learning-home-grid>a:last-child{border:0}.learning-home-grid h3{font-family:var(--serif);font-size:29px;line-height:1.2;margin:20px 0}.learning-home-grid p{font-size:13px;color:var(--muted);line-height:1.8}.learning-home-grid>a>span:last-child{font-size:25px}.alphabet{display:flex;flex-wrap:wrap;gap:7px;margin:28px 0}.alphabet a{width:35px;height:35px;display:grid;place-items:center;background:var(--white);border:1px solid var(--line);font-size:12px}.alphabet a:hover{background:var(--yellow)}.glossary-note{font-size:12px;line-height:1.8;max-width:850px;color:var(--muted);margin-bottom:45px}.glossary-letter{display:grid;grid-template-columns:100px minmax(0,1fr);gap:32px;border-top:1px solid var(--ink);padding-top:22px;margin-bottom:45px;scroll-margin-top:35px}.glossary-letter>h2{font-size:64px;line-height:1;color:var(--green)}.glossary-letter>dl{margin:0}.glossary-entry{padding:5px 0 25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.glossary-entry:last-child{border:0;margin-bottom:0}.glossary-entry dt{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin-bottom:14px}.glossary-entry dfn{font-family:var(--serif);font-size:28px;line-height:1.2;font-style:normal;letter-spacing:-.025em;scroll-margin-top:40px}.glossary-entry dt>span{font-size:10px;color:var(--muted);margin-left:auto}.anchor-link{font-size:13px;color:var(--muted);padding:4px}.glossary-entry dd{margin:0;max-width:940px}.glossary-entry dd>p{font-size:15px;line-height:1.85;max-width:850px}.term-reading{display:flex;flex-wrap:wrap;gap:8px 17px;font-size:11px}.term-reading>span{color:var(--muted)}.term-reading a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.faq-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.faq-jump a{padding:7px 11px;background:var(--white);border:1px solid var(--line);font-size:11px}.faq-jump a:hover{background:var(--yellow-soft)}.faq-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:45px}.faq-actions button:last-child{background:transparent}.faq-category{display:grid;grid-template-columns:220px minmax(0,1fr);gap:55px;padding:30px 0;border-top:1px solid var(--ink);margin-bottom:30px;scroll-margin-top:35px}.faq-category-title h2{font-size:31px;line-height:1.2;margin:12px 0}.faq-category-title .eyebrow{color:var(--muted)}.faq-answer{border-bottom:1px solid var(--line);scroll-margin-top:40px}.faq-answer summary{list-style:none;cursor:pointer;padding:22px 35px 22px 0;font-size:16px;line-height:1.5;position:relative;font-weight:550}.faq-answer summary::-webkit-details-marker{display:none}.faq-answer summary:after{content:'+';position:absolute;right:5px;top:19px;font-size:22px;font-weight:400;color:var(--green)}.faq-answer[open] summary:after{content:'−'}.faq-answer[open] summary{color:var(--green)}.faq-answer>div{padding:0 20px 25px 0}.faq-answer p{font-size:14px;line-height:1.9;max-width:810px}.faq-answer-links{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:11px}.faq-answer-links a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.faq-answer-links .faq-permalink{color:var(--muted)}[data-learning-item][hidden],[data-learning-group][hidden],[data-learning-empty][hidden]{display:none!important}[data-learning-empty]{padding:35px 0;font-size:15px}.blog-post-page .case-layout{padding-top:15px}
@media(min-width:1500px){.learning-nav{max-width:1380px;margin-left:auto;margin-right:auto}}
@media(max-width:1050px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-category{grid-template-columns:180px minmax(0,1fr);gap:30px}.learning-home-grid h3{font-size:25px}.learning-home-grid>a{padding:25px}}
@media(max-width:760px){.learning-nav{margin:0 6%;padding:11px 0;gap:15px}.learning-nav>span{display:none}.learning-nav nav{width:100%;justify-content:space-between;gap:12px;font-size:11px}.learning-directory{padding:0 6% 55px}.learning-controls{gap:14px}.learning-controls label:first-child{flex-basis:100%;min-width:0}.learning-controls label{min-width:0}.learning-count{padding-top:0;width:100%}.blog-hero h1{font-size:40px}.blog-deck{font-size:16px}.blog-byline{gap:8px 14px;font-size:10px}.blog-content .case-section h2{font-size:28px}.blog-content .case-section p{font-size:15px;line-height:1.85}.blog-full-case{padding:24px}.blog-full-case h2{font-size:28px}.learning-home-grid{grid-template-columns:1fr}.learning-home-grid>a{border-right:0;border-bottom:1px solid var(--line)}.glossary-letter{grid-template-columns:45px minmax(0,1fr);gap:15px}.glossary-letter>h2{font-size:43px}.glossary-entry dfn{font-size:25px}.glossary-entry dt>span{margin-left:0;width:100%;font-size:9px}.glossary-entry dd>p{font-size:14px}.faq-category{grid-template-columns:1fr;gap:12px}.faq-category-title h2{font-size:29px}.faq-answer summary{font-size:15px}.faq-answer p{font-size:14px}.companion-note{padding:18px}.companion-title{font-size:21px}.blog-grid{gap:14px}.blog-card{padding:21px}.blog-card h2{font-size:25px}}
@media(max-width:500px){.blog-grid{grid-template-columns:1fr}.blog-hero h1{font-size:35px}.learning-controls label:not(:first-child){flex-basis:70%}.glossary-letter{grid-template-columns:1fr;gap:20px}.glossary-letter>h2{font-size:49px}.blog-full-case .button{width:100%;gap:12px;font-size:11px}.learning-quicklinks{font-size:11px}.alphabet{gap:5px}.alphabet a{width:31px;height:33px}}
@media print{.learning-nav,.learning-controls,.alphabet,.faq-jump,.faq-actions,.learning-quicklinks,.blog-related,.blog-faq-link,.blog-terms,.blog-full-case,.companion-note{display:none!important}.blog-layout{display:block}.learning-directory{padding:0}.blog-hero h1{font-size:28pt}.blog-content .case-section p{font-size:11pt}.faq-answer>div{display:block!important}.faq-category,.glossary-letter{display:block}.faq-answer{break-inside:avoid}.blog-grid{grid-template-columns:1fr 1fr}}
.learning-intro-links{padding:0 5% 40px;margin-top:-22px}.learning-intro-links .learning-quicklinks{margin-top:0}.learning-directory [hidden]{display:none!important}.blog-byline time{white-space:nowrap}.blog-content .sources{border-bottom:0}.learning-home .section-heading h2{margin-top:0}@media(min-width:761px){.footer-nav{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:760px){.learning-intro-links{padding:0 6% 32px}}
