/* Sample report blocks. Kept apart from site.css so the report layout and the site's motion work change independently. */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px}
.offer-line{font-size:15px;color:var(--muted);margin-top:22px}
.offer-line b{color:var(--ink);font-weight:600}
.report-source{font-size:14px;color:var(--muted);margin-bottom:24px;max-width:72ch}
.report-actions{display:flex;flex-wrap:wrap;gap:8px 36px;margin-top:26px}
.small{font-size:13px;color:var(--muted);margin-top:12px}

/* Cover */
.report-cover{display:grid;grid-template-columns:1.05fr 1fr;gap:6%;background:var(--surface);border-top:3px solid var(--accent);padding:44px 40px 40px}
.cover-label{font-size:13px;font-weight:600;color:var(--accent);margin-bottom:14px}
.cover-title{font-size:clamp(26px,2.8vw,38px);line-height:1.12;letter-spacing:-.03em;font-weight:500;margin-bottom:28px;max-width:22ch;text-wrap:balance}
.report-facts{margin:0;display:grid;gap:0}
.report-facts div{display:grid;grid-template-columns:120px 1fr;gap:16px;border-top:1px solid var(--line);padding:11px 0}
.report-facts dt{font-size:13px;color:var(--muted)}
.report-facts dd{margin:0;font-size:15px}
.cover-side{display:flex;flex-direction:column;gap:26px}
.report-lede p{font-size:15px;color:var(--muted)}
.cover-side .button{align-self:flex-start}

/* Headline numbers */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:0;margin:0;border-top:1px solid var(--line)}
.kpis div{display:flex;flex-direction:column-reverse;justify-content:flex-end;padding:16px 16px 14px 0;border-bottom:1px solid var(--line)}
.kpis dd{margin:0;font-size:clamp(28px,3vw,40px);line-height:1;letter-spacing:-.04em;color:var(--accent);font-variant-numeric:tabular-nums}
.kpis dt{font-size:12.5px;line-height:1.35;color:var(--muted);margin-top:8px;max-width:20ch}
.section .kpis{margin-bottom:34px}
.cover-side .kpis{grid-template-columns:repeat(3,1fr)}
.cover-side .kpis dd{font-size:clamp(24px,2.1vw,30px);white-space:nowrap}

/* Section navigation */
.report-nav{position:sticky;top:0;z-index:5;display:flex;gap:4px 26px;overflow-x:auto;scrollbar-width:none;padding:14px 0;background:var(--paper);border-bottom:1px solid var(--line);font-size:13.5px;white-space:nowrap}
.report-nav::-webkit-scrollbar{display:none}
.report-nav a{text-decoration:none;color:var(--muted);padding-block:6px}
.report-nav a:hover{color:var(--ink);text-decoration:underline}
#main .section[id]{scroll-margin-top:64px}

/* Findings */
.findings{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;counter-reset:finding}
.findings li{margin:0;border-top:2px solid var(--accent);padding-top:18px;counter-increment:finding}
.findings li::before{content:counter(finding,decimal-leading-zero);display:block;color:var(--accent);font-size:14px;font-variant-numeric:tabular-nums;margin-bottom:22px}
.findings h3{font-size:22px;letter-spacing:-.025em;margin-bottom:12px}
.findings p{font-size:15px;color:var(--muted)}

/* Bars: one hue, identity carried by the text label */
.bar{display:block;width:100%;height:8px}
.bar-track{fill:var(--line);opacity:.45}
.bar-fill{fill:var(--accent)}
.bars{display:grid;gap:10px;margin:0 0 30px}
.bar-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(80px,1fr) 34px;align-items:center;gap:14px;font-size:14px}
.bar-label{line-height:1.35}
.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
.method-grid h3,.split-wide h3{font-size:15px;font-weight:600;letter-spacing:0;margin:0 0 14px}
.method-grid h3:not(:first-child){margin-top:30px}
.lanes{columns:2;column-gap:28px;font-size:14px;padding-left:1.1em;margin:0}
.lanes li{break-inside:avoid;margin:0 0 8px}
.checks{list-style:none;padding:0;margin:0;font-size:15px}
.checks li{padding-left:26px;position:relative}
.checks li::before{content:'\2713';position:absolute;left:0;color:var(--accent);font-weight:700}

/* Ranking */
.rank-table,.deal-table,.score-table,.price-table{width:100%;border-collapse:collapse;font-size:15px}
.rank-table caption,.deal-table caption,.score-table caption{text-align:left;font-size:13px;color:var(--muted);padding-bottom:12px}
.rank-table th,.deal-table th,.score-table th{font-size:12px;font-weight:600;color:var(--muted);text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--ink)}
.rank-table td,.deal-table td,.score-table td{vertical-align:top;padding:16px 14px 16px 0;border-bottom:1px solid var(--line)}
.rank-table td b,.deal-table td b,.score-table td b{font-weight:600}
.rank-table{margin-bottom:46px}
.rank-n{color:var(--accent);font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums;width:56px}
.rank-where{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.rank-strength{white-space:nowrap;width:160px}
.rank-strength .bar{margin-top:9px;max-width:140px}
.strength{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;margin-right:8px;border:1px solid currentColor}
.strength-good{color:var(--accent)}
.strength-moderate{color:var(--muted)}
.score{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.nowrap{white-space:nowrap}
.num{text-align:right!important;font-variant-numeric:tabular-nums}

/* Market and scoring */
.split-wide{display:grid;grid-template-columns:1.45fr 1fr;gap:6%;align-items:start}
.split-lede{font-size:18px;margin-bottom:30px}
.ask-box{background:var(--surface);border-top:2px solid var(--accent);padding:28px 30px}
.ask-box h3{font-size:19px!important;letter-spacing:-.02em!important;margin:0 0 16px!important}
.plain{margin:0;padding-left:1.1em;font-size:15px}
.penalties{margin-top:18px;font-size:14px}

/* Company entries */
.lead-list{display:grid;gap:22px}
.lead{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);padding:30px 32px}
.lead-head{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}
.lead-head h3{font-size:clamp(21px,2.2vw,28px)}
.lead-rank{flex:0 0 auto;min-width:44px;height:44px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:18px;font-variant-numeric:tabular-nums}
.lead-meta{font-size:14px;color:var(--muted);margin-top:8px}
.lead-body{display:grid;grid-template-columns:150px 1fr;gap:16px 28px;margin:0}
.lead-body dt{font-size:13px;font-weight:600;color:var(--muted);padding-top:2px}
.lead-body dd{margin:0;font-size:15px;max-width:72ch}
.lead-body ul{list-style:none;padding:0;margin:0}
.lead-body li+li{margin-top:.45em}
.pro li,.con li{padding-left:26px;position:relative}
.pro li::before,.con li::before{position:absolute;left:0;top:0;font-weight:700}
.pro li::before{content:'\2713';color:var(--accent)}
.con li::before{content:'\2717';color:var(--focus)}
.first-step{font-weight:600}
.withheld{color:var(--muted);font-size:13px!important}
.meters{display:grid;gap:7px;max-width:520px}
.meter{display:grid;grid-template-columns:130px 1fr 52px;align-items:center;gap:14px;font-size:13px}
.meter-label{color:var(--muted)}
.meter-value{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.meter-value small{font-weight:400;color:var(--muted);font-size:11.5px}
.meter-note{font-size:13px;color:var(--muted);margin-top:8px}

/* Buyer side */
.buyer-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}
.price-ref{border-top:2px solid var(--accent);padding-top:6px}
.price-table{margin-bottom:14px}
.price-table caption{text-align:left;font-size:14px;font-weight:600;padding:12px 0}
.price-table th{font-size:12px;color:var(--muted);text-align:left;padding:8px 0;border-bottom:1px solid var(--ink);font-weight:600}
.price-table td{padding:10px 0;border-bottom:1px solid var(--line)}

@media(max-width:900px){
.report-cover,.method-grid,.split-wide,.buyer-grid{grid-template-columns:1fr;gap:34px}
.findings{grid-template-columns:1fr;gap:26px}
.report-cover{padding:32px 24px}
}
@media(max-width:800px){
.lead{padding:24px 20px}
.lead-body{grid-template-columns:1fr;gap:4px}
.lead-body dd+dt{margin-top:14px}
.lanes{columns:1}
}
@media(max-width:640px){
.cover-side .kpis{grid-template-columns:repeat(2,1fr)}
.rank-table thead,.deal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.rank-table caption,.deal-table caption{display:block}
.rank-table,.rank-table tbody,.rank-table tr,.rank-table td,.deal-table,.deal-table tbody,.deal-table tr,.deal-table td{display:block;width:auto}
.rank-table tr{display:grid;grid-template-columns:44px 1fr;column-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
.rank-table td,.deal-table td{border:0;padding:0}
.rank-table td.rank-n{grid-row:1/4}
.rank-table td.rank-strength{margin:10px 0}
.rank-table td:last-child{font-size:14px}
.deal-table tr{padding:14px 0;border-bottom:1px solid var(--line)}
.deal-table td+td{margin-top:4px;font-size:14px}
.report-facts div{grid-template-columns:1fr;gap:2px}
.bar-row{grid-template-columns:1fr 34px;row-gap:6px}
.bar-row .bar{grid-column:1/-1;grid-row:2}
.meter{grid-template-columns:1fr 52px;row-gap:4px}
.meter .bar{grid-column:1/-1;grid-row:2}
.ask-box{padding:22px 18px}
.score-table td:last-child{font-size:14px}
}
@media print{.report-nav,.cover-side .button,.report-actions{display:none}.lead,.ask-box,.report-cover{background:none}}
