.problem-flow{background:#f6f5f2;color:#14271e;padding:110px 32px;scroll-margin-top:80px}.problem-inner{max-width:1280px;margin:auto}.problem-eyebrow{font-size:11px;font-weight:650;letter-spacing:.2em;color:#6c706b;margin:0 0 24px}.problem-flow h2{font-size:clamp(34px,4.1vw,59px);font-weight:450;letter-spacing:-.045em;line-height:1.13;margin:0}.problem-flow h2>span{font-family:Georgia,serif;font-weight:400;color:#14271e;letter-spacing:-.04em}.problem-intro{max-width:590px;font-size:17px;line-height:1.7;color:#6c706b;margin:28px 0 48px}.procedure-map{background:#fff;border:1px solid #dedfd9;border-radius:24px;box-shadow:0 20px 60px #14271e06;overflow:hidden}.procedure-map-header{padding:34px 36px 26px;display:flex;justify-content:space-between;align-items:center;gap:24px}.procedure-map-header .problem-eyebrow{font-size:10px;margin-bottom:10px}.procedure-map h3{font-size:23px;letter-spacing:-.035em;font-weight:500;margin:0}.procedure-switch{display:flex;padding:4px;border:1px solid #dedfd9;border-radius:40px;background:#f6f5f2;flex-shrink:0}.procedure-switch button{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:11px 17px;border-radius:30px;color:#6c706b;font-size:13px;cursor:pointer;transition:background .2s,color .2s}.procedure-switch button[aria-pressed=true]{background:#14271e;color:#fff;box-shadow:0 2px 6px #14271e15}.procedure-stages{display:grid;grid-template-columns:6fr 1fr 1fr;gap:12px;margin:10px 36px 22px;color:#6c706b;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.procedure-stages span{border-bottom:1px solid #dedfd9;padding-bottom:10px}.procedure-track{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));padding:0 24px 30px;position:relative}.procedure-track:before{content:'';position:absolute;top:27px;left:7%;right:7%;height:1px;background:#dedfd9}.procedure-step{position:relative;display:flex;align-items:center;flex-direction:column;border:0;background:none;cursor:pointer;padding:0 4px;color:#14271e}.procedure-node{display:grid;place-items:center;height:56px;width:56px;border-radius:50%;border:1px solid #dedfd9;background:#f6f5f2;color:#6c706b;font-size:14px;transition:transform .2s,background .2s,box-shadow .2s}.procedure-step[data-clinician=true] .procedure-node{background:#14271e;color:#fff;border-color:#14271e}.procedure-step:hover .procedure-node{transform:translateY(-4px)}.procedure-step[aria-pressed=true] .procedure-node{box-shadow:0 0 0 5px #dedfd9;border-color:#14271e;background:#14271e;color:#fff}.procedure-step-name{font-size:13px;font-weight:600;margin-top:18px}.procedure-role{font-size:11px;color:#6c706b;line-height:1.4;max-width:110px;margin-top:6px;min-height:32px}.procedure-map[data-mode=rounds] .procedure-step:not([data-clinician=true]) .procedure-node{background:#14271e;color:#fff;border-color:#14271e}.procedure-detail{margin:0 36px 24px;padding:26px;min-height:158px;background:#f6f5f2;border:1px solid #dedfd9;border-radius:14px;display:flex;align-items:flex-start;gap:20px}.procedure-detail-icon{background:#e9e9e4;color:#14271e;width:46px;height:46px;display:grid;place-items:center;border-radius:12px;flex-shrink:0}.procedure-detail-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#6c706b;margin:0 0 7px}.procedure-detail h4{font-size:19px;font-weight:500;letter-spacing:-.025em;margin:0 0 8px}.procedure-detail-copy{font-size:14px;color:#6c706b;line-height:1.65;margin:0;max-width:780px}.procedure-detail-index{font-size:11px;color:#6c706b;margin-left:auto;white-space:nowrap}.procedure-map-footer{padding:0 36px 26px;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:#6c706b}.procedure-map-footer p{margin:0}.procedure-map-footer a{display:flex;align-items:center;gap:7px;color:#14271e;text-decoration:none}.problem-flow button:focus-visible,.problem-flow a:focus-visible{outline:2px solid #14271e;outline-offset:5px}
@media(max-width:850px){.problem-flow{padding:72px 22px}.procedure-map-header{align-items:flex-start;flex-direction:column;padding:26px 22px}.procedure-stages{display:none}.procedure-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 4px;padding:10px 14px 28px}.procedure-track:before{display:none}.procedure-detail{margin:0 20px 20px;padding:20px}.procedure-map-footer{padding:0 22px 24px;flex-wrap:wrap}.procedure-step-name{margin-top:12px}.procedure-detail-index{display:none}}
@media(max-width:480px){.problem-flow{padding:60px 16px}.problem-flow h2{font-size:34px}.problem-intro{font-size:15px}.procedure-map{border-radius:18px}.procedure-node{width:44px;height:44px}.procedure-step-name{font-size:11px}.procedure-role{font-size:10px}.procedure-detail{gap:12px;margin:0 14px 20px;padding:16px}.procedure-detail-icon{width:34px;height:34px}.procedure-detail h4{font-size:17px}.procedure-detail-copy{font-size:13px}.procedure-map h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.procedure-node,.procedure-switch button{transition:none}}

/* Restore the approved headline colors. */
.problem-flow h2{color:#172822}
.problem-flow h2>span{color:#54715e;font-weight:400}

/* Restore the soft green journey palette from the approved reference. */
.procedure-map{border-color:#dfe5dd}
.procedure-map .problem-eyebrow{color:#537565}
.procedure-map h3{color:#172822}
.procedure-switch{background:#f6f7f4;border-color:#e4e8e2}
.procedure-switch button{color:#6c7770}
.procedure-switch button[aria-pressed=true]{background:#203e31;color:#fff}
.procedure-stages{color:#829085}
.procedure-stages span{border-color:#e3e8e1}
.procedure-track:before{background:#dce4da}
.procedure-step{color:#243a2d}
.procedure-node{background:#f6f8f3;border-color:#d6dfd3;color:#778570}
.procedure-step[data-clinician=true] .procedure-node{background:#20372c;color:#fff;border-color:#20372c}
.procedure-step[aria-pressed=true] .procedure-node{box-shadow:0 0 0 5px #e6eddf;background:#dce8cf;border-color:#6b8f65;color:#244128}
.procedure-map[data-mode=rounds] .procedure-step:not([data-clinician=true]) .procedure-node{background:#dce8cf;color:#335b3f;border-color:#a7c499}
.procedure-role{color:#7b867c}
.procedure-detail{background:#f5f7f1;border-color:#e7ebdf}
.procedure-detail-icon{background:#e6eddc;color:#4c6e49}
.procedure-detail-label{color:#708269}
.procedure-detail-copy{color:#6c7668}
.procedure-detail-index{color:#8a967e}

.procedure-map[data-mode=today] .procedure-step[aria-pressed=true]:not([data-clinician=true]) .procedure-node{background:#fff;color:#243a2d;border-color:#9da69c;box-shadow:none}

/* Phase widths align with the eight procedure steps: 2 / 1 / 3 / 1 / 1. */
.procedure-stages{grid-template-columns:2fr 1fr 3fr 1fr 1fr;gap:12px;margin-left:24px;margin-right:24px;text-align:center;font-weight:600;color:#92958f;letter-spacing:.07em}
.procedure-stages span{padding-bottom:12px;border-color:#dedfd9}
@media(max-width:850px){.procedure-stages{display:none}}

/* Roles inside the nodes make the staffing comparison visible at a glance. */
.procedure-node{width:92px;height:92px;font-size:13px;font-weight:600;letter-spacing:-.025em}
.procedure-track:before{top:46px}
@media(min-width:851px) and (max-width:1100px){.procedure-node{width:76px;height:76px;font-size:11px}.procedure-track:before{top:38px}}
@media(max-width:850px){.procedure-node{width:80px;height:80px;font-size:12px}}
@media(max-width:480px){.procedure-node{width:62px;height:62px;font-size:10px}.procedure-track{padding-left:8px;padding-right:8px;column-gap:0}.procedure-step{padding:0}}

.procedure-map[data-mode=today] .procedure-step[data-step="5"] .procedure-node{font-size:10px;line-height:1.35;padding:8px 3px;text-align:center;display:flex;align-items:center;justify-content:center}
@media(min-width:851px) and (max-width:1100px){.procedure-map[data-mode=today] .procedure-step[data-step="5"] .procedure-node{font-size:8px}}
@media(max-width:480px){.procedure-map[data-mode=today] .procedure-step[data-step="5"] .procedure-node{font-size:7px;padding:5px 1px}}

/* Four agents, with physician consult and procedure preserved. */
.procedure-step[hidden]{display:none}
.procedure-map[data-mode=rounds] .procedure-step[data-step="0"],.procedure-map[data-mode=rounds] .procedure-step[data-step="3"]{grid-column:span 2}
.procedure-map[data-mode=rounds] .procedure-node{padding:10px 6px;font-size:12px;line-height:1.3;text-align:center}
@media(max-width:850px){.procedure-map[data-mode=rounds] .procedure-track{grid-template-columns:repeat(3,minmax(0,1fr))}.procedure-map[data-mode=rounds] .procedure-step[data-step="0"],.procedure-map[data-mode=rounds] .procedure-step[data-step="3"]{grid-column:auto}.procedure-map[data-mode=rounds] .procedure-node{width:88px;height:88px;font-size:11px}}
@media(max-width:380px){.procedure-map[data-mode=rounds] .procedure-node{width:76px;height:76px;font-size:10px}}

/* Today: intake and history happen within the consult phase. */
.procedure-map[data-mode=today] .procedure-stages{grid-template-columns:3fr 3fr 1fr 1fr}
.procedure-map[data-mode=today] .procedure-stages span:first-child{display:none}
.procedure-map[data-mode=today] .procedure-step[aria-pressed=true]:not([data-clinician=true]) .procedure-node{background:#f6f8f3;color:#778570;border-color:#d6dfd3;box-shadow:none}

/* Even spacing for the six Rounds steps; no connector before the first node. */
.procedure-map[data-mode=rounds] .procedure-track{grid-template-columns:repeat(6,minmax(0,1fr))}
.procedure-map[data-mode=rounds] .procedure-step[data-step="0"],.procedure-map[data-mode=rounds] .procedure-step[data-step="3"]{grid-column:auto}
.procedure-map[data-mode=rounds] .procedure-stages{grid-template-columns:1fr 1fr 2fr 1fr 1fr}
.procedure-map[data-mode=rounds] .procedure-track:before{left:calc(24px + (100% - 48px)/12);right:calc(24px + (100% - 48px)/12)}
@media(max-width:850px){.procedure-map[data-mode=rounds] .procedure-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 12px}.procedure-map[data-mode=rounds] .procedure-track:before{display:none}}
