/* A delivery story with visible work, real evidence and a compact stage navigator. */
.delivery { background: linear-gradient(145deg,#edf3f6,#e7eff3 76%,#f2f6f7); }
.delivery::after { content:none; }
.delivery .section-heading { margin-bottom: 44px; }
.delivery-line { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px; margin-bottom:35px; }
.delivery-line::before { left:0; right:0; top:22px; bottom:auto; width:auto; height:1px; background:#c0d0db; }
.delivery-step { min-height:0; padding:0 0 18px; position:relative; text-align:left; }
.delivery .step-node { position:relative; inset:auto; width:44px; height:44px; font-size:11px; background:#edf3f6; color:#4e6a7c; box-shadow:none; }
.delivery .delivery-step.active .step-node { background:var(--brand); color:#fff; box-shadow:0 0 0 6px #cc373210; }
.delivery-step-title { display:block; font-size:16px; font-weight:550; margin:21px 0 8px; line-height:1.5; }
.delivery-step-short { display:block; font-size:11px; color:#6e8391; line-height:1.7; }
.delivery-step.active .delivery-step-title { color:var(--brand); }
.delivery-workspace { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:clamp(28px,5vw,70px); border-top:1px solid #bdced9; padding-top:35px; align-items:start; }
.delivery-story { min-width:0; }
.delivery-kicker { display:block; font:500 9px/1.6 var(--font-latin); letter-spacing:.12em; color:#b04b45; margin-bottom:12px; }
.delivery-story>h3 { font-size:clamp(23px,2vw,30px); font-weight:540; line-height:1.5; letter-spacing:-.025em; margin-bottom:15px; }
.delivery-story>p { font-size:13px; line-height:1.95; color:#597180; }
.delivery-tasks { list-style:none; padding:0; margin:22px 0 0; }
.delivery-tasks li { display:grid; grid-template-columns:23px minmax(0,1fr); gap:12px; padding:15px 0; border-top:1px solid #ccdae3; }
.delivery-task-number { padding-top:3px; font:10px/1.8 var(--font-latin); color:#8b9da7; }
.delivery-tasks h4 { font-size:14px; font-weight:550; color:#314e60; line-height:1.6; margin-bottom:4px; }
.delivery-tasks p { font-size:12px; line-height:1.9; color:#637a89; }
.delivery-focus { display:grid; grid-template-columns:58px minmax(0,1fr); gap:10px; border-left:2px solid #c2574c; background:linear-gradient(90deg,#dce7ed80,transparent); margin-top:14px; padding:12px 15px; }
.delivery-focus>span { font-size:11px; font-weight:550; color:#a8453d; padding-top:2px; }
.delivery-focus>p { font-size:11px; line-height:1.95; color:#5d7483; }
.delivery-visual { margin:0; min-width:0; padding-top:4px; }
.delivery-photo { position:relative; display:block; width:100%; padding:0; aspect-ratio:1.35; border-radius:6px; overflow:hidden; background:#e2eaef; cursor:zoom-in; }
.delivery-photo>img { width:100%; height:100%; object-fit:cover; transition:transform .65s var(--ease); }
.delivery-photo.is-drawing>img { object-fit:contain; padding:12px; }
.delivery-photo::after { content:""; position:absolute; inset:60% 0 0; background:linear-gradient(transparent,#1c364b7a); pointer-events:none; }
.delivery-photo.is-drawing::after { background:linear-gradient(transparent,#b8cbdac4); }
.delivery-photo-open { position:absolute; right:17px; top:17px; width:36px; height:36px; display:grid; place-items:center; border-radius:50%; border:1px solid #ffffffa3; background:#ffffff69; color:#294452; backdrop-filter:blur(7px); }
.delivery-photo-open>.hd-icon { width:18px; height:18px; }
.delivery-photo-label { position:absolute; bottom:20px; left:21px; right:21px; z-index:1; font-size:11px; color:#fff; text-align:left; text-shadow:0 1px 8px #17324666; }
.delivery-photo.is-drawing .delivery-photo-label { color:#294452; text-shadow:none; }
.delivery-visual figcaption { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding-top:17px; }
.delivery-visual figcaption p { font-size:11px; line-height:1.8; color:#6b808f; }
.delivery-visual .line-link { flex-shrink:0; font-size:11px; gap:9px; min-height:32px; }
.delivery-visual .line-link .hd-icon { width:15px; height:15px; }
.delivery-evidence { border-top:1px solid #bcced9; margin-top:52px; padding-top:33px; }
.delivery-evidence-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:25px; }
.delivery-evidence-heading h3 { font-size:24px; line-height:1.5; font-weight:530; letter-spacing:-.02em; }
.delivery-evidence-heading>p { font-size:11px; line-height:1.9; color:#6a808f; }
.delivery-records { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.delivery-record { display:block; min-width:0; padding:21px 0 18px; border-top:1px solid #aebfca; transition:border-color .2s; }
.delivery-record-top { display:flex; justify-content:space-between; align-items:center; color:#8194a0; font-size:10px; }
.delivery-record-top .hd-icon { width:18px; height:18px; color:#6c8594; transition:transform .25s; }
.delivery-record h4 { font-size:15px; font-weight:540; color:#314c5c; line-height:1.7; margin:9px 0 20px; }
.delivery-record dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:0; }
.delivery-record dl>div { display:flex; flex-direction:column-reverse; gap:7px; }
.delivery-record dd { margin:0; font-size:clamp(22px,2.2vw,29px); line-height:1.3; font-weight:490; letter-spacing:-.035em; color:#344e5e; }
.delivery-record dt { font-size:10px; line-height:1.7; color:#738894; }
.delivery-record>p { margin-top:18px; font-size:10px; line-height:1.8; color:#778d9b; }
.delivery-record-note { font-size:10px; line-height:1.9; color:#8a9ca6; margin-top:9px; }
.delivery-conversation { display:flex; justify-content:space-between; align-items:center; gap:25px; border-top:1px solid #c4d3dd; margin-top:32px; padding-top:22px; }
.delivery-conversation p { font-size:12px; line-height:1.8; color:#607989; }
.delivery-conversation p br { display:none; }
.delivery-conversation .line-link { font-size:12px; min-height:44px; }
@media(hover:hover) and (pointer:fine) {
  .delivery-photo:hover>img { transform:scale(1.025); }
  .delivery-record:hover { border-color:var(--brand); }
  .delivery-record:hover .hd-icon { color:var(--brand); transform:translate(3px,-3px); }
}
@media(max-width:960px) {
  .delivery .section-heading { margin-bottom:30px; }
  .delivery-line { gap:12px; }
  .delivery-step-title { font-size:14px; }
  .delivery-step-short { font-size:10px; }
  .delivery-workspace { grid-template-columns:1fr 1fr; gap:28px; padding-top:27px; }
  .delivery-photo { aspect-ratio:1; }
  .delivery-visual figcaption { flex-direction:column; gap:8px; }
  .delivery-focus { display:block; }
  .delivery-focus>span { display:block; margin-bottom:5px; }
  .delivery-records { gap:21px; }
  .delivery-record h4 { font-size:14px; min-height:48px; }
  .delivery-record dl { gap:10px; }
}
@media(max-width:760px) {
  .delivery-line { display:flex; flex-direction:row; gap:20px; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#b6c7d1 transparent; padding:6px 2px 13px; margin-bottom:20px; scroll-snap-type:x proximity; }
  .delivery-line::before { left:2px; right:0; top:28px; width:730px; }
  .delivery-step { flex:0 0 130px; padding:0; min-height:0; scroll-snap-align:start; }
  .delivery-step-title { font-size:14px; margin:14px 0 5px; }
  .delivery-step-short { font-size:10px; }
  .delivery-workspace { grid-template-columns:1fr; gap:24px; }
  .delivery-story>h3 { font-size:24px; }
  .delivery-story>p { font-size:13px; line-height:1.95; }
  .delivery-tasks { margin-top:19px; }
  .delivery-tasks li { padding:13px 0; }
  .delivery-tasks p { font-size:12px; }
  .delivery-focus { margin-top:12px; }
  .delivery-photo { aspect-ratio:1.6; }
  .delivery-visual figcaption { flex-direction:row; gap:15px; padding-top:12px; }
  .delivery-evidence { margin-top:34px; padding-top:26px; }
  .delivery-evidence-heading { display:block; margin-bottom:20px; }
  .delivery-evidence-heading h3 { font-size:22px; }
  .delivery-evidence-heading>p { margin-top:12px; font-size:11px; }
  .delivery-records { grid-template-columns:1fr; gap:3px; }
  .delivery-record { padding:18px 0 21px; }
  .delivery-record h4 { min-height:0; margin:7px 0 16px; font-size:15px; }
  .delivery-record dl { gap:20px; }
  .delivery-record dd { font-size:27px; }
  .delivery-record dt { font-size:11px; }
  .delivery-record>p { margin-top:13px; font-size:10px; }
  .delivery-conversation { align-items:flex-start; margin-top:23px; padding-top:20px; gap:16px; }
  .delivery-conversation p { font-size:11px; }
  .delivery-conversation p br { display:block; }
  .delivery-conversation .line-link { font-size:11px; flex-shrink:0; }
}
@media(max-width:359px) {
  .delivery-line { gap:16px; }
  .delivery-step { flex-basis:120px; }
  .delivery-story>h3 { font-size:22px; }
  .delivery-visual figcaption,.delivery-conversation { flex-direction:column; gap:9px; }
}
@media(prefers-reduced-motion:reduce) {
  .delivery-photo>img,.delivery-record,.delivery-record-top .hd-icon { transition:none; }
  .delivery-photo:hover>img,.delivery-record:hover .hd-icon { transform:none; }
}
