:root{--paper:#f7f4ed;--ink:#242821;--muted:#586052;--line:#d5d7ca;--accent:#954329;--serif:Georgia, "Times New Roman", serif;--sans:Arial, Helvetica, sans-serif;--display:clamp(38px, 4.5vw, 64px);--page-title:clamp(38px, 4.5vw, 56px);--section-title:26px;--item-title:30px;--body:17px;--small:14px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{background:var(--paper);color:var(--ink);font:var(--body)/1.65 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--accent)}:is(a:focus-visible,summary:focus-visible,button:focus-visible){outline:3px solid var(--accent);outline-offset:5px}p{margin:0 0 1.1em}h1,h2,h3,h4{text-wrap:pretty;margin:0;font-weight:400;line-height:1.2}h1{font-family:var(--serif);font-size:var(--page-title);letter-spacing:-.035em}h2{font:600 var(--section-title)/1.3 var(--sans);letter-spacing:-.025em}h3{font:400 var(--item-title)/1.2 var(--serif);letter-spacing:-.02em}h4{font-size:19px}.masthead,main,footer{width:min(100%,1360px);margin-inline:auto;padding-inline:64px}.masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;padding-block:26px;display:flex}.wordmark{font:28px/1.3 var(--serif);white-space:nowrap;text-decoration:none}.wordmark span{color:var(--accent)}nav{font-size:var(--small);flex-wrap:wrap;gap:6px 25px;display:flex}nav a{align-items:center;min-height:36px;text-decoration:none;display:inline-flex}nav a:hover{text-decoration:underline}.skip{z-index:10;background:var(--ink);color:#fff;padding:12px;position:absolute;top:-100px;left:20px}.skip:focus{top:15px}.hero{padding-block:56px}.eyebrow,.byline{font:400 var(--small)/1.5 var(--sans);color:var(--muted)}.hero h1{font-size:var(--display);margin:25px 0 22px}.hero h1 em{color:var(--accent)}.hero-dek{max-width:800px;margin-bottom:0;font-size:20px}.studio-model{grid-template-columns:1fr 1fr;gap:26px 60px;margin-top:35px;display:grid}.studio-model .model-title{margin:0 0 8px;font-size:17px;font-weight:600}.model-title a{text-decoration:none}.model-title a:hover{text-decoration:underline}.studio-model p:not(.model-title){color:var(--muted);max-width:520px;margin:0;font-size:16px;line-height:1.65}.section{border-top:1px solid var(--line);padding-block:48px}.section-heading{margin-bottom:30px}.section-heading p{color:var(--muted);max-width:730px;margin:14px 0 0}.project-card{border-top:1px solid var(--line);grid-template-columns:1fr 1.12fr;align-items:start;gap:50px;padding-block:34px;display:grid}.project-card:first-child{border-top:0;padding-top:0}.project-copy{min-width:0}.project-copy>.eyebrow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;margin-bottom:15px;display:flex}.badge{font:400 var(--small)/1.5 var(--sans);color:var(--muted);white-space:nowrap}.project-copy h3{margin-bottom:12px;font-size:36px}.project-copy h3 a{text-decoration:none}.project-question{margin-bottom:16px;font-size:19px;line-height:1.45}.project-copy>p:not(.eyebrow):not(.project-question){color:var(--muted)}.project-bottom{font-size:var(--small);flex-wrap:wrap;align-items:baseline;gap:10px 24px;margin-top:22px;display:flex}.project-bottom a{padding-block:5px}.project-pending .project-copy{grid-column:1/-1;max-width:760px}.project-pending .eyebrow{justify-content:flex-start}.availability{color:var(--muted);font-size:var(--small)}.project-visual{min-width:0;margin:0}.site-capture{border:1px solid var(--line);background:#fff;display:block}.site-capture img{width:100%;height:auto;display:block}.project-visual figcaption{color:var(--muted);margin-top:10px;font-size:13px;line-height:1.5}.stage-key{font-size:var(--small);color:var(--muted);max-width:760px;margin:4px 0 0}.tool-grid{grid-template-columns:1fr 1fr;gap:50px;display:grid}.tool-grid article{flex-direction:column;align-items:flex-start;display:flex}.tool-grid h3{max-width:470px;margin-bottom:16px}.tool-grid h3 a{text-decoration:none}.tool-grid p{color:var(--muted)}.tool-grid article>a{font-size:var(--small);margin-top:auto;padding-block:5px}.open-examples{grid-template-columns:repeat(3,1fr);gap:35px;display:grid}.open-examples article{border-top:1px solid var(--line);flex-direction:column;padding-top:20px;display:flex}.open-examples h3{margin-bottom:12px}.open-examples .example-purpose{color:var(--ink);font-size:17px;font-weight:600;line-height:1.5}.open-examples p{color:var(--muted);font-size:16px}.example-links{font-size:var(--small);flex-wrap:wrap;gap:8px 22px;margin-top:auto;padding-top:8px;display:flex}.example-links a{padding-block:5px}.catalog-link{font-size:var(--small);margin:26px 0 0}.notes-ribbon{background:#eceee5;border-top:2px solid #a8af9d;padding:24px 24px 28px}.notes-ribbon>h2{letter-spacing:0;margin-bottom:18px;font-size:14px}.ribbon-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.ribbon-grid article+article{border-left:1px solid var(--line);padding-left:28px}.ribbon-link{text-decoration:none;display:block}.ribbon-link h3{margin-bottom:9px;font-size:23px}.ribbon-link p{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.note-arrow{color:var(--accent);white-space:nowrap}.ribbon-link:hover h3{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.ribbon-link:hover p{color:var(--ink)}.notes-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.reports-grid,.related-notes{grid-template-columns:1fr 1fr}.note-card{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;padding-top:20px;display:flex}.note-card h3{margin:0 0 16px;font-size:27px}.note-card h3 a{text-decoration:none}.note-card p:not(.eyebrow){color:var(--muted);font-size:16px}.note-card .eyebrow{margin-bottom:12px}.note-card>a{font-size:var(--small);margin-top:auto;padding-block:5px}.studio-section,.two-column{grid-template-columns:1fr 1.65fr;gap:55px;display:grid}.studio-section>div{max-width:740px}.large-copy{font:24px/1.5 var(--serif)}.back-link{font-size:var(--small);margin:26px 0;padding-block:5px;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.page-intro,.detail-hero{padding:18px 0 40px}.page-intro h1,.detail-hero h1{max-width:900px;margin:0 0 22px}.detail-hero{border-bottom:1px solid var(--line);margin-bottom:38px}.detail-hero>.eyebrow{flex-wrap:wrap;gap:10px 24px;margin-bottom:20px;display:flex}.detail-question{font:25px/1.4 var(--serif);margin-bottom:18px}.deck{color:var(--muted);max-width:780px;font-size:20px;line-height:1.6}.button{border:1px solid var(--ink);font-size:var(--small);padding:11px 18px;text-decoration:none;display:inline-block}.button:hover{background:var(--ink);color:var(--paper)}.detail-body{max-width:780px;margin-inline:auto}.detail-body article>section{margin-bottom:38px}.detail-body h2{margin-bottom:16px;font-size:25px}.detail-body .project-visual{margin-bottom:30px}.feature-grid{grid-template-columns:1fr 1fr;gap:24px 32px;display:grid}.feature-grid h3{margin-bottom:10px;font-size:23px}.feature-grid p{color:var(--muted);font-size:16px}.status-note{border-top:1px solid var(--line);color:var(--muted);padding-top:24px;font-size:16px}.status-note .eyebrow{color:var(--ink);font-weight:600}.source-link{font-size:var(--small);margin-right:22px;padding-block:5px;display:inline-block}.related-title{font:26px/1.3 var(--serif);margin:12px 0;text-decoration:none;display:block}.software-family{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:45px;padding-block:35px;display:grid}.software-family h2{max-width:280px;font-size:24px}.software-row{border-bottom:1px solid var(--line);grid-template-columns:135px 1fr;gap:8px 25px;margin-bottom:23px;padding-bottom:23px;display:grid}.software-row:last-child{border:0;margin:0;padding:0}.software-row h3{font-size:24px}.software-row p{margin:0;font-size:16px}.software-row>div{font-size:var(--small);flex-wrap:wrap;grid-column:2;gap:8px 22px;display:flex}.software-row>div a{padding-block:5px}.publisher-detail{border-top:1px solid var(--line);grid-template-columns:1fr 1.3fr;gap:60px;padding-block:38px;display:grid}.publisher-detail h2{font:32px/1.25 var(--serif);max-width:460px}.publisher-detail h2 a{text-decoration:none}.publisher-detail>div>a{font-size:var(--small)}.essay{max-width:760px;margin:20px auto 50px}.essay h1{margin-bottom:22px}.essay .byline{border-bottom:1px solid var(--line);margin:22px 0 28px;padding-bottom:20px}.essay-body{font:20px/1.8 var(--serif)}.essay-body p{margin-bottom:24px}.essay>section{margin:30px 0}.essay>section h2{margin-bottom:16px;font-size:25px}.case-study-link{border:1px solid var(--line);background:#eceee5;padding:24px}.case-study-link .eyebrow{margin-bottom:10px}.case-study-link .button{margin-top:4px}.evidence-case blockquote{border-left:3px solid var(--accent);font:24px/1.5 var(--serif);margin:24px 0;padding:4px 0 4px 24px}.step-label{color:var(--accent);font:600 var(--small)/1.5 var(--sans);text-transform:uppercase;letter-spacing:.035em;margin-bottom:8px}.evidence-table-wrap{margin:24px 0;overflow-x:auto}.evidence-table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.45}.evidence-table caption{text-align:left;color:var(--muted);font-size:var(--small);margin-bottom:10px}.evidence-table th,.evidence-table td{border-top:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}.evidence-table thead th{color:var(--muted);font-weight:600}.evidence-table tbody th{font-weight:600}.essay-end{border-top:1px solid var(--line);padding-top:24px;font-size:16px}.not-found{min-height:60vh;padding-block:70px}.not-found h1{margin-bottom:25px}footer{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:20px;padding-block:32px;display:grid}footer .wordmark{font-size:24px}footer p,footer a:not(.wordmark),footer small{font-size:var(--small)}footer div{flex-direction:column;align-items:flex-start;gap:5px;display:flex}footer small{color:var(--muted);grid-column:1/-1}@media (max-width:1100px){.masthead,main,footer{padding-inline:36px}.masthead{gap:24px}nav{gap:5px 18px}.project-card,.software-family{gap:30px}.software-row{grid-template-columns:115px 1fr;gap:10px 20px}}@media (max-width:800px){:root{--section-title:24px;--item-title:28px}.masthead,main,footer{padding-inline:24px}.masthead{flex-direction:column;align-items:flex-start;gap:14px;padding-block:20px}nav{gap:0 20px}nav a{min-height:40px}.hero{padding-block:34px}.hero h1{margin-block:20px}.hero-dek{font-size:19px}.studio-model{grid-template-columns:1fr;gap:22px;margin-top:28px}.studio-model p:not(.model-title){max-width:none}.section{padding-block:36px}.section-heading{margin-bottom:24px}.project-card{grid-template-columns:1fr;gap:24px;padding-block:30px}.project-copy h3{font-size:32px}.project-bottom{gap:6px 20px}.tool-grid,.notes-grid,.open-examples,.studio-section,.two-column,.software-family,.publisher-detail{grid-template-columns:1fr;gap:28px}.tool-grid article+article{border-top:1px solid var(--line);padding-top:24px}.software-family h2{max-width:none}.software-row{grid-template-columns:115px 1fr}.publisher-detail h2{font-size:30px}.feature-grid{grid-template-columns:1fr;gap:10px}.detail-question{font-size:23px}.deck{font-size:19px}.essay{margin-top:10px}.essay-body{font-size:19px}.evidence-case blockquote{padding-left:18px;font-size:21px}.case-study-link{padding:20px}.back-link{margin-block:18px}.large-copy{font-size:23px}footer{grid-template-columns:1fr}footer p{margin:0}}@media (max-width:420px){.software-row{grid-template-columns:1fr}.software-row>div{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (max-width:800px){.ribbon-grid{grid-template-columns:1fr;gap:18px}.ribbon-grid article+article{border-left:0;border-top:1px solid var(--line);padding-top:18px;padding-left:0}.ribbon-link h3{font-size:22px}}.open-examples h3 a,.software-row h3 a{text-decoration:none}.open-examples h3 a:hover,.software-row h3 a:hover{text-decoration:underline}
