.project-timeline-widget{padding:26px 24px 24px;border:1px solid #d9e5d7;border-radius:18px;background:#fff;box-shadow:0 14px 32px rgba(9,43,25,.06)}
.project-timeline-widget h3{margin:0;color:var(--deep,#0b2416);font-size:22px;line-height:1.2}
.project-timeline-intro{margin:9px 0 22px;color:var(--muted,#5f6f65);font-size:14px;line-height:1.5}
.project-timeline--detailed{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.project-timeline--detailed:before{content:"";position:absolute;top:17px;left:17px;right:17px;height:1px;background:#cfe1d2}
.project-timeline--detailed li{position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;padding-right:18px}
.project-timeline--detailed li:last-child{padding-right:0}
.project-timeline-step{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border:1px solid #76c658;border-radius:50%;background:#f5faef;color:#08732c;font-size:14px;font-weight:800}
.project-timeline--detailed li:not(:first-child) .project-timeline-step{margin-left:0}
.project-timeline-value{display:block;color:#08732c;font-size:21px;line-height:1.1;letter-spacing:-.02em}
.project-timeline-label{display:block;margin-top:7px;color:#425248;font-size:13px;line-height:1.35}
.project-timeline-note{margin:22px 0 0;padding-top:16px;border-top:1px solid #e4ece3;color:#718078;font-size:12px;line-height:1.45}
@media (max-width:700px){
  .project-timeline-widget{padding:22px 18px 20px;border-radius:16px}
  .project-timeline-widget h3{font-size:20px}
  .project-timeline-intro{font-size:13px;margin-bottom:18px}
  .project-timeline--detailed{display:grid;grid-template-columns:1fr;gap:16px;padding-left:0}
  .project-timeline--detailed:before{top:17px;bottom:17px;left:17px;right:auto;width:1px;height:auto}
  .project-timeline--detailed li,.project-timeline--detailed li:last-child{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:13px;padding:0}
  .project-timeline-value{font-size:19px}
  .project-timeline-label{margin-top:5px;font-size:13px}
  .project-timeline-note{margin-top:18px;padding-top:14px}
}

/* The page's legacy aside/timeline rules were intended for a dark card. Keep
   the detailed timeline's own light surface and text palette on every object. */
.project-detail-story aside.project-timeline-widget{padding:26px 24px 24px;border:1px solid #d9e5d7;border-radius:18px;background:#fff;color:#122016;box-shadow:0 14px 32px rgba(9,43,25,.06)}
.project-detail-story aside.project-timeline-widget h3{margin:0;color:var(--deep,#0b2416);font-size:22px;line-height:1.2}
.project-detail-story aside.project-timeline-widget .project-timeline-intro,.project-detail-story aside.project-timeline-widget .project-timeline-note{color:#5f6f65;font-size:14px;line-height:1.5}
.project-detail-story aside.project-timeline-widget .project-timeline-intro{margin:9px 0 22px}
.project-detail-story aside.project-timeline-widget .project-timeline-note{margin:22px 0 0;padding-top:16px;border-top:1px solid #e4ece3;font-size:12px;line-height:1.45}
.project-detail-story aside.project-timeline-widget .project-timeline--detailed .project-timeline-step{display:flex;align-items:center;justify-content:center;gap:0;width:34px;height:34px;padding:0;border:1px solid #76c658;border-radius:50%;background:#f5faef;color:#08732c;font-size:14px;font-weight:800}
.project-detail-story aside.project-timeline-widget .project-timeline--detailed .project-timeline-value{display:block;color:#08732c;font-size:21px;line-height:1.1;letter-spacing:-.02em}
.project-detail-story aside.project-timeline-widget .project-timeline--detailed .project-timeline-label{display:block;margin-top:7px;padding:0;border:0;color:#425248;font-size:13px;line-height:1.35}
@media (max-width:700px){
  .project-detail-story aside.project-timeline-widget{padding:22px 18px 20px;border-radius:16px}
  .project-detail-story aside.project-timeline-widget h3{font-size:20px}
  .project-detail-story aside.project-timeline-widget .project-timeline-intro{font-size:13px;margin-bottom:18px}
  .project-detail-story aside.project-timeline-widget .project-timeline--detailed .project-timeline-value{font-size:19px}
  .project-detail-story aside.project-timeline-widget .project-timeline--detailed .project-timeline-label{margin-top:5px;font-size:13px}
  .project-detail-story aside.project-timeline-widget .project-timeline-note{margin-top:18px;padding-top:14px}
}
