/* Point B: restrained identity, readable typography, and purposeful color. */
@font-face{font-family:"DM Sans";src:url("./dm-sans-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
:root,[data-theme="light"]{
 --font-heading:"DM Sans",Arial,sans-serif;--font-body:Aptos,Calibri,"Segoe UI",Arial,sans-serif;color-scheme:light;
 --bg:#F8F8F5;--surface:#EFF3F2;--card:#FFFFFF;--ink:#25363D;--chalk:#3C4D54;--muted:#586A72;--line:#D5DFDF;--softline:#E6EBE9;
 --asphalt:#25363D;--concrete:#EEF2F0;--court:#D5DFDF;--bone:#F8F8F5;--blue:#4F8CA4;--blue-soft:#AECAD5;--navy:#3C6570;--navy-deep:#294A53;
 --canopy:#8CAFB8;--moss:#718E62;--terracotta:#AC7259;--clay:#AE904F;--hazard:#A86E58;--jet-pink:#4F8CA4;
 --canopy-text:#355F6D;--blue-text:#355F6D;--moss-text:#48694D;--clay-text:#7B643B;--terra-text:#8A5948;--pink-text:#355F6D;
 --panel-deep:#294A53;--panel-mid:#3C6570;--barcanopy:#8CAFB8;--barblue:#4F8CA4;--barterra:#AC7259;--barclay:#AE904F;--barmoss:#718E62;--barpink:#8895A0;--barnavy:#3C6570;
 --blue-wash:#E1EDF2;--sage-wash:#E2EBDC;--sand-wash:#EFE3CC;--clay-wash:#F0DFD5;--blue-line:#B6CFD9;--sage-line:#BFD0B6;--sand-line:#D9C398;--clay-line:#D9B8A6;
 --nav:#FFFFFF;--header:#E5EDEE;--focus:#2F6278;
}
[data-theme="dark"]{
 color-scheme:dark;--bg:#18282F;--surface:#23373D;--card:#22363D;--ink:#E9F0F0;--chalk:#CDDBDD;--muted:#AFBFC3;--line:#40565E;--softline:#354B52;--nav:#1C2F36;--header:#233D45;
 --canopy-text:#B8D5DF;--blue-text:#B8D5DF;--moss-text:#BBD0AE;--clay-text:#DECA9D;--terra-text:#E1B4A0;--pink-text:#B8D5DF;
 --blue-wash:#2B4855;--sage-wash:#334B3C;--sand-wash:#4C4230;--clay-wash:#503D34;--blue-line:#44636F;--sage-line:#52674E;--sand-line:#716145;--clay-line:#76564B;--focus:#B8DEED;
}
html{scroll-padding-top:78px}
body{font-family:var(--font-body);font-size:17.5px;line-height:1.43;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;transition:none}
button,input,select,textarea{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
a{color:var(--blue-text);text-underline-offset:3px}
p a:not(.btn):not(.r-next),li a:not(.btn){text-decoration:underline}
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.wrap{max-width:1200px;margin:0 auto;padding:0 36px}
.view{animation:none;--section-wash:var(--blue-wash);--section-ink:var(--blue-text)}
#accounts{--section-wash:var(--sage-wash);--section-ink:var(--moss-text)}
#whitespace{--section-wash:var(--clay-wash);--section-ink:var(--terra-text)}
#targeting{--section-wash:var(--sand-wash);--section-ink:var(--clay-text)}
.mono{font-family:var(--font-body)}
.pb-skip{position:absolute;left:20px;top:8px;transform:translateY(-170%);background:var(--card);padding:8px 14px;z-index:100}
.pb-skip:focus{transform:none}

/* A compact client masthead, with Point B as a quiet signature. */
.pb-report-header{background:var(--header);border-top:3px solid #5F8796}
.pb-header-inner{max-width:1200px;margin:0 auto;padding:16px 36px 18px}
.pb-brand-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:10px}
.pb-client-mark{display:block;position:relative;overflow:hidden;flex:none;width:144px;height:34px;mix-blend-mode:multiply}
.pb-client-mark img{display:block;position:absolute;width:165px;max-width:none;height:auto;left:-7px;top:-43px}
.pb-heading{display:flex;align-items:baseline;justify-content:space-between;min-width:0;gap:20px}
.pb-logo{display:block;width:92px;height:auto;flex:none;object-fit:contain;margin:0;mix-blend-mode:multiply}
[data-theme="dark"] .pb-logo{background:#F5F7F6;padding:5px;width:102px;border-radius:3px;mix-blend-mode:normal}
[data-theme="dark"] .pb-client-mark{background:#FFF;border-radius:3px;mix-blend-mode:normal}
.pb-report-title{font-family:var(--font-heading);font-size:33px;font-weight:500;line-height:1.18;letter-spacing:-.025em;color:var(--ink);margin:0}
.pb-period{font-size:14px;color:var(--muted);margin:0;line-height:1.3;white-space:nowrap}
nav.top{position:sticky;top:0;background:var(--nav);border-bottom:1px solid var(--line);box-shadow:none}
nav.top .inner{max-width:1200px;margin:0 auto;padding:0 36px;display:flex;align-items:stretch;gap:20px;flex-wrap:nowrap;min-width:0}
.tabs{flex:1;min-width:0;display:flex;gap:27px;flex-wrap:nowrap;margin:0;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}
.tab{flex:none;font-family:var(--font-body);font-size:15.5px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted);background:none;border:0;border-bottom:3px solid transparent;border-radius:0;padding:13px 0 11px;line-height:1.4;white-space:nowrap}
.tab:hover{color:var(--ink);border-bottom-color:var(--line)}
.tab.active{font-weight:600;color:var(--blue-text);background:none;border-bottom-color:var(--blue)}
.navright{margin-left:0;align-self:center;flex:none}
.themeBtn{width:31px;height:31px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:4px;font-size:16px}
.themeBtn:hover{background:var(--surface);color:var(--ink)}

/* Medium-weight headlines and a useful minimum for supporting text. */
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;font-style:normal;text-transform:none;color:var(--ink)}
section.blk{padding:24px 0;border-bottom:1px solid var(--line)}
.secnum,.kicker{font-family:var(--font-body);font-size:13.5px;font-weight:600;line-height:1.4;letter-spacing:.025em;color:var(--section-ink,var(--blue-text));margin-bottom:9px;text-transform:none}
h1.big{font-family:var(--font-heading);font-weight:500;font-size:40px;line-height:1.15;letter-spacing:-.025em;text-transform:none;max-width:1000px}
h2.sec{font-family:var(--font-heading);font-weight:500;font-size:32px;line-height:1.2;letter-spacing:-.02em;text-transform:none;max-width:1040px}
h1.big em,h2.sec em,h3.sub em{font-style:normal;transform:none;font-weight:inherit;color:inherit}
h3.sub{font-family:var(--font-heading);font-weight:500;font-size:23px;line-height:1.3;letter-spacing:-.015em;text-transform:none;margin:19px 0 10px;color:var(--ink)}
.sub,.lede{font-family:var(--font-body);font-size:18px;line-height:1.43;max-width:990px;color:var(--chalk);margin-top:8px}
p.body{font-family:var(--font-body);font-size:17.5px;line-height:1.43;max-width:950px;margin:7px 0;color:var(--ink)}
.metastrip{font-family:var(--font-body);font-size:14px;line-height:1.4;letter-spacing:0;text-transform:none;margin-top:16px;padding-top:12px;gap:12px 25px}
.card h4,.pcard h4,.hero .hn,.chhead .ctitle,.move .mt,.lcard .lt,.acard .at,.sgcard .sgt{font-family:var(--font-heading);font-weight:500;font-size:21px;line-height:1.28;letter-spacing:-.015em;text-transform:none}
.card h4{margin-bottom:5px}
.card .role,.chhead .clabel,.chhead .ctags,.n-lab,.n-layer,.r-lbl,.r-rows b,.r-mh,.r-next,.tierlabel,.ptag,.htag,.tpanel .th,.facet .fl,.tradeoff b,.rm-mxhr,.rm-mxlabel,.rm-rwhen,.persona,.rv-fk,.rv-sub,.mcap,.move .mn,.move .arrow{font-family:var(--font-body);font-size:14px;line-height:1.4;letter-spacing:0;text-transform:none}
.card .role,.ptag{margin-bottom:8px}
.chhead .clabel,.n-lab,.r-rows b{font-weight:600}
.n-name,.n-node b,.r-val,.rv-ft,.rm-mxhn,.rm-mxsn,.rm-rtitle,.pm .ohead,.band .bt{font-family:var(--font-heading);font-weight:500;text-transform:none;letter-spacing:-.01em;line-height:1.28}
.n-name,.n-node b,.r-val,.rv-ft{font-size:19px}
.move .md,.n-job,.n-node span,.r-rows div,.n-wt,.rv-fs p,.pcard p,.lcard p,.acard p,.acard .ah,.tline,.excl div,.sgcard .sgp{font-family:var(--font-body);font-size:17px;line-height:1.42}
.move .mt{margin-bottom:6px}
.acard .ar{font-family:var(--font-body);font-size:15px;line-height:1.42}
.r-quote,.n-uvp .r-quote,.hero .hl{font-family:var(--font-body);font-size:19px;line-height:1.4;font-style:normal;font-weight:400}
.r-quote{margin-top:9px;padding:4px 0 4px 13px;border-left:3px solid var(--blue)}
.ev{font-family:var(--font-body);font-size:14.5px;line-height:1.4;color:var(--muted);margin-top:8px}
.foot1{font-family:var(--font-body);font-size:14px!important;line-height:1.43;opacity:1!important;padding:13px 0 20px!important;margin-top:20px!important}

/* Content height determines ordinary card height. */
.grid2,.grid3{gap:14px;align-items:start}
.grid4{gap:12px;align-items:start}
.card,.pcard,.hero,.acard,.lcard,.sgcard,.stat,.fig,.move,.callout,.n-step,.n-node,.r-step,.r-cell,.tpanel,.rm-mxh,.rm-camp,.rm-rcard,.rv-fs,.ab-st,.kchip,.band,.tradeoff div{border-radius:5px;box-shadow:none}
.card{background:var(--card);border:1px solid var(--line);padding:15px 17px;margin-bottom:12px}
.grid2>.card,.grid3>.card,.grid4>.card,.grid2>.pcard,.grid3>.pcard{margin-bottom:0;align-self:start}
.card>:last-child,.pcard>:last-child,.hero>:last-child{margin-bottom:0}
.card.tl,.card.tb,.card.tt,.card.tc,.card.tm{border-left-width:3px}
.card.tl,.card.tb{border-left-color:var(--blue)}
.card.tm{border-left-color:var(--moss)}
.card.tc{border-left-color:var(--clay)}
.card.tt{border-left-color:var(--terracotta)}
.chhead{gap:8px 12px;margin-bottom:7px;align-items:baseline}
.chhead .ctags{color:var(--muted)}
.pcard,.hero{padding:15px 17px}
.lcard,.acard,.sgcard,.move{padding:13px 15px}
.tradeoff{gap:14px;margin:14px 0;align-items:start}
.tradeoff div{padding:15px 17px}
.why,[data-theme="dark"] .why{font-family:var(--font-body);background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:8px 0 0;margin-top:8px;font-size:16px;line-height:1.42}
.why b{color:var(--ink)}
.callout,[data-theme="dark"] .callout{padding:14px 17px;margin:14px 0;background:var(--blue-wash);background-image:none;border:1px solid var(--blue-line);border-left:4px solid var(--blue);border-radius:5px}
.callout.clay{background:var(--sand-wash);border-color:var(--sand-line);border-left-color:var(--clay)}
.callout.terra{background:var(--clay-wash);border-color:var(--clay-line);border-left-color:var(--terracotta)}
.callout .k{font-family:var(--font-body);font-size:15px;line-height:1.4;font-weight:600;letter-spacing:0;text-transform:none;color:var(--blue-text);margin-bottom:5px}
.callout p{font-size:18px;line-height:1.42}
.freebar,[data-theme="dark"] .freebar{font-size:16px;line-height:1.42;background:var(--sage-wash);border-color:var(--sage-line);border-left-color:var(--moss);padding:13px 16px;border-radius:4px;margin-top:13px}
.n-back,.r-under,[data-theme="dark"] .r-under{padding:11px 14px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:16px;line-height:1.4}
ul.clean{margin:8px 0}
ul.clean li{padding-left:18px;margin:6px 0}
ul.clean li::before{content:"";width:5px;height:5px;position:absolute;left:1px;top:.65em;border-radius:50%;background:var(--blue)}

/* Opening findings and a shared metric strip. */
#review>.blk:first-child >.grid3{margin-top:14px;gap:12px;align-items:start}
#review>.blk:first-child>.grid3>.card{border:0;border-top:3px solid var(--moss);background:var(--sage-wash);padding:13px 16px 14px}
#review>.blk:first-child>.grid3>.card.tc{border-top-color:var(--clay);background:var(--sand-wash)}
#review>.blk:first-child>.grid3>.card.tt{border-top-color:var(--terracotta);background:var(--clay-wash)}
#review>.blk:first-child .rv-type{background:none;border:0;color:var(--muted);padding:0;font-size:13px;letter-spacing:.015em}
#review>.blk:first-child .card h4{font-size:22px;line-height:1.25}
#review>.blk:first-child .card p.body{font-size:17.5px;line-height:1.42}
.grid4:has(>.stat){gap:0;align-items:stretch;background:var(--section-wash,var(--blue-wash));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-top:14px!important}
.grid4>.stat{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:0 17px}
.grid4>.stat:last-child{border-right:0}
.stat .n,.n-num,.kchip .n,.ab-n,.r-src .n,.pm .price,.rv-num{font-family:var(--font-heading);font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.stat .n{font-size:34px;line-height:1.1;color:var(--blue-text)}
.stat .l{font-family:var(--font-body);font-size:15px;line-height:1.35;letter-spacing:0;text-transform:none;color:var(--chalk);margin-top:7px}
.stat{padding:15px 17px}
.n-why .l{font-size:16px;font-weight:600;color:var(--ink);margin-top:0}
.rv-flow{gap:12px}
.rv-fs{padding:13px 15px;border-top-width:3px}
.rv-fn{font-family:var(--font-heading);font-weight:500;font-size:25px;opacity:.25;top:11px;right:13px}
.rv-fk{padding-right:25px}
.rv-ft{margin:4px 0 7px}
.r-split,.r-flow3{gap:10px}
.r-step{padding:15px 17px}
.r-arrow{font-family:var(--font-heading);font-weight:500}

/* Larger table labels, closer rows, restrained banding. */
.scroll,.figscroll,.rm-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin}
.tbl,.kw,.pm{font-family:var(--font-body);font-size:16px;line-height:1.4;font-variant-numeric:tabular-nums;margin-top:10px}
.tbl th,.kw th{font-family:var(--font-body);font-size:14.5px;line-height:1.3;font-weight:600;text-transform:none;letter-spacing:0;color:var(--ink);background:var(--section-wash,var(--blue-wash));padding:9px 11px;border-bottom:1px solid var(--line)}
.tbl td,.kw td{padding:9px 11px;line-height:1.4;border-bottom:1px solid var(--softline);color:var(--chalk)}
.tbl td.k{font-weight:600;color:var(--ink)}
.tbl tbody tr:nth-child(even),.kw tbody tr:nth-child(even){background:color-mix(in srgb,var(--section-wash,var(--blue-wash)) 38%,transparent)}
.as-tbl tbody tr:hover{background:var(--blue-wash)}
.kw td.term{font-family:var(--font-body);font-size:16px}
.ftable{font-family:var(--font-body);table-layout:fixed;margin-top:9px}
.ftable td{font-size:16px;line-height:1.4;padding:8px 9px;border-bottom-color:var(--softline);overflow-wrap:anywhere}
.ftable td.lbl{font-family:var(--font-body);font-size:14.5px;line-height:1.4;letter-spacing:0;text-transform:none;font-weight:400;color:var(--muted);width:140px}
.pm .rowlbl,.pm .per{font-family:var(--font-body);font-size:14px;letter-spacing:0;text-transform:none}
.pm th,.pm td{padding:10px 12px}
.pm td.rec .price{color:#C2DCE6}
.pb-sort{appearance:none;border:0;background:transparent;color:inherit;font:inherit;line-height:1.3;text-align:left;padding:4px 0;cursor:pointer;white-space:nowrap}
.pb-sort:hover{color:var(--blue-text)}
.pb-sort-arrow{font-size:12px;color:var(--muted)}
.as-tbl th[aria-sort="ascending"],.as-tbl th[aria-sort="descending"]{color:var(--blue-text)}
.as-tabs{gap:7px;margin:15px 0 10px}
.as-tab{font-family:var(--font-body);font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;padding:7px 12px;line-height:1.35;border:1px solid var(--line);border-radius:4px;background:var(--card);color:var(--ink)}
.as-tab.on{font-weight:600;background:var(--blue-wash);color:var(--blue-text);border-color:var(--blue)}
.as-tab:hover{border-color:var(--blue)}
.rv-score{background:var(--blue-wash);border:1px solid var(--blue-line);border-left:4px solid var(--blue);border-radius:5px;padding:17px 20px;margin-top:15px;gap:24px}
.rv-num{font-size:44px;color:var(--blue-text);line-height:1.08}
.rv-num span{font-size:22px;color:var(--muted)}
.rv-meta{font-size:17px;line-height:1.4;color:var(--chalk)}
.rv-meta b{font-size:18px;font-weight:600;color:var(--ink)}
.rv-row{grid-template-columns:270px minmax(100px,1fr) 285px;gap:12px}
.rv-lab{font-size:16px;line-height:1.35;font-weight:600}
.rv-val{font-family:var(--font-body);font-size:14.5px;line-height:1.4;font-variant-numeric:tabular-nums}
.rv-sub{font-size:14px;line-height:1.4;opacity:1;color:var(--muted)}
.rv-track,.rv-track i{border-radius:3px}
figure{margin:18px 0}
.fig{background:var(--card);padding:17px;border:1px solid var(--line)}
figcaption{font-family:var(--font-body);font-size:14px;line-height:1.4;letter-spacing:0;color:var(--muted);margin-top:9px}
.svglabel,.svgmuted{font-family:var(--font-body)}
.svglabel{font-size:13px}
.svgmuted{font-size:11.5px}
.svgnum{font-family:var(--font-heading);font-weight:500}

/* Colors describe status rather than add decoration. */
.badge,.pill,.recpill,.ppill,.rating,.rv-pill,.rv-type,.startag,.tag,.fchip,.sizeb,.ichip,.cchip,.rm-phase{font-family:var(--font-body);font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;line-height:1.35;border-radius:3px}
.badge,.pill,.ppill,.rating,.rv-pill{white-space:normal}
.badge,.pill,.ppill,.rv-pill{padding:3px 7px}
.bstart,.recpill,.rv-type,.startag{background:var(--blue-wash);border:1px solid var(--blue-line);color:var(--blue-text)}
.rating,.pp1,.pp2{background:var(--blue-wash);color:var(--blue-text)}
.rating.med,.pp3{background:var(--sand-wash);color:var(--clay-text)}
.pp4{background:var(--clay-wash);color:var(--terra-text)}
.rv-pill.p,.bh,[data-theme="light"] .bh{background:var(--sage-wash);color:var(--moss-text)}
.rv-pill.w,.bm,[data-theme="light"] .bm{background:var(--sand-wash);color:var(--clay-text)}
.rv-pill.f{background:var(--clay-wash);color:var(--terra-text)}
.rv-pill.n,.bl,[data-theme="light"] .bl{background:var(--surface);color:var(--muted)}
[data-theme="dark"] .rv-pill.p{color:var(--moss-text)}
[data-theme="dark"] .rv-pill.w{color:var(--clay-text)}
[data-theme="dark"] .rv-pill.f{color:var(--terra-text)}
[data-theme="dark"] .rv-pill.n{background:var(--surface);color:var(--muted)}
.tag{font-size:14px;background:var(--surface);padding:4px 8px}
.tierlabel{font-size:16px;font-weight:600;margin:22px 0 12px}
.tierlabel .d{width:8px;height:8px}

/* Accounts: stages with enough room to read. */
.ab-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:16px;overflow:visible}
.ab-st{background:var(--sage-wash);border:1px solid var(--sage-line);padding:13px 14px}
.ab-st.ab-off{background:var(--surface);opacity:1;border-style:solid}
.ab-n{font-size:28px;line-height:1.1}
.ab-l{font-size:16px;line-height:1.3;font-weight:600;margin-top:4px}
.ab-d{font-family:var(--font-body);font-size:14px;line-height:1.35;opacity:1;color:var(--muted);min-height:0;margin-top:4px}
.ab-bar{height:4px;margin-top:9px}
.ab-bar i{background:var(--moss)}

/* Summary: editorial blocks, a positioning statement, and a sequence. */
#overview .n-card{border:0;border-top:2px solid var(--blue-line);border-radius:0;background:transparent;padding:14px 0 0}
#overview .n-uvp{background:var(--blue-wash);border:1px solid var(--blue-line);border-radius:5px;padding:15px 18px}
#overview .n-uvp .r-quote{border-left:0;padding:0;font-size:20px}
.n-pri{gap:10px;margin-top:10px;align-items:start}
.n-step{padding:0 13px 13px;border-color:var(--line);gap:4px}
.n-bar{height:3px;margin:0 -13px 7px}
.n-num{font-size:25px;line-height:1.1}
.n-layer{font-size:13.5px}
.n-name{font-size:18px}
.n-job{font-size:16px;line-height:1.4}
.n-meta{gap:4px;margin-top:4px}
.n-loop{gap:8px;align-items:stretch}
.n-node{padding:14px;gap:6px}
.n-node b{font-size:18px}
.n-node span{font-size:16px;line-height:1.4}
.n-loop .r-arrow{font-size:19px}
.r-src{background:var(--panel-deep);padding:16px;border-radius:5px}
.r-src .n{font-size:34px;color:#C2DCE6}
.r-src .l{font-family:var(--font-body);font-size:15px;line-height:1.4;letter-spacing:0;text-transform:none;color:#EEF4F4}
.kchips{gap:11px}
.kchip{padding:13px 15px}
.kchip .n{font-size:27px}
.kchip .l{font-size:16px;line-height:1.4}
.btn{font-family:var(--font-body);font-size:16px;font-weight:600;letter-spacing:0;text-transform:none;border-radius:4px;padding:10px 16px;line-height:1.35}
.btn.primary{background:var(--blue);color:#FFF}
.btn:hover,.move:hover{transform:none}
.btn.primary:hover{background:#3D7288}
.move:hover{border-color:var(--blue)}
.btnrow{margin-top:17px;gap:10px}

/* Featured arguments use depth; detailed profiles use quiet structure. */
.sumhero,.uvp,.ctablock{background:var(--panel-deep);border:0;border-radius:6px;padding:20px 23px}
.sumhero{margin-top:17px}
.sumhero .row{grid-template-columns:155px minmax(0,1fr);gap:17px;padding:9px 0}
.sumhero .lab{font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1.4;letter-spacing:0;text-transform:none;color:#C1D9DF}
.sumhero .val{font-family:var(--font-body);font-size:18px;line-height:1.43;color:#F2F7F7}
.uvp .k{font-family:var(--font-body);font-size:14.5px;font-weight:600;letter-spacing:.015em;text-transform:none;color:#C1D9DF;margin-bottom:8px}
.uvp .q{font-family:var(--font-heading);font-size:26px;font-weight:500;font-style:normal;line-height:1.35;letter-spacing:-.015em;color:#F3F7F7}
.uvp p,.ctablock p{font-family:var(--font-body);font-size:18px;line-height:1.43;color:#DBE8EB;margin-top:10px}
.ctablock{padding:25px 24px;margin-top:22px}
.ctablock h2{font-family:var(--font-heading);font-weight:500;font-size:30px;line-height:1.25;letter-spacing:-.02em;text-transform:none;color:#F3F7F7}
.ctablock h2 em{font-style:normal;color:#C0DCE7}
.ctablock p{max-width:800px}
.dark-panel{--canopy-text:#C0DCE7;--blue-text:#C0DCE7;--moss-text:#C3D9B9}
.card.prof{border:0;border-top:2px solid var(--clay-line);border-radius:0;background:transparent;padding:16px 0 5px;margin:0 0 15px}
.prof .chhead{padding:0 0 9px;border-bottom:1px solid var(--line)}
.prof .ctitle{color:var(--terra-text);font-size:23px}
.prof .ftable{margin-top:0}

/* Targeting: a clear priority and readable criteria. */
.hero{border-left:3px solid var(--blue);margin-bottom:13px}
.hero.star{border:1px solid var(--blue-line);border-left:4px solid var(--blue);background:var(--blue-wash);box-shadow:none}
.star-ico{color:var(--blue-text)}
.hero .hn{font-size:23px}
.hero .hl{margin:4px 0 9px}
.tpanel{padding:13px 15px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--blue);margin-top:11px}
.tpanel .th{font-size:15px;font-weight:600;margin-bottom:7px;gap:8px}
.facet{grid-template-columns:140px minmax(0,1fr);gap:9px;padding:4px 0}
.facet .fl{font-size:14.5px;font-weight:400;line-height:1.4;padding-top:3px;color:var(--muted)}
.fchip{font-size:15px;line-height:1.4;background:transparent!important;border:0;border-radius:0;border-right:1px solid var(--line);color:var(--ink);padding:0 9px 0 0;margin:2px 8px 2px 0}
.fchip:last-child{border-right:0;margin-right:0}
.sizeb{font-size:13.5px;color:var(--clay-text);background:var(--sand-wash);padding:3px 7px}
.verblk{font-family:var(--font-body);font-size:15px;line-height:1.43;letter-spacing:0;padding:11px 14px;margin-top:13px;background:var(--surface);border:1px solid var(--line);border-radius:4px}
.funnel{gap:7px;margin:17px 0 6px}
.band{padding:12px 16px}
.band:nth-child(1){background:#D5E7EF!important}
.band:nth-child(2){background:#C9DFD4!important}
.band:nth-child(3){background:#E7DCBC!important}
.band:nth-child(4){background:#A8C8C8!important}
.band .bt{font-size:19px;color:#263C44}
.band .bs{font-family:var(--font-body);font-size:16px;line-height:1.4;color:#263C44}
.band .bz{font-family:var(--font-body);font-size:14.5px;line-height:1.4;color:#263C44}
.rung{grid-template-columns:210px minmax(0,1fr);gap:13px;margin-bottom:9px}
.rung .rl{font-size:17px;line-height:1.35}
.rung .rl span{font-family:var(--font-body);font-size:14px;line-height:1.4;margin-top:3px}
.rung .rb{font-family:var(--font-body);font-size:16.5px;line-height:1.4;padding:10px 14px;border-radius:4px}
.excl{column-gap:24px}
.excl div{padding:9px 0}
.ichip,[data-theme="light"] .ichip{background:var(--sage-wash);color:var(--moss-text)}
.cchip{background:var(--clay-wash);color:var(--terra-text)}
.meter{height:5px;margin-top:9px}
.mcap{font-size:14px;margin-top:5px}

/* Matrices scroll at a useful reading size. */
.rm-mx{min-width:1050px;grid-template-columns:132px repeat(4,minmax(0,1fr));gap:9px}
.rm-mxh{padding:9px 11px;border-top-width:3px}
.rm-mxhn,.rm-rtitle{font-size:17px}
.rm-mxhr,.rm-rwhen{font-size:13.5px}
.rm-mxsn{font-size:16px}
.rm-mxsd,.rm-rgoal{font-family:var(--font-body);font-size:14px;line-height:1.4}
.rm-camp,.rm-mxbase,.rm-rcard li{font-family:var(--font-body);font-size:15.5px;line-height:1.4}
.rm-camp{padding:9px 11px}
.rm-phase{font-size:12.5px}
.rm-road{min-width:1040px;gap:10px;align-items:start}
.rm-rcard{padding:13px 14px;border-top-width:3px}
.r-matrix{min-width:850px}
.r-cell{font-size:15.5px;line-height:1.4;padding:11px 13px}
.r-rl b{font-size:16px}
.r-rl span,.r-empty{font-size:14px}

/* Evidence stays compact until opened. */
details{border:1px solid var(--line);border-radius:4px;margin:9px 0}
summary,[data-theme="dark"] summary{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;padding:12px 14px;background:var(--section-wash,var(--blue-wash));align-items:flex-start;gap:9px}
summary .chip{font-family:var(--font-body);font-weight:600;flex:none;font-size:16px;line-height:1.2;border:0;padding:0 4px;color:var(--blue-text)}
.dbody{padding:7px 14px 13px;overflow-x:auto}
.foot{padding:20px 0 28px;border-top:1px solid var(--line);margin-top:12px}
.foot .fb{font-family:var(--font-body);font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}
.foot .note{font-family:var(--font-body);font-size:14px;line-height:1.4;margin-top:7px;max-width:960px;color:var(--muted)}

@media(max-width:1050px){
 .pb-report-title{font-size:30px}.tabs{gap:23px}.tab{font-size:15px}
 .n-pri{grid-template-columns:repeat(3,minmax(0,1fr))}.n-loop{flex-direction:column}.n-loop .r-arrow{transform:rotate(90deg)}
 .rv-row{grid-template-columns:235px minmax(80px,1fr) 250px}.ab-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
 .wrap{padding:0 24px}.pb-header-inner{padding:16px 24px}.pb-heading{display:block}.pb-period{margin-top:6px}.pb-report-title{font-size:29px}nav.top .inner{padding:0 24px;gap:14px}
 .grid2,.grid3,.grid4,.r-split,.r-flow3,.pgrid,.lgrid,.agrid,.tradeoff,.excl,.r-rows{grid-template-columns:minmax(0,1fr)}
 .grid4:has(>.stat){grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0}
 .grid4>.stat{padding:14px 17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
 .grid4>.stat:nth-child(even){border-right:0}.grid4>.stat:nth-last-child(-n+2){border-bottom:0}
 .rv-row{grid-template-columns:minmax(0,1fr);gap:5px;margin-bottom:7px}.rv-track{height:12px}.rv-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sumhero .row{grid-template-columns:minmax(0,1fr);gap:5px}.rung{grid-template-columns:minmax(0,1fr);gap:7px}
 .facet{grid-template-columns:minmax(0,1fr);gap:3px}.r-engine{grid-template-columns:minmax(0,1fr)}.r-engine .r-arrow{transform:rotate(90deg)}
 .r-outs{grid-template-columns:repeat(2,minmax(0,1fr))}.band{width:100%!important}.figscroll svg{min-width:860px}
}
@media(max-width:560px){
 body{font-size:17px;line-height:1.43}.wrap{padding:0 18px}
 .pb-header-inner{padding:13px 18px 15px}.pb-brand-row{gap:20px;margin-bottom:8px}
 .pb-client-mark{width:124px;height:30px}.pb-client-mark img{width:143px;left:-6px;top:-37px}
 .pb-logo{width:76px}[data-theme="dark"] .pb-logo{width:82px;padding:3px}
 .pb-report-title{font-size:27px;line-height:1.2;letter-spacing:-.02em}.pb-period{font-size:13.5px;margin-top:6px}
 nav.top .inner{padding:0 18px;gap:12px}.tabs{gap:22px}.tab{font-size:15px;padding:12px 0 10px}.themeBtn{width:29px;height:29px}
 section.blk{padding:22px 0}.secnum,.kicker{font-size:12.5px;letter-spacing:.01em;line-height:1.4}
 h1.big{font-size:33px}h2.sec{font-size:29px;line-height:1.2}h3.sub{font-size:23px;margin-top:20px}
 .sub,.lede,p.body{font-size:17px;line-height:1.43}.grid2,.grid3{gap:12px}.card,.hero,.pcard{padding:13px 15px}
 #review>.blk:first-child>.grid3>.card{padding:12px 15px}.card h4,.pcard h4,.hero .hn,.chhead .ctitle{font-size:21px}
 #review>.blk:first-child .card h4{font-size:22px}#review>.blk:first-child .card p.body{font-size:17px}
 .callout,.sumhero,.uvp,.fig{padding:13px 15px}.callout p{font-size:17px}.grid4>.stat{padding:12px 13px}.stat .n{font-size:30px}.stat .l{font-size:14px;line-height:1.35}
 .rv-flow,.n-pri{grid-template-columns:minmax(0,1fr)}.ab-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-st{padding:12px}.ab-l{font-size:15px}.ab-d{font-size:13.5px}
 .rv-score{padding:15px 17px;gap:13px}.rv-num{font-size:39px}.rv-meta{font-size:16px}.as-tabs{gap:6px}.as-tab{font-size:14px;padding:7px 10px}
 .tbl,.kw{font-size:15px}.tbl th,.kw th{font-size:14px;padding:9px 10px}.tbl td,.kw td{padding:9px 10px}
 .ftable td{font-size:15.5px;padding:7px 5px;line-height:1.4}.ftable td.lbl{font-size:14px;width:100px;line-height:1.4;overflow-wrap:normal}.ftable td.val{overflow-wrap:anywhere}
 .uvp .q{font-size:24px}.uvp p,.ctablock p,.sumhero .val{font-size:17px}.ctablock{padding:21px 17px}.ctablock h2{font-size:28px}
 .tpanel{padding:12px 13px}.tpanel .th{flex-wrap:wrap}.sizeb{margin-left:0}.chhead .ctags{margin-left:0}.chhead{gap:6px 10px}
 .facet .fl{font-size:14px}.fchip{font-size:15px}.r-outs{grid-template-columns:minmax(0,1fr)}.kchips{grid-template-columns:repeat(2,minmax(0,1fr))}.kchip .n{font-size:24px}.kchip .l{font-size:15px}
 summary{font-size:15.5px;padding:11px 12px;gap:7px}.dbody{padding:6px 12px 11px}.foot .note,figcaption{font-size:13.5px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Eyebrows share headline contrast, including source inline colors. */
.secnum,.kicker,.rv-type,.n-lab,.n-layer,.rv-fk,.chhead .clabel,.ptag,.htag,.persona,.tpanel .th,.callout>.k{color:var(--ink)!important}
.uvp>.k{color:#F3F7F7!important}
