/* Content edition: explanatory project drawings and worked article examples. */
.project-art{height:auto;aspect-ratio:16/9;background:#eaf0f7}
.project-art svg{display:block;width:100%;height:100%}
.project-card-copy{padding:24px}
.project-card h3{font-size:clamp(24px,2vw,30px);line-height:1.25}
.project-card-copy>p{font-size:15px;line-height:1.7}
.case-page-link{display:inline-flex;align-items:center;gap:28px;font-size:16px;padding:14px 0;border-bottom:1px solid var(--rule);min-height:48px}
.case-page-link:hover{color:var(--signal-ink)}
.project-all{margin-top:12px}
.project-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;list-style:none;margin:0;padding:0}
.project-catalog .project-card h2{font:400 32px/1.25 var(--display);letter-spacing:-.04em;margin:16px 0}
.project-catalog .project-card-copy{padding:30px}
.case-figure{margin:32px 0 0;overflow:hidden;border:1px solid var(--rule);border-radius:10px;background:#eef3f8}
.case-figure svg{display:block;width:100%;height:auto}
.case-figure figcaption{font-size:14px;line-height:1.65;color:var(--quiet);padding:18px 24px;background:#eef3f8}
.case-visual{margin-bottom:52px;max-width:850px}
.case-visual .case-figure{margin-top:0}
.case-page .reading-header{padding-bottom:38px}
.case-page .project-blocks{margin-top:0;border-top:0}
.project-blocks section{grid-template-columns:1fr;gap:12px;padding:28px 0}
.project-blocks h3,.project-blocks h2{font:400 25px/1.3 var(--display);letter-spacing:-.03em;margin:0}
.project-blocks p{color:var(--quiet);font-size:17px}
.reading-copy .project-blocks section+section{margin-top:0}
.reading-copy .project-blocks h2{font-size:28px;margin-bottom:0}
.project-dialog .case-figure{margin-top:26px;max-width:640px}
.project-dialog .case-page-link{margin-top:20px}
.project-dialog .project-blocks{margin-top:16px;border-top:0}
.project-dialog .project-toolbar{z-index:2}
.journal-reading .reading-header{padding:40px 0 44px}
.journal-reading .reading-header h1{font-size:clamp(40px,4.6vw,66px);max-width:1000px}
.journal-reading .reading-lead{font-size:22px;margin-top:24px;max-width:880px}
.journal-reading .article-byline{margin-top:20px}
.journal-reading .reading-copy{max-width:760px}
.contextual-cta{padding:28px;background:#eaf0f7;border:1px solid #d2dce7;border-radius:8px;margin-top:40px}
.reading-copy .contextual-cta p{font-size:17px;line-height:1.7;margin:0 0 20px}
.contextual-cta .button-primary{white-space:normal;text-align:left;gap:20px}
.content-connections{margin-top:48px;border-top:1px solid var(--rule);padding-top:28px}
.reading-copy .content-connections h2{font-size:25px;margin-bottom:18px}
.content-connections>div{display:grid;gap:0}
.reading-copy .content-connections a{display:grid;grid-template-columns:1fr auto;gap:6px 22px;border-bottom:1px solid var(--rule);padding:18px 0;text-decoration:none}
.content-connections a>span:first-child{grid-column:1;font-size:12px;color:var(--quiet)}
.content-connections strong{grid-column:1;grid-row:2;font:400 22px/1.4 var(--display);letter-spacing:-.02em}
.content-connections a>span:last-child{grid-column:2;grid-row:1/3;align-self:center}
.content-connections a:hover strong{color:var(--signal-ink)}
.reading-copy .article-discussion{border-top:1px solid var(--rule);margin-top:32px;padding-top:24px;font-size:16px}
.article-discussion>span{display:block;font-size:13px;color:var(--quiet);margin-top:6px}
.calculation-example,.worked-data{margin:28px 0;padding:26px;border:1px solid #c6d5e5;border-radius:8px;background:#edf3f9}
.calculation-example>figcaption,.worked-data>figcaption{font-size:14px;line-height:1.6;color:var(--quiet);margin-bottom:22px}
.calculation-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.calculation-grid>div{min-width:0}
.calculation-grid span{font-size:15px}
.calculation-grid strong{display:block;font:400 clamp(38px,4vw,52px)/1.25 var(--display);letter-spacing:-.05em;margin:12px 0}
.reading-copy .calculation-grid p{font-size:14px;line-height:1.6;margin:0}
.example-bar{height:8px;border-radius:4px;background:#cddae8;margin-top:18px;overflow:hidden}
.example-bar i{width:70%;display:block;height:100%;background:#365d84;border-radius:4px}
.calculation-grid>div+div .example-bar i{width:87.5%;background:#ae5833}
.reading-copy .example-note{font-size:15px;line-height:1.7;margin:22px 0 0}
.reading-copy .worked-data>p{font-size:16px;line-height:1.7}
.input-tables{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.input-tables>div{min-width:0}
.reading-copy .worked-data h3{font:400 18px/1.5 var(--body);margin:0 0 10px}
.reading-copy .worked-data .table-scroll{margin:8px 0 20px}
.reading-copy .worked-data td,.reading-copy .worked-data th{padding:10px 12px 10px 0;font-size:14px;min-width:80px}
.output-table{padding-top:20px;border-top:1px solid #b3c6dc}
.reading-copy .output-table th:first-child{min-width:100px}
.action-checklist strong{font-weight:600}
@media(max-width:700px){
 .project-card-copy{padding:22px}
 .project-card h3{font-size:26px}
 .project-catalog{grid-template-columns:1fr;gap:26px}
 .project-catalog .project-card-copy{padding:22px}
 .project-catalog .project-card h2{font-size:28px}
 .case-figure figcaption{font-size:13px;padding:16px 18px}
 .case-visual{margin-bottom:32px}
 .project-dialog .case-figure{margin-inline:-10px}
 .project-blocks h3,.project-blocks h2{font-size:24px}
 .project-blocks p{font-size:16px}
 .journal-reading .reading-header{padding:30px 0 32px}
 .journal-reading .reading-header h1{font-size:38px}
 .journal-reading .reading-lead{font-size:19px;line-height:1.65;margin-top:20px}
 .contextual-cta{padding:22px 18px}
 .content-connections strong{font-size:21px}
 .calculation-example,.worked-data{padding:20px 16px;margin-inline:0}
 .calculation-grid,.input-tables{grid-template-columns:1fr;gap:22px}
 .calculation-grid>div+div{border-top:1px solid #c6d5e5;padding-top:20px}
 .calculation-grid strong{font-size:46px}
 .calculation-example>figcaption,.worked-data>figcaption{font-size:13px}
 .reading-copy .example-note{font-size:14px}
 .input-tables .table-scroll{margin-bottom:0}
 .output-table{margin-top:20px}
}

.journal-reading .reading-header h1,.case-page .reading-header h1{text-wrap:balance}

/* Product screenshots explain the configuration and operator stages. */
.product-shot-heading{margin:8px 0 22px;max-width:780px}
.product-shot-heading h2{font:400 clamp(25px,2.5vw,34px)/1.25 var(--display);letter-spacing:-.035em;margin:0 0 12px;text-wrap:balance}
.product-shot-heading p{font-size:17px;line-height:1.7;color:var(--quiet);margin:0}
.product-shot+.product-shot:has(.product-shot-heading){padding-top:24px;border-top:1px solid var(--rule)}
@media(max-width:700px){.product-shot-heading{margin-bottom:18px}.product-shot-heading p{font-size:15px}.product-shot+.product-shot:has(.product-shot-heading){padding-top:12px}}
