.delivery-intro-actions { margin-top:30px; }
.delivery-roadmap { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; list-style:none; padding:0; margin:0 0 40px; }
.delivery-roadmap a { display:flex; align-items:center; gap:13px; min-height:64px; padding:15px 19px; border:1px solid var(--line); border-radius:7px; font-size:.81rem; font-weight:600; text-decoration:none; background:var(--theme-soft,#edf1e5); }
.delivery-roadmap a:hover { border-color:var(--theme-accent,var(--forest)); text-decoration:underline; }
.delivery-roadmap span { color:var(--theme-quiet,#506b32); font-size:.66rem; }
.delivery-stages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.delivery-stage { scroll-margin-top:115px; }
.delivery-stage h3 { font-size:1.55rem; line-height:1.2; }
.delivery-stage dl { margin:25px 0 0; padding-top:23px; border-top:1px solid var(--line); }
.delivery-stage dt { font-size:.73rem; font-weight:650; color:var(--theme-accent,var(--forest)); margin-bottom:7px; }
.delivery-stage dd { font-size:.84rem; color:var(--muted); line-height:1.8; margin:0 0 18px; }
.delivery-stage dd:last-child { margin-bottom:0; }
.delivery-stage .text-link { margin-top:23px; font-size:.78rem; }
.delivery-note { font-size:.83rem; margin-top:25px; max-width:760px; }
.delivery-collaboration { align-items:start; }
.delivery-collaboration .text-link,.delivery-detail-link { margin-top:28px; }
@media(max-width:800px) {
    .delivery-roadmap { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .delivery-collaboration { grid-template-columns:1fr; gap:35px; }
    .delivery-stage { padding:25px; }
}
@media(max-width:640px) {
    .delivery-roadmap { gap:10px; }
    .delivery-roadmap a { padding:12px; gap:8px; font-size:.72rem; }
    .delivery-stages { grid-template-columns:1fr; }
    .delivery-stage { scroll-margin-top:100px; }
    .delivery-stage h3 { font-size:1.4rem; }
}
@media print {
    .delivery-roadmap { display:none; }
    .delivery-stages { display:block; }
    .delivery-stage { margin-bottom:20px; break-inside:avoid; }
}
