/* AREFMB public-page consistency pass. Private valuation routes do not load this file. */
html{scroll-padding-top:88px}
body{background:#fff!important;color:#000!important}
body header{padding:12px 0!important}
body header .wrap{max-width:1280px!important}
body header .mark{font-size:30px!important;line-height:1.1!important}
body header nav{display:flex!important;gap:12px!important;align-items:center;grid-template-columns:none!important}
body header nav a{flex:0 0 auto!important;width:auto!important;text-transform:uppercase!important;border:0!important;border-bottom:2px solid transparent!important;background:transparent!important;color:#000!important}
body header nav a[aria-current=page]{border-bottom-color:#0053cd!important}
body header nav a{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:8px 7px!important;line-height:1.25!important}
body :is(.wrap,.container,.page-wrap){max-width:1280px}
body main>section,body main>.wrap>section{padding-top:26px!important;padding-bottom:26px!important}
body :is(.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero){padding-top:24px!important;padding-bottom:22px!important;min-height:0!important}
body :is(.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero) h1{font-size:clamp(34px,4vw,54px)!important;line-height:1.12!important;margin:6px 0 12px!important}
body :is(.hero,.article-hero,.worth-hero,.finance-hero,.politics-hero,.page-hero) .lede{font-size:18px!important;line-height:1.5!important;margin:8px 0!important;max-width:72ch!important}
body :is(.section-heading,.section-header){margin-bottom:16px!important;gap:24px!important}
body :is(.section-heading,.section-header) h2{margin:0!important}
body :is(.editorial-card,.research-item,.politics-card,.topic,.path-list li,.tool-card,.finance-card){padding:20px!important;min-height:0!important}
body :is(.editorial-grid,.politics-grid,.topic-grid,.path-list,.tools-grid){gap:16px!important;margin-top:18px!important}
body :is(.article-body,.article-content,.prose,.reading-column){max-width:76ch!important;font-size:18px!important;line-height:1.6!important}
body :is(.article-body,.article-content,.prose,.reading-column) p{margin:0 0 1em!important}
body :is(.article-body,.article-content,.prose,.reading-column) h2{margin:1.25em 0 .45em!important;font-size:30px!important;line-height:1.2!important}
body :is(.button,.btn,.filter-button,.news-filters button,.filter-row button,.congress-tabs button,.senate-minis button){min-height:44px!important;line-height:1.3!important;padding:10px 14px!important}
body footer{padding-top:20px!important;padding-bottom:20px!important;margin-top:20px!important}
body :is(.congress-main,.finance-main,.research-main){padding-top:18px!important}
body .senate-minis button{min-width:44px!important}
body :is(.video-note,.video-sources){margin-top:18px!important}
body :is(.video-section,.compact-section){padding-top:26px!important;padding-bottom:26px!important}
body .politics-index>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
body header{position:static!important;padding:10px 0!important}
body header .wrap{padding-left:16px!important;padding-right:16px!important;gap:8px!important}
body header .mark{font-size:26px!important}
body header nav{gap:3px!important;flex-wrap:wrap!important}
body header nav a{font-size:11px!important;padding:8px 5px!important;letter-spacing:0!important}
body :is(.wrap,.container,.page-wrap){padding-left:16px!important;padding-right:16px!important}
body main>section,body main>.wrap>section{padding-top:20px!important;padding-bottom:20px!important}
body :is(.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero){padding-top:18px!important;padding-bottom:18px!important}
body :is(.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero) h1{font-size:34px!important;line-height:1.12!important}
body :is(.editorial-card,.research-item,.politics-card,.topic,.path-list li,.tool-card,.finance-card){padding:16px!important}
body :is(.article-body,.article-content,.prose,.reading-column){font-size:18px!important;line-height:1.55!important}
body .section-heading{display:block!important}
body .politics-index{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
body :is(.video-section,.compact-section){padding-top:20px!important;padding-bottom:20px!important}
}
/* Preserve map-first controls and avoid padding an in-place tab as an article section. */
body .politics-workspace>section{padding:0!important}

/* Public reading rhythm: shared sizes, natural reflow, no content or data changes. */
:root{--reader-text:clamp(1.125rem,1.05rem + .3vw,1.25rem);--reader-title:clamp(2rem,1.4rem + 2vw,3rem);--reader-section:clamp(1.5rem,1.2rem + .8vw,2rem);--reader-label:.875rem;--reader-leading:1.55;--reader-measure:68ch}
body{font-size:var(--reader-text);line-height:var(--reader-leading);-webkit-text-size-adjust:100%}
body header nav a{font-size:var(--reader-label)!important;letter-spacing:0!important;text-transform:none!important}
body :is(main,.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero) h1{font-size:var(--reader-title)!important;line-height:1.12!important;text-wrap:balance;margin-block:0 1rem!important}
body :is(main,.article-body,.article-content,.prose,.reading-column) h2{font-size:var(--reader-section)!important;line-height:1.2!important;text-wrap:balance}
body :is(.article-body,.article-content,.prose,.reading-column){font-size:var(--reader-text)!important;line-height:var(--reader-leading)!important;max-width:var(--reader-measure)!important}
body :is(.article-body,.article-content,.prose,.reading-column) :is(p,li){font-size:inherit!important;line-height:inherit!important}
body :is(.article-body,.article-content,.prose,.reading-column) p{margin-block:0 .85em!important}
body :is(.article-body,.article-content,.prose,.reading-column) h2{margin-block:1.15em .45em!important}
body :is(.meta,.data-date,.public-release-time,.qc-release-time,.eyebrow,.label){font-size:var(--reader-label)!important;line-height:1.4!important}
body :is(.button,.btn,button,input,select){font-size:1rem;line-height:1.35}
body :is(.button,.btn){font-size:1rem!important;min-height:44px!important}
body main :is(img,video){max-width:100%;height:auto}
body main :is(.editorial-card,.research-item,.politics-card,.topic,.tool-card,.finance-card){min-width:0;overflow-wrap:break-word}
body .politics-workspace{overflow-wrap:anywhere}
body .candidate-row{flex-wrap:wrap}
body .state-label select{min-width:0;max-width:100%}
@media(max-width:760px){body header nav{gap:2px 8px!important}body header nav a{padding:8px 4px!important}body :is(.meta,.data-date,.public-release-time){overflow-wrap:break-word}body .politics-title{flex-wrap:wrap;gap:8px}body .politics-title .public-release-time{margin:0 0 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Density revision: reclaim padding and gaps, not reading size or touch targets. */
body header{padding-block:4px!important}
body main>section,body main>.wrap>section{padding-block:16px!important}
body :is(.hero,.article-hero,.opinion-hero,.case-hero,.teaser-hero,.model-hero,.worth-hero,.finance-hero,.politics-hero,.congress-hero,.page-hero){padding-block:14px!important}
body :is(.editorial-card,.research-item,.politics-card,.topic,.path-list li,.tool-card,.finance-card){padding:14px!important}
body :is(.editorial-grid,.politics-grid,.topic-grid,.path-list,.tools-grid){gap:12px!important;margin-top:12px!important}
body :is(.section-heading,.section-header){margin-bottom:10px!important;gap:16px!important}
body footer{padding-block:14px!important;margin-top:12px!important}
body.qc-home #home-intro{padding-block:6px 12px!important}
body.qc-home #home-intro .wrap{max-width:1280px!important;padding-inline:24px!important}
body.qc-home #home-intro .home-purpose{margin-bottom:10px;padding-bottom:10px}
body.qc-home .home-feature-grid{gap:16px}
body.qc-home .home-supporting article{padding-left:16px!important}
body.qc-home .home-tools{margin-top:16px;padding-top:10px}
body.qc-home .home-tool-grid{gap:12px;margin-top:8px}
body.qc-home .home-topic-links{margin-top:8px;padding-top:4px}
body.qc-home .home-directory{padding-block:10px!important}
body .portfolio-page main,body.portfolio-page main{max-width:1280px;padding-bottom:24px}
body.portfolio-page .brief-list li{padding-block:8px}
@media(max-width:760px){body header .wrap{gap:4px!important}body main>section,body main>.wrap>section{padding-block:12px!important}body.qc-home #home-intro .wrap{padding-inline:16px!important}body.qc-home .home-feature-grid{gap:14px}body.qc-home .home-supporting article{padding:12px 0 0!important}body :is(.video-section,.compact-section){padding-block:14px!important}}

body header.personal-masthead{background:#000!important;color:#fff!important;padding:4px 0!important;border:0!important}
body header.personal-masthead .wrap{max-width:1280px!important;padding:0 20px!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px!important}
body header.personal-masthead .mark{display:inline-flex!important;align-items:center;gap:10px;color:#fff!important;font-size:28px!important;line-height:1!important;letter-spacing:0!important;text-decoration:none!important;margin:0!important;padding:0!important}
body header.personal-masthead .mark img{display:block;width:44px;height:44px;object-fit:contain;flex:none}
body header.personal-masthead .mark span{display:inline!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:inherit!important;opacity:1!important;visibility:visible!important}
body header.personal-masthead nav a{color:#fff!important;background:transparent!important;text-transform:none!important}
body header.personal-masthead nav{background:#000!important;border:0!important;padding:0!important;display:flex!important;flex-wrap:wrap;justify-content:flex-start;gap:4px!important}
body header.personal-masthead nav a{color:#fff!important;-webkit-text-fill-color:#fff!important;display:inline-flex!important;align-items:center;min-height:44px;padding:0 8px!important;font-size:15px!important;letter-spacing:0!important;opacity:1!important}
body header.personal-masthead nav a{margin:0!important;font-weight:500!important}
body header.personal-masthead.topbar{display:block!important}
body header.personal-masthead nav a[aria-current=page]{border-bottom-color:#fff!important}
body .personal-welcome{padding:24px 20px 20px!important;max-width:1280px!important;margin:0 auto}
body .personal-welcome h1{font-size:clamp(28px,3vw,38px)!important;line-height:1.15!important;margin:0 0 6px!important}
body .personal-welcome>p{font-size:22px!important;margin:0 0 4px!important}
body .bio-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline!important;color:#000!important;font-size:17px}
body .personal-doors{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
body .personal-doors a,body .personal-tool-grid article>a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 14px;background:#0053cd!important;color:#fff!important;text-decoration:none!important;font-size:18px!important;font-weight:600;box-sizing:border-box}
body :is(.personal-doors a,.bio-link,.personal-tool-grid a,.personal-masthead a):focus-visible{outline:3px solid #0053cd;outline-offset:3px}
body .personal-reading{padding:16px 20px!important;max-width:1280px;margin:auto;border-top:1px solid #d1d5db}
body .personal-reading>h2{font-size:24px!important;margin:0 0 14px!important}
body .personal-reading .home-story h2{font-size:24px!important;line-height:1.2!important;margin:0 0 8px!important}
body .personal-reading .home-story h2 a{color:#000!important;text-decoration:underline!important;text-underline-offset:3px}
body .personal-reading .home-story p{font-size:17px;margin:6px 0}
body .personal-reading .home-meta{font-size:13px!important;line-height:1.4}
body .personal-reading .home-kicker{display:none}
body .personal-tools{max-width:1280px;margin:auto;padding:20px}
body .personal-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body .personal-tool-grid p{margin:8px 0}
@media(max-width:760px){body header.personal-masthead .wrap{padding:0 16px!important;flex-wrap:wrap}body header.personal-masthead .mark{font-size:25px!important}body .personal-welcome{padding:20px 16px 16px!important}body .personal-doors{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body .personal-doors a:last-child{grid-column:1/-1}body .personal-reading{padding:14px 16px!important}body .personal-tool-grid{grid-template-columns:1fr}body header.personal-masthead nav{width:100%;gap:6px!important}}

body header.personal-masthead{background:#000!important;color:#fff!important;padding:4px 0!important;border:0!important}
body header.personal-masthead .wrap{max-width:1280px!important;padding:0 20px!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px!important}
body header.personal-masthead .mark{display:inline-flex!important;align-items:center;gap:10px;color:#fff!important;font-size:28px!important;line-height:1!important;letter-spacing:0!important;text-decoration:none!important;margin:0!important;padding:0!important}
body header.personal-masthead .mark img{display:block;width:44px;height:44px;object-fit:contain;flex:none}
body header.personal-masthead .mark span{display:inline!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:inherit!important;opacity:1!important;visibility:visible!important}
body header.personal-masthead nav a{color:#fff!important;background:transparent!important;text-transform:none!important}
body header.personal-masthead nav{background:#000!important;border:0!important;padding:0!important;display:flex!important;flex-wrap:wrap;justify-content:flex-start;gap:4px!important}
body header.personal-masthead nav a{color:#fff!important;-webkit-text-fill-color:#fff!important;display:inline-flex!important;align-items:center;min-height:44px;padding:0 8px!important;font-size:15px!important;letter-spacing:0!important;opacity:1!important}
body header.personal-masthead nav a{margin:0!important;font-weight:500!important}
body header.personal-masthead.topbar{display:block!important}
body header.personal-masthead nav a[aria-current=page]{border-bottom-color:#fff!important}
body .personal-welcome{padding:24px 20px 20px!important;max-width:1280px!important;margin:0 auto}
body .personal-welcome h1{font-size:clamp(28px,3vw,38px)!important;line-height:1.15!important;margin:0 0 6px!important}
body .personal-welcome>p{font-size:22px!important;margin:0 0 4px!important}
body .bio-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline!important;color:#000!important;font-size:17px}
body .personal-doors{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
body .personal-doors a,body .personal-tool-grid article>a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 14px;background:#0053cd!important;color:#fff!important;text-decoration:none!important;font-size:18px!important;font-weight:600;box-sizing:border-box}
body :is(.personal-doors a,.bio-link,.personal-tool-grid a,.personal-masthead a):focus-visible{outline:3px solid #0053cd;outline-offset:3px}
body .personal-reading{padding:16px 20px!important;max-width:1280px;margin:auto;border-top:1px solid #d1d5db}
body .personal-reading>h2{font-size:24px!important;margin:0 0 14px!important}
body .personal-reading .home-story h2{font-size:24px!important;line-height:1.2!important;margin:0 0 8px!important}
body .personal-reading .home-story h2 a{color:#000!important;text-decoration:underline!important;text-underline-offset:3px}
body .personal-reading .home-story p{font-size:17px;margin:6px 0}
body .personal-reading .home-meta{font-size:13px!important;line-height:1.4}
body .personal-reading .home-kicker{display:none}
body .personal-tools{max-width:1280px;margin:auto;padding:20px}
body .personal-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body .personal-tool-grid p{margin:8px 0}
@media(max-width:760px){body header.personal-masthead .wrap{padding:0 16px!important;flex-wrap:wrap}body header.personal-masthead .mark{font-size:25px!important}body .personal-welcome{padding:20px 16px 16px!important}body .personal-doors{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body .personal-doors a:last-child{grid-column:1/-1}body .personal-reading{padding:14px 16px!important}body .personal-tool-grid{grid-template-columns:1fr}body header.personal-masthead nav{width:100%;gap:6px!important}}

/* Retain visible choices, compact rhythm and one action color. */
body .personal-doors a{text-transform:none!important;letter-spacing:0!important}
body .home-meta,body .personal-tools .meta{font-variant-numeric:tabular-nums}
body header.personal-masthead nav a[aria-current=page]{font-weight:700!important;text-decoration:underline!important;text-underline-offset:6px}

/* Private public-site typography draft. Logo, content, colors and behavior retained. */
:root{--reader-text:20px;--reader-title:clamp(32px,3.2vw,44px);--reader-section:30px;--reader-label:14px;--reader-leading:1.5;--reader-measure:78ch;--font-body:Arial,Helvetica,sans-serif;--font-display:Arial,Helvetica,sans-serif}
html:root body,html:root body *:not([class*="icon"]):not([class*="fa-"]){font-family:Arial,Helvetica,sans-serif!important}
html:root body{font-size:20px!important;line-height:1.5!important}
html:root body :is(p,li){font-size:20px;line-height:1.5}
html:root body :is(.article-body,.article-content,.prose,.reading-column,.worth-content){width:100%;max-width:78ch!important;font-size:20px!important;line-height:1.5!important;box-sizing:border-box}
html:root body :is(.article-body,.article-content,.prose,.reading-column,.worth-content) :is(p,li){font-size:20px!important;line-height:1.5!important}
html:root body :is(.article-body,.article-content,.prose,.reading-column,.worth-content) p{margin-block:0 .85em!important}
html:root body h1{font-size:clamp(32px,3.2vw,44px)!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.02em!important}
html:root body h2{font-size:30px!important;line-height:1.2!important;font-weight:700!important;letter-spacing:-.015em!important}
html:root body h3{font-size:24px!important;line-height:1.25!important;font-weight:700!important}
html:root body .personal-reading .home-story h2{font-size:26px!important;line-height:1.2!important}
html:root body .personal-reading .home-story p{font-size:20px!important;line-height:1.45!important}
html:root body :is(.meta,.home-meta,.data-date,.public-release-time,.qc-release-time,.eyebrow,.label,time){font-size:16px!important;line-height:1.45!important;letter-spacing:0!important;font-variant-numeric:tabular-nums}
html:root body .personal-reading .home-story .home-meta,html:root body .personal-reading .home-story .home-meta *{font-size:14px!important;line-height:1.45!important}
html:root body :is(button,input,select,textarea,.button,.btn,.filter-button){font-size:18px!important;line-height:1.3!important;min-height:44px;box-sizing:border-box}
html:root body .personal-doors a,html:root body .personal-tool-grid article>a{font-size:19px!important;font-weight:700!important}
html:root body .bio-link{font-size:18px!important}
html:root body header.personal-masthead .mark{font-size:28px!important;letter-spacing:0!important}
html:root body header.personal-masthead nav a{font-size:17px!important;padding-inline:8px!important}
html:root body :is(table,th,td){font-size:17px;line-height:1.4;font-variant-numeric:tabular-nums}
html:root body svg text{font-family:Arial,Helvetica,sans-serif!important}
@media(max-width:760px){
 html:root body h2{font-size:26px!important}
 html:root body .personal-reading .home-story h2{font-size:25px!important}
 html:root body header.personal-masthead .mark{font-size:26px!important}
 html:root body header.personal-masthead nav a{font-size:16px!important;padding-inline:6px!important}
 html:root body :is(.wrap,.container,.page-wrap){padding-inline:16px!important}
}

/* Unified masthead and reader treatment; no content or data changes. */
html:root body header.personal-masthead{padding:0!important;background:#000!important}
html:root body header.personal-masthead .wrap{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:0!important;max-width:none!important}
html:root body header.personal-masthead .mark{align-self:flex-start;padding:10px 20px!important;gap:12px!important;font-size:clamp(30px,3vw,40px)!important;font-weight:500!important;letter-spacing:.015em!important;min-height:66px;box-sizing:border-box}
html:root body header.personal-masthead .mark img{width:62px!important;height:56px!important;object-fit:contain}
html:root body header.personal-masthead nav{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;background:#f3f4f6!important;padding:0 12px!important;gap:0!important;width:100%!important;box-sizing:border-box;border-bottom:1px solid #d1d5db!important}
html:root body header.personal-masthead nav a{background:transparent!important;color:#0053cd!important;-webkit-text-fill-color:#0053cd!important;min-height:48px!important;padding:8px 12px!important;font-size:19px!important;font-weight:700!important;text-decoration:none!important;border:0!important;border-radius:0!important;line-height:1.2!important}
html:root body header.personal-masthead nav a[aria-current=page]{color:#000!important;-webkit-text-fill-color:#000!important;border-bottom:3px solid #000!important;background:#fff!important}
html:root body main a:not(.button):not(.btn):not([role=button]):not(.card):not(.feature-card){color:#0053cd}
html:root body :is(.personal-reading .home-story h2 a,.bio-link){color:#0053cd!important}
html:root body :is(h2,h3){color:#1f4e64!important}
html:root body :is(h2,h3) a{color:#0053cd!important}
html:root body :is(.feature-panel,.dark-panel,.featured,.feature-card) :is(h2,h3){color:inherit!important}
html:root body :is(p,li){font-size:21px;line-height:1.5}
html:root body :is(.article-body,.article-content,.prose,.reading-column,.worth-content) :is(p,li){font-size:21px!important}
html:root body .personal-reading .home-story p{font-size:21px!important}
html:root body a:focus-visible{outline:3px solid #0053cd!important;outline-offset:3px}
@media(max-width:760px){
 html:root body header.personal-masthead .mark{padding:8px 16px!important;font-size:30px!important;gap:10px!important}
 html:root body header.personal-masthead nav{padding:0 8px!important}
 html:root body header.personal-masthead nav a{font-size:16px!important;padding:10px 8px!important;flex:1 0 auto;justify-content:center}
}

html:root body header.personal-masthead .mark{position:relative!important;z-index:100!important}
