:root { --ink:#17211f; --muted:#5d6863; --line:#d7dfda; --paper:#fbfcfa; --mint:#087569; --mint-pale:#e6f2ed; --coral:#c75d43; --yellow:#f7e6a1; --mono:"DM Mono",monospace; --sans:"Space Grotesk",sans-serif; --serif:"Source Serif 4",serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); line-height:1.55; }
.site-header { width:min(1380px,calc(100% - 40px)); height:64px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.wordmark { color:var(--ink); font:500 1.08rem var(--mono); text-decoration:none; }
nav { display:flex; gap:22px; } nav a,footer a { color:var(--muted); font-size:.84rem; text-decoration:none; } nav a:hover,footer a:hover { color:var(--mint); }
.hero { width:min(1600px,calc(100% - 40px)); margin:0 auto; padding:62px 0 24px; text-align:center; }
.eyebrow,.section-kicker { margin:0 0 11px; color:var(--mint); font:500 .76rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }.hero .eyebrow { margin-bottom:13px; font-size:1.05rem; letter-spacing:.06em; }
h1,h2 { letter-spacing:0; } h1 { max-width:1500px; margin:0 auto 20px; font:600 clamp(2.25rem,3.4vw,3.35rem)/1.08 var(--serif); } h2 { margin:0; font:600 clamp(1.9rem,2.8vw,2.65rem)/1.12 var(--serif); }
.authors { margin:0; font-size:1.04rem; }.affiliations { display:flex; flex-wrap:wrap; justify-content:center; gap:3px 18px; max-width:850px; margin:9px auto 22px; color:var(--muted); font-size:.86rem; } sup { color:var(--mint); font:500 .68em var(--mono); }
.links { display:flex; justify-content:center; gap:10px; }.link-button { display:inline-flex; align-items:center; min-height:38px; padding:7px 15px; border:1px solid var(--ink); color:var(--ink); font-size:.86rem; font-weight:600; text-decoration:none; }.link-button:hover { border-color:var(--mint); color:var(--mint); }.link-button.muted { border-color:var(--line); color:#909b95; cursor:default; }
.hero-visual { width:min(1380px,calc(100% - 40px)); margin:0 auto; padding:16px 0 52px; }.hero-visual figure,.segmentation-layout figure { margin:0; }.hero-visual img,.method-section>img,.analysis-section>img,.segmentation-layout img,.sam-section img { width:100%; height:auto; display:block; }
.hero-visual figcaption,.figure-caption,.segmentation-layout figcaption,.sam-section figcaption { margin:12px 0 0; color:var(--muted); font:.92rem/1.52 var(--sans); }.hero-visual figcaption strong,.figure-caption strong,.segmentation-layout figcaption strong,.sam-section figcaption strong { color:var(--ink); font-family:var(--sans); }.figure-explainer { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:18px; padding-top:15px; border-top:1px solid var(--line); }.figure-explainer p { margin:0; color:var(--muted); font:.88rem/1.5 var(--sans); }.figure-explainer strong { color:var(--mint); font-family:var(--sans); }
.metrics { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.metrics div { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:112px; padding:18px clamp(20px,3vw,48px); text-align:center; }.metrics div+div { border-left:1px solid var(--line); }.metrics strong { display:block; color:var(--mint); font:600 clamp(1.85rem,2.5vw,2.45rem)/1 var(--serif); }.metrics span { display:block; max-width:250px; margin-top:7px; color:var(--muted); font-size:.78rem; line-height:1.38; }
.intro { width:min(1160px,calc(100% - 40px)); margin:0 auto; padding:67px 0 64px; }.intro p { max-width:1060px; margin:0 0 14px; color:#4e5b55; font:.98rem/1.62 var(--sans); }.intro .lead { max-width:1080px; color:var(--ink); font:600 clamp(1.38rem,2.1vw,1.72rem)/1.38 var(--serif); }.intro em { color:var(--mint); }
.method-section,.results-section,.analysis-section,.segmentation-section,.sam-section { width:min(1380px,calc(100% - 40px)); margin:0 auto; padding:70px 0; border-top:1px solid var(--line); }.section-heading { margin:0 0 28px; }.split-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(460px,.95fr); gap:38px; align-items:end; }.split-heading>p { margin:0 0 3px; color:var(--muted); font:.93rem/1.54 var(--sans); }
.method-section>.figure-caption,.analysis-section>.figure-caption { max-width:1380px; margin:13px auto 0; }.method-notes { display:grid; grid-template-columns:repeat(3,1fr); margin-top:20px; border-top:1px solid var(--line); }.method-notes p { min-height:103px; margin:0; padding:16px 22px 4px 0; color:var(--muted); font:.9rem/1.48 var(--sans); }.method-notes p+p { padding-left:22px; border-left:1px solid var(--line); }.method-notes strong { display:block; margin-bottom:5px; color:var(--mint); font:600 .8rem var(--sans); }.method-notes span { display:block; }
.table-frame { border-top:2px solid var(--ink); border-bottom:1px solid var(--ink); }.table-scroll { overflow-x:auto; }.results-table { width:100%; min-width:920px; border-collapse:collapse; text-align:center; font-size:.83rem; }.results-table th,.results-table td { padding:10px 9px; border-bottom:1px solid var(--line); }.results-table thead th { color:#39443f; font-size:.76rem; font-weight:600; }.results-table thead tr:first-child th { padding-top:12px; border-bottom:1px solid var(--ink); }.results-table tbody th { text-align:left; font-family:var(--mono); font-weight:500; }.results-table tbody tr:last-child>* { border-bottom:0; }.results-table .ours { background:var(--mint-pale); color:#07564e; font-weight:700; }.results-table .gain { color:var(--coral); font-weight:700; }.table-note { margin:0; padding:11px 14px; color:var(--muted); font-size:.74rem; }.legend-swatch { display:inline-block; width:10px; height:10px; margin-right:4px; background:var(--mint-pale); border:1px solid #b9d9cc; vertical-align:-1px; }
.analysis-section { width:100%; padding-left:max(20px,calc((100% - 1380px)/2)); padding-right:max(20px,calc((100% - 1380px)/2)); background:var(--paper); }.analysis-section .split-heading { max-width:1380px; margin-left:auto; margin-right:auto; }.analysis-section>img { max-width:1380px; margin:0 auto; }
.analysis-section h2,.segmentation-section h2 { font-size:clamp(1.72rem,2.25vw,2.18rem); }
.segmentation-layout { display:block; }.compact-table { width:100%; }.segmentation-table { width:100%; min-width:0; font-size:.88rem; }.segmentation-table th,.segmentation-table td { padding:12px 12px; }.segmentation-table small { color:var(--muted); font:400 .68rem var(--mono); }.segmentation-table .ours-label { background:var(--mint-pale); color:#07564e; font-weight:700; }.segmentation-layout figure { margin-top:42px; }
.sam-section { padding-bottom:100px; }.sam-section figure { margin:0; }.sam-section figcaption { max-width:none; margin:15px 0 0; color:var(--muted); font:1rem/1.48 var(--serif); }.sam-section figure img { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.citation { width:min(1160px,calc(100% - 40px)); margin:0 auto; padding:70px 0 86px; border-top:1px solid var(--line); }.citation h2 { margin-bottom:22px; }pre { overflow-x:auto; margin:0; padding:23px; background:#eef1ee; border-left:3px solid var(--mint); }code { font: .81rem/1.6 var(--mono); }footer { width:min(1380px,calc(100% - 40px)); margin:0 auto; padding:23px 0 30px; display:flex; justify-content:space-between; border-top:1px solid var(--line); color:var(--muted); font:.75rem var(--mono); }
@media (max-width:800px) { .site-header,.hero,.hero-visual,.intro,.method-section,.results-section,.segmentation-section,.sam-section,.citation,footer { width:min(100% - 28px,1380px); }.site-header { height:58px; }nav { gap:13px; }nav a { font-size:.72rem; }.hero { padding:52px 0 27px; }h1 { font-size:clamp(2.25rem,11vw,3.3rem); }.affiliations { display:block; }.affiliations span { display:block; margin:3px 0; }.hero-visual { padding-bottom:44px; }.metrics { grid-template-columns:1fr 1fr; }.metrics div { min-height:112px; padding:17px; }.metrics div:nth-child(3) { border-left:0; border-top:1px solid var(--line); }.metrics div:nth-child(4) { border-top:1px solid var(--line); }.intro { padding:56px 0; }.intro .lead { font-size:1.35rem; }.method-section,.results-section,.segmentation-section,.sam-section { padding:58px 0; }.split-heading,.method-notes,.figure-explainer { grid-template-columns:1fr; gap:22px; }.method-notes p,.method-notes p+p { min-height:0; padding:15px 0; border-left:0; border-bottom:1px solid var(--line); }.analysis-section { padding:58px 14px; }.segmentation-layout figure { margin-top:28px; }.sam-section { padding-bottom:68px; }.citation { padding:56px 0 68px; } }
