/* Existing cream / burgundy palette, with a graphite editorial pause. */
.demo-report dt,.demo-report dd{min-width:0;overflow-wrap:anywhere}
.commercial-wayfinding{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.commercial-wayfinding p{margin:0;color:var(--muted);font-size:1rem}.commercial-wayfinding a{display:inline-flex;align-items:center;gap:28px;font-size:1rem;min-height:44px;color:var(--accent)}.commercial-wayfinding a span{font-size:24px}
.client-story{background:var(--ink);color:var(--paper);padding-block:clamp(48px,6vw,88px)}.client-story-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,108px);align-items:center}.client-story-copy{max-width:510px}.client-story .eyebrow{color:var(--stone);font-size:.875rem}.client-story h2{font-size:clamp(32px,3.5vw,52px);line-height:1.45}.client-story h2 em{color:var(--stone)}.client-story-copy>p:not(.eyebrow){font-size:1.0625rem;color:var(--paper);line-height:1.9;margin:24px 0}.client-story-copy>p.client-story-detail{font-size:.9375rem;color:#c9c1b8;max-width:43ch;margin-top:0}.client-story .text-link{font-size:.875rem;margin-top:10px;color:var(--paper);border-color:#837a70}
.client-preview{min-width:0;background:var(--paper);color:var(--ink);padding:26px 32px 18px;border:1px solid var(--stone)}.client-preview-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #b6a69788;padding-bottom:19px}.client-preview-brand{font:700 16px/1.5 Arial,sans-serif;letter-spacing:2px}.client-preview-brand small{display:block;font:400 12px/1.8 Arial,sans-serif;letter-spacing:0;color:var(--muted);margin-top:3px}.demo-label{font-size:12px;color:var(--accent);border:1px solid #7d404755;padding:3px 9px;letter-spacing:.04em}.client-preview-heading{margin:22px 0 16px}.client-preview-heading p{font-size:.875rem;margin:0 0 5px;color:var(--muted)}.client-preview-heading h3{font-size:clamp(20px,2vw,26px);font-weight:400;line-height:1.6}.client-demo-tabs{display:flex;border-bottom:1px solid var(--line);gap:22px}.client-demo-tabs[hidden]{display:none}.client-demo-tabs button{font:inherit;font-size:.875rem;border:0;background:none;color:var(--muted);padding:10px 0 12px;min-height:44px;border-bottom:2px solid transparent;cursor:pointer}.client-demo-tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent)}.client-demo-tabs button:focus-visible,.client-demo-panel:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.client-demo-panel{min-height:292px;padding:12px 0 0}.client-demo-panel[hidden]{display:none}
.demo-timeline{list-style:none;margin:0;padding:0}
.demo-timeline>li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:14px;position:relative;padding:0}
.demo-timeline>li:not(:last-child)::after{content:'';position:absolute;top:30px;bottom:-20px;left:10px;width:1px;background:var(--line)}
.demo-track{position:relative;z-index:1;display:grid;place-items:center;width:22px;height:22px;margin-top:19px;border:1px solid var(--stone);border-radius:50%;background:var(--paper);font-size:12px;line-height:1}
.is-complete .demo-track{color:var(--paper);background:var(--accent);border-color:var(--accent)}
.is-current .demo-track{border:6px solid var(--accent)}
.demo-stage{min-width:0;border-bottom:1px solid #b6a69766}
.demo-timeline>li:last-child .demo-stage{border-bottom:0}
.demo-stage summary{display:grid;grid-template-columns:minmax(0,1fr) auto 12px;align-items:center;gap:12px;min-height:60px;padding:12px 0;cursor:pointer;list-style:none}
.demo-stage summary::-webkit-details-marker{display:none}
.demo-stage summary::after{content:'+';color:var(--accent);font:400 20px/1 Arial,sans-serif}
.demo-stage[open] summary::after{content:'−'}
.demo-stage summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.demo-stage summary:hover strong{color:var(--accent)}
.demo-timeline strong,.demo-documents strong{display:block;font-size:.9375rem;font-weight:500;line-height:1.7}
.demo-documents small{display:block;font-size:13px;line-height:1.7;color:var(--muted);margin-top:3px}
.demo-state{font-size:.875rem;color:var(--muted)}
.is-current .demo-state{color:var(--accent);font-weight:600}
.demo-timeline-hint{font-size:13px;color:var(--muted);margin:5px 0 3px}
.demo-stage-body{padding:0 0 20px;font-size:.875rem;line-height:1.8;overflow-wrap:anywhere}
.demo-owner{margin:0 0 12px;color:var(--muted)}
.demo-tasks{list-style:none;margin:0 0 14px;padding:0}
.demo-tasks li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;padding:5px 0}
.demo-task-state{color:var(--accent);font-size:.875rem}
.demo-comparison{display:grid;grid-template-columns:1fr 1fr;margin:0;border-block:1px solid #b6a69766}
.demo-comparison>div{min-width:0;padding:12px 14px 12px 0}
.demo-comparison>div+div{border-left:1px solid #b6a69766;padding-left:14px}
.demo-comparison dt{color:var(--muted);margin-bottom:4px;font-size:.875rem}
.demo-comparison dd{margin:0}
.demo-decision{margin-top:14px;padding:12px 15px;border-left:2px solid var(--accent);background:#7d40470a}
.demo-decision>span{color:var(--accent);font-size:.875rem}
.demo-decision p{margin:4px 0;font-size:.9375rem}
.demo-decision small{color:var(--muted);font-size:13px;display:block}
.demo-evidence{margin:12px 0 0;color:var(--muted);font-size:13px}
.client-preview-note{font-size:12px;color:var(--muted);line-height:1.7;border-top:1px solid #b6a69788;padding-top:14px;margin:12px 0 0}
.demo-report{padding-top:7px}.demo-status-label{font-size:12px;color:var(--accent)}.demo-report h4{font-size:1rem;font-weight:500;margin:12px 0 8px}.demo-report dl{margin:0}.demo-report dl>div{display:grid;grid-template-columns:125px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid #b6a69755;font-size:.875rem;line-height:1.8}.demo-report dl>div:last-child{border-bottom:0}.demo-report dt{color:var(--muted)}.demo-report dd{margin:0}.demo-documents{list-style:none;padding:0;margin:0}.demo-documents li{display:flex;align-items:center;gap:16px;padding:17px 0;border-bottom:1px solid #b6a69755}.demo-file-type{flex-shrink:0;width:36px;height:44px;display:grid;place-items:center;border:1px solid var(--stone);color:var(--accent);font:500 10px/1 Arial,sans-serif}.demo-document-note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}
.page-home .home-method{padding-block:clamp(40px,5vw,64px)}.quality-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:38px;padding-top:28px;border-top:1px solid var(--line)}.quality-principles h3{font-size:1.125rem;font-weight:400;line-height:1.7;margin:0 0 12px}.quality-principles p{font-size:.9375rem;line-height:1.9;color:var(--muted);margin:0}
@media(max-width:1100px){.client-story-layout{grid-template-columns:1fr 1.2fr;gap:36px}.client-preview{padding:22px}.demo-timeline>li{column-gap:10px}.quality-principles{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:850px){.client-story-layout{grid-template-columns:1fr;gap:30px}.client-story-copy{max-width:640px}.client-story h2 br{display:none}.client-preview{max-width:680px;width:100%;justify-self:center}.client-story-copy>p:not(.eyebrow){margin:18px 0}.client-story-copy>p.client-story-detail{max-width:54ch}.commercial-wayfinding{align-items:start;flex-direction:column;gap:3px}}
@media(max-width:520px){.client-preview{padding:18px 16px}.client-demo-tabs{gap:20px}.client-demo-panel{min-height:332px}.demo-timeline>li{gap:0 10px}.demo-stage summary{grid-template-columns:minmax(0,1fr) 12px;gap:2px 8px;padding-block:12px}.demo-stage summary::after{grid-column:2;grid-row:1/3}.demo-state{grid-column:1}.demo-track{margin-top:17px}.demo-comparison{grid-template-columns:1fr}.demo-comparison>div{padding:10px 0}.demo-comparison>div+div{border-left:0;border-top:1px solid #b6a69766;padding-left:0}.demo-report dl>div{grid-template-columns:1fr;gap:2px;padding:10px 0}.quality-principles{gap:22px;grid-template-columns:1fr;margin-top:28px;padding-top:22px}.quality-principles article{padding-bottom:20px;border-bottom:1px solid #b6a69780}.quality-principles article:last-child{padding-bottom:0;border:0}.quality-principles h3{margin-bottom:6px}.commercial-wayfinding a{font-size:.9375rem;gap:12px;justify-content:space-between;width:100%}.client-story-copy .text-link{margin-top:0}}

/* A full-width project desk, with the editorial introduction above it. */
.client-story-layout{grid-template-columns:minmax(0,1fr);gap:36px}
.client-story-copy{display:grid;grid-template-columns:1.1fr 1fr;column-gap:clamp(32px,8vw,120px);max-width:none;align-items:start}
.client-story-copy>.eyebrow{grid-column:1/-1;margin-bottom:20px}
.client-story-copy h2{grid-column:1;grid-row:2/5;margin:0;line-height:1.3}
.client-story-copy>p:not(.eyebrow){grid-column:2;margin:0 0 12px;font-size:1rem;line-height:1.8}
.client-story-copy>p.client-story-detail{font-size:.875rem;max-width:48ch}
.client-story-copy>.text-link{grid-column:2;justify-self:start;margin:4px 0 0;min-height:44px}
.client-preview{width:100%;max-width:none;padding:24px 32px 18px;border:1px solid #b6a69780;box-shadow:0 20px 60px #00000012}
.client-preview-top{padding-bottom:16px}
.client-preview-brand small{display:inline;margin-left:16px;font-size:12px}
.client-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:20px 0}
.client-preview-heading h3{margin:0;font-size:clamp(22px,2.2vw,30px)}
.demo-current-summary{border-left:2px solid var(--accent);padding-left:16px;flex-shrink:0}
.demo-current-summary span{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}
.demo-current-summary strong{display:block;font-size:.9375rem;font-weight:500;color:var(--accent)}
.client-demo-tabs{gap:30px}
.client-demo-tabs button{padding-inline:4px;font-size:.9375rem}
.demo-timeline-hint{margin:3px 0 16px}
.demo-stage-title{display:none}
.demo-comparison{background:#ddd5cd45;border:0}
.demo-comparison>div{padding:14px 16px}
.demo-comparison>div+div{padding-left:16px;border-color:#b6a69766}
.demo-comparison dt{font-size:13px}
.demo-decision{padding:16px 18px;background:#7d404710;border-left:3px solid var(--accent)}
.demo-decision>span{font-weight:500}
.demo-decision p{font-size:1rem}
.demo-report h4{font-size:1.25rem}
.demo-report dl>div{grid-template-columns:minmax(150px,.4fr) 1fr;font-size:1rem;padding:18px 0}
.demo-documents li{padding:22px 0}
.demo-documents strong{font-size:1rem}
.demo-file-type{font-size:12px}
.demo-stage summary,.client-demo-tabs button{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
@media(prefers-reduced-motion:no-preference){.demo-stage[open] .demo-stage-body{animation:demo-detail-in .18s ease-out}@keyframes demo-detail-in{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}}
.client-preview-note{margin-top:20px;padding-top:14px}
@supports selector(details::details-content){
 @media(min-width:761px){
  .demo-timeline{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);grid-template-rows:repeat(5,minmax(76px,auto));column-gap:36px;align-items:start}
  .demo-timeline>li,.demo-stage,.demo-stage::details-content{display:contents}
  .demo-timeline>li::after,.demo-timeline .demo-track{display:none}
  .demo-stage summary{grid-column:1;grid-template-columns:minmax(0,1fr) 20px;align-self:stretch;align-content:center;gap:3px 12px;padding:14px 18px;border:1px solid transparent;border-bottom-color:#b6a69766;min-width:0}
  .demo-timeline>li:nth-child(1) summary{grid-row:1}
  .demo-timeline>li:nth-child(2) summary{grid-row:2}
  .demo-timeline>li:nth-child(3) summary{grid-row:3}
  .demo-timeline>li:nth-child(4) summary{grid-row:4}
  .demo-timeline>li:nth-child(5) summary{grid-row:5}
  .demo-stage summary strong{font-size:1rem}
  .demo-stage summary .demo-state{grid-column:1;font-size:13px;font-weight:400}
  .demo-stage summary::after{grid-column:2;grid-row:1/3;content:'+';text-align:center}
  .demo-stage[open] summary{background:#ddd5cd65;border-color:#b6a69788;border-left:3px solid var(--accent);padding-left:16px}
  .demo-stage[open] summary::after{content:'−'}
  .demo-stage[open] summary strong{color:var(--accent)}
  .demo-stage:not([open]) .demo-stage-body{display:none}
  .demo-stage[open] .demo-stage-body{display:block;grid-column:2;grid-row:1/6;border-left:1px solid #b6a69777;padding:6px 0 6px 32px;font-size:1rem;min-width:0}
  .demo-stage-title{display:block;font-size:1.35rem;font-weight:400;line-height:1.5;margin:0 0 8px}
  .demo-owner{font-size:.875rem;margin-bottom:20px}
  .demo-tasks{margin-bottom:18px}
  .demo-tasks li{padding:6px 0}
  .demo-task-state{align-self:center}
  .demo-timeline:not(:has(details[open]))::after{content:attr(aria-label);grid-column:2;grid-row:1/6;align-self:center;justify-self:center;color:var(--muted);font-size:1rem}
  .demo-report,.demo-documents{max-width:960px}
 }
}
@media(max-width:850px){
 .client-story-copy{grid-template-columns:1fr;gap:0}
 .client-story-copy>.eyebrow,.client-story-copy h2,.client-story-copy>p:not(.eyebrow),.client-story-copy>.text-link{grid-column:auto;grid-row:auto}
 .client-story-copy h2{margin-bottom:20px;max-width:18ch}
 .client-story-copy>p:not(.eyebrow){max-width:56ch}
 .client-preview{padding:22px}
}
@media(max-width:760px){
 .client-preview-heading{align-items:start;flex-direction:column;gap:16px}
 .demo-current-summary{padding-left:12px}
 .demo-stage[open]{padding-bottom:4px}
 .demo-stage-body{font-size:.9375rem}
 .demo-report dl>div{grid-template-columns:1fr;gap:4px}
 .demo-timeline-hint{margin-bottom:6px}
}
@media(max-width:520px){
 .client-story-layout{gap:28px}
 .client-preview{padding:20px 16px 16px}
 .client-preview-brand small{display:block;margin-left:0}
 .client-demo-tabs{gap:14px}
 .client-demo-tabs button{font-size:.875rem;padding-inline:2px}
 .demo-current-summary strong{font-size:.875rem}
 .demo-comparison>div,.demo-comparison>div+div{padding:12px}
 .demo-comparison>div+div{border-left:0;border-top:1px solid #b6a69766}
 .demo-decision{padding:12px}
 .demo-documents li{gap:12px}
}

/* Read-only subtask status and explicit sample deadlines. */
.demo-schedule-meta{display:flex;align-items:start;justify-content:space-between;gap:16px;margin:2px 0 18px}
.demo-schedule-meta .demo-timeline-hint{margin:0}
.demo-as-of{font-size:.875rem;line-height:1.7;text-align:right;margin:0;color:var(--ink)}
.demo-as-of>span{color:var(--muted);margin-right:6px}
.demo-as-of small{display:block;font-size:12px;color:var(--muted)}
.demo-tasks .demo-task{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid #b6a69755}
.demo-tasks .demo-task:first-child{padding-top:0}
.demo-task-mark{display:grid;place-items:center;width:18px;height:18px;margin-top:5px;border:1px solid #9b8a7b;border-radius:50%;font:12px/1 Arial,sans-serif;color:var(--accent)}
.task-complete .demo-task-mark{background:var(--accent);color:var(--paper);border-color:var(--accent)}
.task-current .demo-task-mark{border:5px solid var(--accent)}
.demo-task-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;min-width:0}
.demo-task-title{font-size:1rem;line-height:1.7}
.demo-task-content .demo-task-state{align-self:start;font-size:.875rem;line-height:1.7;white-space:normal}
.task-planned .demo-task-state{color:var(--muted)}
.task-current .demo-task-state{font-weight:600}
.demo-task-dates{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 24px;margin:0}
.demo-task-dates>div{display:flex;flex-wrap:wrap;gap:0 8px;align-items:baseline}
.demo-task-dates dt{font-size:13px;color:var(--muted)}
.demo-task-dates dd{margin:0;font-size:.875rem}
.demo-task-dates time{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:1000px){.demo-task-content{grid-template-columns:minmax(0,1fr)}.demo-task-content .demo-task-state{grid-column:1}.demo-task-dates{gap:4px 16px}}
@media(max-width:760px){.demo-schedule-meta{flex-direction:column;gap:8px}.demo-as-of{text-align:left}.demo-task-title{font-size:.9375rem}.demo-tasks .demo-task{gap:10px}}

/* A concise client report at first glance; the detailed demo opens on request. */
.client-preview{padding:28px clamp(20px,3vw,40px) 18px}
.client-preview-top{padding-bottom:12px}
.client-preview-heading{margin:18px 0 14px;align-items:end}
.client-preview-heading h3{font-size:clamp(22px,2.2vw,29px);line-height:1.45}
.client-report-date{margin:0;text-align:right;font-size:.875rem;line-height:1.7;color:var(--muted)}
.client-report-date time{color:var(--ink)}
.client-report-date small{display:block;font-size:.75rem;color:var(--muted)}
.client-report-overview{border-top:1px solid #b6a69788;padding-top:18px}
.client-report-progress-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;color:var(--muted);font-size:.875rem}
.client-report-progress-heading strong{color:var(--ink);font-size:.9375rem;font-weight:500}
.client-report-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:12px 0 13px;height:5px}
.client-report-bar span{background:#ddd5cd}.client-report-bar .is-done{background:var(--accent)}.client-report-bar .is-active{background:linear-gradient(90deg,var(--accent) 50%,#ddd5cd 50%)}
.client-report-progress .demo-current-summary{display:flex;align-items:baseline;gap:12px;border:0;padding:0}
.client-report-progress .demo-current-summary span{font-size:.875rem;margin:0;color:var(--muted)}
.client-report-progress .demo-current-summary strong{font-size:1.125rem;font-weight:500;color:var(--ink)}
.client-report-update{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px;border-top:1px solid #b6a69777;padding-top:18px}
.client-report-update>div+div{border-left:1px solid #b6a69777;padding-left:24px}
.client-report-update span,.client-report-decision span{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:5px}
.client-report-update p{font-size:1rem;line-height:1.7;margin:0;color:var(--ink)}
.client-report-decision{font-size:.9375rem;line-height:1.7;margin:20px 0 0;padding:11px 16px;background:#ddd5cd55;border-left:2px solid var(--accent)}
.client-report-decision span{display:inline;margin:0 8px 0 0;color:var(--accent)}
.client-report-details{margin-top:20px;border-top:1px solid #b6a69788}
.client-report-details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;min-height:52px;padding:12px 0;color:var(--accent);font-size:.9375rem}
.client-report-details>summary::-webkit-details-marker{display:none}
.client-report-details>summary span{font:400 22px/1 Arial,sans-serif}
.client-report-details[open]>summary span{transform:rotate(45deg)}
.client-report-details-body{padding:12px 0 6px;border-top:1px solid #b6a69755}
.client-report-details .client-demo-tabs{gap:24px}
.client-preview-note{margin-top:0;font-size:.75rem;line-height:1.7;border-top:1px solid #b6a69755;padding-top:12px}
@media(max-width:760px){.client-preview-heading{flex-direction:row;align-items:end}.client-report-update{gap:16px}.client-report-update>div+div{padding-left:16px}}
@media(max-width:520px){.client-preview{padding:20px 18px 14px}.client-preview-heading{align-items:start;gap:8px;flex-direction:column}.client-report-date{text-align:left}.client-report-date small{display:inline;margin-left:8px}.client-report-progress .demo-current-summary{display:block}.client-report-progress .demo-current-summary strong{display:block;margin-top:3px}.client-report-update{grid-template-columns:1fr;gap:12px}.client-report-update>div+div{border-left:0;border-top:1px solid #b6a69766;padding:12px 0 0}.client-report-decision{padding:11px 13px}.client-report-details .client-demo-tabs{gap:14px}}
