/* Capabilities: a visible process with the original methods and project examples. */
.capabilities-page .page-intro{min-height:0;padding-top:52px;padding-bottom:34px}
.capabilities-page .page-intro h1{font-size:clamp(48px,5.7vw,80px);letter-spacing:-.055em;line-height:1.05;margin:0}
.capabilities-page .page-intro p{font-size:clamp(18px,1.8vw,23px);line-height:1.45;margin:18px 0 0;max-width:1000px}
.cap-workflow{border:0;padding-top:4px;padding-bottom:36px}
.cap-workflow h2{font-size:25px;line-height:1.2;letter-spacing:-.025em;font-weight:600;margin:0 0 24px}
.workflow-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;gap:24px;--icon-size:clamp(76px,9vw,116px)}
.workflow-steps>li{min-width:0;position:relative;text-align:center;border:1px solid #b6ac9c;border-radius:12px;padding:18px 12px 22px;background:#e8e1d6;box-shadow:0 6px 14px rgba(55,46,32,.10)}
.workflow-number{display:block;margin-bottom:9px;font-size:14px;line-height:20px;color:#5f574b;font-weight:600;font-variant-numeric:tabular-nums}
.workflow-icon{display:flex;width:var(--icon-size);height:var(--icon-size);border-radius:50%;background:#faf7f0;box-shadow:inset 0 0 0 1px #d2c8b8;align-items:center;justify-content:center;margin:0 auto 16px;color:#49463f}
.workflow-icon svg{width:52%;height:52%;display:block}
.workflow-steps>li:not(:last-child):after{content:"";position:absolute;z-index:1;right:-24px;top:calc(47px + var(--icon-size)/2);width:24px;height:18px;transform:translateY(-50%);background:transparent center/22px 12px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='12' viewBox='0 0 34 12'%3E%3Cpath d='M1 6h30m-5-5 5 5-5 5' fill='none' stroke='%23746d62' stroke-width='1.25'/%3E%3C/svg%3E")}
.workflow-copy h3{font-size:20px;line-height:1.25;font-weight:600;letter-spacing:-.025em;margin:0 0 6px}
.workflow-copy p{font-size:16px;line-height:1.4;margin:0 auto;color:var(--muted);max-width:210px}
.cap-evidence{border:0;padding-top:0;padding-bottom:64px}
.cap-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:16px;background:rgba(236,232,223,.26)}
.cap-name-col{width:23%}.cap-method-col{width:47%}.cap-evidence-col{width:30%}
.cap-table th,.cap-table td{border:1px solid #cec7bb;padding:24px;text-align:left;vertical-align:middle;overflow-wrap:break-word}
.cap-table th{font-size:19px;font-weight:600;line-height:1.35;letter-spacing:-.025em}
.cap-table p{margin:0;color:var(--muted);line-height:1.5}
.cap-table a{text-decoration:underline;text-underline-offset:3px}
.cap-tool-list{display:flex;flex-wrap:wrap;gap:12px 18px;list-style:none;margin:16px 0 0;padding:0}
.cap-tool-list li{display:flex;align-items:center;gap:8px;font-size:14px;color:#46443e;white-space:nowrap}
.cap-tool-list img{width:28px;height:28px;object-fit:contain;mix-blend-mode:multiply;flex:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* A quiet footer keeps attention on the workflow and evidence. */
.capabilities-page footer{background:transparent;padding:0 0 24px}
.capabilities-page footer>.wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:22px;position:relative}
.capabilities-page footer>.wrap:before{content:"";position:absolute;top:0;left:clamp(22px,4.7vw,72px);right:clamp(22px,4.7vw,72px);height:1px;background:var(--rule)}
.capabilities-page footer .label{display:none}
.capabilities-page .footer-title{font-size:16px;font-weight:400;line-height:1.5;letter-spacing:0;margin:0}
.capabilities-page .footer-links{gap:24px;font-size:12px;font-weight:400}
.capabilities-page .footer-bottom{flex-basis:100%;font-size:10px;border:0;padding:0;margin:0;color:var(--muted)}
@media(max-width:850px){.cap-table th,.cap-table td{padding:18px}.cap-table th{font-size:17px}.cap-table{font-size:15px}.workflow-copy p{font-size:14px}.workflow-copy h3{font-size:18px}}
@media(max-width:680px){
 .capabilities-page .page-intro{padding-top:38px;padding-bottom:30px}
 .cap-workflow{padding-bottom:30px}
 .workflow-steps{grid-template-columns:1fr;gap:22px;--icon-size:64px}
 .workflow-steps>li{display:grid;grid-template-columns:22px 64px minmax(0,1fr);gap:14px;align-items:center;text-align:left;padding:16px}
 .workflow-number{margin:0;font-size:12px}
 .workflow-icon{margin:0}
 .workflow-copy h3{font-size:19px;margin-bottom:4px}
 .workflow-copy p{max-width:none;margin:0;font-size:15px}
 .workflow-steps>li:not(:last-child):after{left:82px;right:auto;top:auto;bottom:-23px;width:12px;height:22px;transform:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='22'%3E%3Cpath d='M6 1v18m-4-4 4 4 4-4' fill='none' stroke='%23746d62' stroke-width='1.25'/%3E%3C/svg%3E");background-size:12px 22px}
 .cap-evidence{padding-bottom:42px}
 .cap-table,.cap-table tbody{display:block}.cap-table colgroup{display:none}
 .cap-table tr{display:block;border:1px solid #cec7bb;border-bottom:0;padding:20px}.cap-table tr:last-child{border-bottom:1px solid #cec7bb}
 .cap-table th,.cap-table td{display:block;border:0;padding:0;width:100%}
 .cap-table th{font-size:19px;margin-bottom:10px}
 .cap-table .cap-proof{border-top:1px solid var(--rule);padding-top:14px;margin-top:18px;font-size:14px}
 .capabilities-page .footer-links{gap:18px}
}
