/* ---------- 3. Benchmark ---------- */
.s3{display:grid;grid-template-columns:1140px 1fr;gap:28px;align-items:start}
#s3 .sh{margin-bottom:16px}
#s3 .sh h1{font-size:32px}
#s3 .sh p{font-size:16px}
.metrics{margin-top:14px;display:grid;gap:8px}
.metric{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:center;padding:8px 14px;border-radius:14px;border:1px solid var(--line);background:var(--white);transition:background .15s}
.metric:hover{background:var(--sky-2)}
.metric .mn{font-size:14px;font-weight:500;color:var(--navy);line-height:1.35}
.metric .mn small{display:inline-block;font-weight:400;color:var(--slate);font-size:12px;margin-top:4px}
.metric .mn small+small{margin-left:10px}
.bar-wrap{position:relative;height:94px}
.bar{position:absolute;left:3%;right:3%;top:57px;height:14px;border-radius:8px;background:linear-gradient(90deg,#E4805F 0%,#F2C94C 50%,#57B978 100%)}
.tick{position:absolute;top:51px;width:2px;height:26px;background:rgba(23,54,93,.6);transform:translateX(-50%);border-radius:1px}
.tick-lb{position:absolute;top:0;transform:translateX(-50%);font-size:12px;font-weight:500;color:var(--slate);white-space:nowrap}
.tick-v{position:absolute;top:77px;transform:translateX(-50%);font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap}
.mark{position:absolute;top:43px;transform:translateX(-50%);width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-top:14px solid var(--blue);filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.mark-lb{position:absolute;top:14px;transform:translateX(-50%);text-align:center;font-size:13px;font-weight:600;color:var(--blue);line-height:1.15;white-space:nowrap}
.mark.cmp{border-top-color:#B4436C;border-left-width:6px;border-right-width:6px;border-top-width:10px;top:47px}
.mark-lb.cmp{color:#B4436C;font-weight:500;font-size:12px}
.q{display:block;width:fit-content;margin-top:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap}
.q.top{background:#E3F5E8;color:#166534}
.q.above{background:var(--sky);color:var(--blue)}
.q.median,.q.below{background:#FFF1D6;color:#8A5A00}
.q.bottom{background:#FDE4E4;color:#9F2A2A}
.mnote{grid-column:1/-1;font-size:12px;color:var(--slate);margin-top:-6px}
.src{margin-top:16px;font-size:12.5px;color:var(--slate);text-align:right}
