:root{
  --teal:#086860;
  --teal-deep:#0A4F48;
  --teal-bright:#0E8A7C;
  --orange:#F84800;
  --teal-tint:#E7F1EF;
  --teal-tint2:#F2F8F6;
  --ink:#1B2A27;
  --slate:#5E6F6B;
  --line:#E4EAE8;
  --white:#FFFFFF;
  --bg:#FBFCFC;
  --shadow:0 1px 2px rgba(10,79,72,.04), 0 10px 30px rgba(10,79,72,.07);
  --shadow-sm:0 1px 3px rgba(10,79,72,.06);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}

.util{background:var(--white);border-bottom:1px solid var(--line)}
.util .wrap{display:flex;justify-content:flex-end;align-items:center;height:46px;gap:18px;font-size:12px;color:var(--slate)}
.util b{color:var(--teal-deep)}

.hero{background:linear-gradient(180deg,#FFFFFF 0%,var(--bg) 100%);padding:52px 0 44px;text-align:center;border-bottom:1px solid var(--line)}
.hero .logo{height:74px;width:auto;margin:0 auto 22px;display:block}
.hero .eyebrow{font-size:13px;letter-spacing:4px;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:18px}
.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.05;font-weight:800;letter-spacing:-1px;color:var(--teal)}
.hero h1 .o{color:var(--orange)}
.hero p{margin:18px auto 0;font-size:16.5px;color:var(--slate);max-width:62ch}

main{padding-bottom:20px}
section{padding:30px 0 10px}
.sec-head{display:flex;align-items:baseline;gap:14px;margin:18px 0 20px}
.sec-head .n{font-size:13px;font-weight:800;color:var(--orange);font-variant-numeric:tabular-nums}
.sec-head h2{font-size:21px;color:var(--teal-deep);font-weight:800;letter-spacing:-.3px}
.sec-head .rule{flex:1;height:2px;background:linear-gradient(90deg,var(--line),transparent)}
.sec-note{font-size:14px;color:var(--slate);margin:-8px 0 18px;max-width:72ch}

.grid{display:grid;gap:18px}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}

.card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:box-shadow .2s,transform .2s}
.card h3{font-size:16px;color:var(--teal-deep);font-weight:700;margin-bottom:7px}
.card p{font-size:14px;color:var(--slate)}
.card .ic{width:40px;height:40px;border-radius:11px;background:var(--teal-tint);display:flex;align-items:center;justify-content:center;margin-bottom:15px}
a.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}

.qcard{background:var(--white);border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:14px;padding:24px 24px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.qcard .mark{font-family:Georgia,serif;font-size:42px;line-height:.6;color:var(--orange);font-weight:700;height:26px}
.qcard .qt{font-size:14.5px;color:var(--ink);line-height:1.62;margin:6px 0 16px;flex:1}
.qcard .slider{height:5px;width:64px;border-radius:3px;background:linear-gradient(90deg,var(--orange) 0 28%,var(--teal-tint) 28% 100%);position:relative;margin-bottom:14px}
.qcard .slider::before{content:"";position:absolute;left:24%;top:50%;width:9px;height:9px;border-radius:2px;background:var(--orange);transform:translateY(-2px) rotate(45deg)}
.qcard .who{font-size:13.5px;font-weight:800;color:var(--teal-deep);letter-spacing:.2px}
.qcard .who .path{color:var(--slate);font-weight:600;letter-spacing:0}
.qcard .src{font-size:11.5px;color:#94A29E;margin-top:5px}

.bars{display:flex;flex-direction:column;gap:15px}
.bar{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:16px}
.bar .lab{font-size:14px;color:var(--ink);font-weight:600}
.bar .track{height:11px;background:var(--teal-tint);border-radius:6px;overflow:hidden}
.bar .fill{height:100%;background:linear-gradient(90deg,var(--teal),var(--teal-bright));border-radius:6px;transform-origin:left;animation:grow 1.1s cubic-bezier(.22,1,.36,1) forwards;transform:scaleX(0)}
@keyframes grow{to{transform:scaleX(1)}}

.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{font-size:13px;color:var(--teal-deep);background:var(--teal-tint);border:1px solid #D2E5E1;padding:8px 14px;border-radius:999px;font-weight:600}
.pill.o{background:#FFF0EA;border-color:#FAD3C4;color:#C23A00}

.cov{width:100%;border-collapse:collapse;font-size:14px}
.cov th{text-align:left;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--slate);font-weight:700;padding:0 16px 11px;border-bottom:1px solid var(--line)}
.cov td{padding:13px 16px;border-bottom:1px solid var(--line);color:var(--ink);vertical-align:top}
.cov tr:last-child td{border-bottom:none}
.cov .code{font-variant-numeric:tabular-nums;font-weight:800;color:var(--teal-deep);white-space:nowrap}
.cov .tag{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:6px}
.tag-it{background:var(--teal-tint);color:var(--teal-deep)}
.tag-both{background:#FFF0EA;color:#C23A00}

.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.strip .cell{background:var(--white);padding:22px 20px}
.strip .cell .k{font-size:14px;font-weight:800;color:var(--teal-deep);line-height:1.25}
.strip .cell .v{font-size:13px;color:var(--slate);margin-top:6px}

footer{border-top:1px solid var(--line);margin-top:36px;padding:30px 0 46px;background:var(--white)}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
footer .note{font-size:12px;color:var(--slate);max-width:62ch;line-height:1.6}
footer a{color:var(--orange);text-decoration:none;font-weight:700}
footer a:hover{text-decoration:underline}

@media (max-width:900px){.g3,.g4{grid-template-columns:repeat(2,1fr)}.strip{grid-template-columns:repeat(2,1fr)}.bar{grid-template-columns:140px 1fr;gap:12px}}
@media (max-width:560px){.wrap{padding:0 18px}.util{display:none}.g2,.g3,.g4,.strip{grid-template-columns:1fr}.bar{grid-template-columns:120px 1fr}.hero{padding:36px 0 30px}.hero .logo{height:58px}}
@media (prefers-reduced-motion:reduce){.fill{animation:none;transform:scaleX(1)}}
