/* Supporting illustrations share the existing HOWLER palette and typography. */
.application-row--illustrated{grid-template-columns:56px 1.2fr minmax(160px,220px) 1fr 32px;gap:24px;min-height:200px}
.application-sketch{display:block;width:100%;max-width:220px;align-self:center}
.application-sketch img{width:100%;height:auto;transition:transform .4s ease}
.application-row:hover .application-sketch img{transform:translateY(-3px)}
.system-illustration{margin:30px 0 0;max-width:666px}
.system-illustration>img,.application-sketch img{mix-blend-mode:multiply}
.system-illustration>img{width:100%;height:auto;aspect-ratio:3/2}
.system-illustration figcaption{max-width:500px;font-size:14px;line-height:1.6;margin:12px 0 0;color:#59636b}
.diagram-key{display:inline-block;width:10px;height:10px;margin-right:9px;background:#ff5500}
.diagram-key--blue{background:#205d9e}
.diagram-legend{display:block;margin-bottom:10px;font-family:var(--font-geist-mono),monospace;font-size:11px;line-height:1.6;color:#205d9e;letter-spacing:.025em}
.icp-page .page-intro{padding-bottom:34px}.icp-date{font-family:var(--font-geist-mono),monospace;font-size:12px;color:#205d9e;padding-bottom:52px}
.icp-section{padding-block:32px 48px}.icp-section h2{font-size:clamp(30px,3.8vw,52px);max-width:950px;margin-bottom:30px;overflow-wrap:anywhere;hyphens:auto}
.icp-prose{max-width:920px}.icp-prose p{font-size:18px;line-height:1.7;color:#59636b;margin-bottom:24px;overflow-wrap:anywhere}.icp-prose .text-link{color:#205d9e}
.icp-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:30px}.icp-level{background:#eef1f2;padding:28px}.icp-level .eyebrow{margin-bottom:20px}.icp-level>p:last-child{font-size:16px;line-height:1.7;overflow-wrap:anywhere;hyphens:auto}
@media(max-width:950px){.icp-levels{grid-template-columns:1fr}.icp-section{padding-block:24px 30px}.icp-level{padding:24px}.icp-prose p{font-size:17px}.icp-page .page-intro h1{hyphens:auto}}
.diagram-note{display:block;margin-top:7px;font-size:12px;color:#687078}
.editorial-section--illustrated>.body-copy{align-self:center}
.editorial-section>div{min-width:0}
.editorial-section h2{overflow-wrap:anywhere;hyphens:auto}
.work-photo{margin:32px 0 0}
.work-photo-surface{position:relative;overflow:hidden;isolation:isolate;background:#e9ebe8}
.work-photo-surface::after,.work-photo--detail::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,rgba(32,93,158,.065),rgba(32,93,158,.015) 55%,rgba(255,85,0,.065));z-index:1}
.work-photo-surface img{width:100%;height:auto;filter:brightness(1.06) saturate(.84) contrast(1.025)}
.work-photo figcaption{font-size:14px;line-height:1.6;color:#59636b;margin-top:15px;max-width:600px}
.work-photo--detail{position:relative;margin:0;overflow:hidden}
.work-photo--detail img{object-position:68% center;filter:brightness(1.06) saturate(.84) contrast(1.025)}
.supporting-photo-wide{padding-bottom:45px}
.supporting-photo-wide .work-photo{max-width:1100px;margin:0 auto}
.supporting-photo-wide figcaption{max-width:850px}
@media(max-width:1100px){
 .application-row--illustrated{grid-template-columns:42px 1fr 150px 28px;gap:14px;min-height:180px}
 .application-row--illustrated .app-number{grid-column:1;grid-row:1}
 .application-row--illustrated h3{grid-column:2;grid-row:1}
 .application-row--illustrated p{grid-column:2;grid-row:2}
 .application-row--illustrated .application-sketch{grid-column:3;grid-row:1/3}
 .application-row--illustrated>.brand-arrow{grid-column:4;grid-row:1/3}
}
@media(max-width:800px){
 .system-illustration{max-width:560px;margin-top:22px}
 .system-illustration>img{max-height:360px;object-fit:contain}
 .work-photo{margin-top:25px}
 .supporting-photo-wide{padding-bottom:20px}
}
@media(max-width:600px){
 .application-row--illustrated{grid-template-columns:30px 1fr 24px;gap:10px 14px;min-height:0;padding-block:25px}
 .application-row--illustrated .application-sketch{grid-column:2;grid-row:2;max-width:250px}
 .application-row--illustrated p{grid-column:2;grid-row:3}
 .application-row--illustrated>.brand-arrow{grid-column:3;grid-row:1}
 .system-illustration figcaption,.work-photo figcaption{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.application-sketch img{transition:none;transform:none!important}}
