/* Readyfront v4.19 — public stylesheet.
   Consolidated from v4.18: 197 unreachable rules removed and the design
   tokens merged into a single :root block. Source order is otherwise
   preserved exactly, so the cascade is unchanged. */
:root{--paper:#f4efe5;--paper-2:#ece5d7;--paper-3:#fbf8f1;--ink:#101719;--ink-2:#171f22;--muted:#5d625f;--brass:#b88b39;--brass-2:#d0aa63;--line:rgba(16,23,25,.16);--white:#fff;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--max:1340px;--pad:clamp(20px,3.8vw,58px);--radius:10px;--brass-text:#7a5a1b;--rf-motion-fast:360ms;--rf-motion-med:620ms;--rf-motion-slow:920ms;--rf-ease:cubic-bezier(.22,.61,.36,1);--rf-ease-out:cubic-bezier(.16,1,.3,1);--teal:#315c59;--teal-deep:#244846;--teal-soft:#dfe9e5;--clay:#895542;--clay-soft:#eadbd2;--slate:#536774;--slate-soft:#e1e7e9;--signal-line:rgba(49,92,89,.26)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
img,svg{display:block;max-width:100%}
button,input,textarea{font:inherit}
.wrap{width:min(var(--max),calc(100% - 2*var(--pad)));margin:auto}
.eyebrow{margin:0 0 14px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}
.h1,h1{font:500 clamp(48px,6.1vw,88px)/.98 var(--serif);letter-spacing:-.045em;margin:0}
.h2,h2{font:500 clamp(34px,4.2vw,60px)/1.02 var(--serif);letter-spacing:-.035em;margin:0}
.h3,h3{font:500 clamp(22px,2.2vw,32px)/1.08 var(--serif);letter-spacing:-.025em;margin:0}
.lede{font-size:clamp(17px,1.6vw,22px);line-height:1.5;max-width:650px;color:#2b3232}
.small{font-size:13px;color:var(--muted)}
.mast{height:74px;border-bottom:1px solid var(--line);background:rgba(244,239,229,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}
.mast.dark{background:rgba(16,23,25,.96);border-color:rgba(255,255,255,.12);color:#f8f3e9}
.mast .wrap{height:100%;display:flex;align-items:center;gap:34px}
.brand{text-decoration:none;font-size:22px;letter-spacing:-.04em}
.brand b{font-weight:900}
.nav{margin-left:auto;display:flex;align-items:center;gap:30px;font-size:12px;font-weight:700}
.nav a{text-decoration:none;opacity:.85}
.nav a:hover,.nav a.active{opacity:1;color:var(--brass)}
.nav .cta,.btn{border:1px solid var(--ink);padding:11px 16px;text-decoration:none;display:inline-flex;align-items:center;gap:14px;font-weight:800;font-size:12px;letter-spacing:.01em;background:transparent}
.mast.dark .nav .cta{border-color:var(--brass);background:var(--brass);color:var(--ink)}
.btn.fill{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.gold{background:var(--brass);border-color:var(--brass);color:var(--ink)}
.menu-btn{display:none;margin-left:auto;border:0;background:none;font-weight:800;color:inherit}
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero .wrap{min-height:520px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:42px;align-items:center;padding-top:70px;padding-bottom:70px}
.hero-copy{position:relative;z-index:2}
.hero-copy .lede{margin:26px 0}
.hero-art{position:relative;min-height:390px;display:flex;align-items:center;justify-content:center}
.hero-art svg{width:100%;height:390px}
.hero.dark{background:var(--ink);color:#f6f1e7;border-color:rgba(255,255,255,.12)}
.hero.dark .lede{color:#d4d0c8}
.hero.dark .btn{border-color:var(--brass);color:#f9f2e4}
.hero.dark .btn.fill{background:var(--brass);color:var(--ink)}
.section{padding:clamp(62px,7vw,105px) 0;border-bottom:1px solid var(--line)}
.section.compact{padding:44px 0}
.section.dark{background:var(--ink);color:#f7f0e4;border-color:rgba(255,255,255,.12)}
.section.dark .small,.section.dark .lede{color:#c9c6bf}
.section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:start;margin-bottom:42px}
.section-head p{margin:0;max-width:660px}
.rule-title{display:flex;align-items:center;gap:15px;margin-bottom:20px}
.rule-title:after{content:"";height:1px;background:var(--line);flex:1}
.metric{padding:32px 28px;border-right:1px solid rgba(255,255,255,.14);min-height:180px}
.metric:last-child{border-right:0}
.metric strong{font:500 clamp(42px,4vw,66px)/1 var(--serif);color:var(--brass-2);display:block;margin:7px 0 8px}
.metric b{font-size:13px}
.metric p{font-size:12px;color:#cac6bd;max-width:210px;margin:8px 0 0}
.three-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.three-grid>div{padding:34px;border-right:1px solid var(--line)}
.three-grid>div:last-child{border-right:0}
.kicker{font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:var(--brass);margin-bottom:18px}
.four-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.four-grid>div{padding:30px;border-right:1px solid var(--line)}
.four-grid>div:last-child{border-right:0}
.icon{width:44px;height:44px;border:1px solid rgba(184,139,57,.5);border-radius:50%;display:grid;place-items:center;color:var(--brass);font-weight:800;margin-bottom:18px}
.signal-band{padding:54px 0;background:var(--ink);color:#f8f1e5}
.signal-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:60px;align-items:center}
.signal-grid .h2{font-size:clamp(32px,3.3vw,50px)}
.rf-process-rail{display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.rf-process-rail:before{content:"";position:absolute;top:31px;left:8%;right:8%;height:1px;background:var(--line)}
.rf-process-step{position:relative;padding:0 24px 0 0}
.rf-step-num{position:relative;z-index:1;width:62px;height:62px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;font:500 28px var(--serif);color:var(--brass);margin-bottom:26px}
.rf-process-step b{display:block;margin-bottom:7px}
.rf-process-step p{margin:0;font-size:13px;color:var(--muted)}
.question{padding:62px 0;background:var(--ink);color:#f7f0e4;position:relative;overflow:hidden}
.question .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.question h2{max-width:760px}
.question-list{display:grid;gap:15px}
.question-list div{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.15);font-size:14px}
.question-list div:before{content:"○";color:var(--brass);margin-right:13px}
.audit-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.audit-row>div{padding:24px;border-right:1px solid var(--line);font-size:13px}
.audit-row>div:last-child{border-right:0}
.audit-row b{display:block;font:500 18px var(--serif);margin-bottom:6px}
.matrix-wrap{display:grid;grid-template-columns:minmax(220px,.48fr) minmax(560px,1.52fr);gap:55px;align-items:center}
.matrix-copy p{max-width:320px}
.matrix{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;border:1px solid var(--line);position:relative;min-height:520px}
.quad{padding:48px 42px;display:flex;flex-direction:column;justify-content:center;min-height:250px}
.quad:nth-child(1),.quad:nth-child(2){border-bottom:1px solid var(--line)}
.quad:nth-child(1),.quad:nth-child(3){border-right:1px solid var(--line)}
.quad.primary{background:linear-gradient(145deg,rgba(184,139,57,.88),rgba(184,139,57,.52));color:var(--ink)}
.quad b{font:500 30px/1.05 var(--serif);display:block;margin-bottom:12px}
.quad p{margin:0;font-size:13px;max-width:250px}
.axis-y{position:absolute;left:-42px;top:50%;transform:translate(-50%,-50%) rotate(-90deg);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.axis-x{position:absolute;bottom:-34px;left:50%;transform:translateX(-50%);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.impact-hero-ghost{position:absolute;inset:0;pointer-events:none;opacity:.20}
.impact-hero-ghost span{position:absolute;font:500 clamp(58px,7vw,105px)/1 var(--serif);color:var(--brass)}
.impact-cards{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}
.impact-card{padding:30px;border-right:1px solid var(--line);min-height:275px}
.impact-card:last-child{border-right:0}
.impact-card strong{font:500 clamp(44px,4vw,66px)/1 var(--serif);display:block;color:var(--brass);margin:12px 0 8px}
.feature{display:grid;grid-template-columns:.7fr 1.3fr;border:1px solid var(--line);min-height:460px}
.feature-copy{padding:48px}
.feature-visual{padding:36px;border-left:1px solid var(--line);display:flex;align-items:center}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.article{padding:28px;border-right:1px solid var(--line);min-height:260px}
.article:last-child{border-right:0}
.article .art{height:100px;margin-bottom:22px;background:linear-gradient(140deg,rgba(184,139,57,.08),rgba(16,23,25,.04));border:1px solid rgba(16,23,25,.1);overflow:hidden}
.article h3{font-size:24px}
.article p{font-size:13px;color:var(--muted)}
.pattern-table{border-top:1px solid var(--line)}
.pattern-row{display:grid;grid-template-columns:170px 1fr 1.15fr 150px;border-bottom:1px solid var(--line);align-items:center}
.pattern-row>div{padding:18px 12px;font-size:13px}
.company{font-weight:900;font-size:16px}
.footer{padding:34px 0;border-top:1px solid var(--line);background:var(--paper)}
.footer .wrap{display:flex;align-items:center;gap:30px}
.footer-brand b{font-size:20px}
.footer-brand span{margin-left:28px;color:var(--brass);font:500 17px var(--serif)}
.footer nav{margin-left:auto;display:flex;gap:24px;font-size:12px}
.footer nav a{text-decoration:none}
.workspace{background:#f3f0e8;min-height:100vh}
@media(max-width:1050px){
.nav{gap:18px}
.hero .wrap{grid-template-columns:1fr 1fr}
.matrix-wrap{grid-template-columns:1fr}
.matrix-copy p{max-width:700px}
}
@media(max-width:820px){
.mast{height:66px}
.nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--paper);padding:20px var(--pad);flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
.mast.dark .nav{background:var(--ink)}
.nav.open{display:flex}
.menu-btn{display:block}
.hero .wrap{grid-template-columns:1fr;min-height:auto;padding-top:50px;padding-bottom:48px}
.hero-art{min-height:280px}
.hero-art svg{height:280px}
.section-head,.signal-grid,.question .wrap,.feature{grid-template-columns:1fr}
.metric-grid,.impact-cards{grid-template-columns:1fr 1fr}
.metric:nth-child(2),.impact-card:nth-child(2){border-right:0}
.metric:nth-child(-n+2),.impact-card:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}
.impact-card:nth-child(-n+2){border-bottom-color:var(--line)}
.three-grid{grid-template-columns:1fr}
.three-grid>div{border-right:0;border-bottom:1px solid var(--line)}
.four-grid,.rf-process-rail{grid-template-columns:1fr 1fr}
.rf-process-rail:before{display:none}
.rf-process-step{padding:20px 16px}
.audit-row{grid-template-columns:1fr 1fr}
.audit-row>div:nth-child(2){border-right:0}
.audit-row>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
.article-grid{grid-template-columns:1fr}
.article{border-right:0;border-bottom:1px solid var(--line)}
.article:last-child{border-bottom:0}
.feature-visual{border-left:0;border-top:1px solid var(--line)}
.pattern-row{grid-template-columns:130px 1fr}
.pattern-row>div:nth-child(3),.pattern-row>div:nth-child(4){grid-column:2}
}
@media(max-width:560px){
.impact-hero-ghost{display:none}
:root{--pad:18px}
.h1,h1{font-size:48px}
.hero .wrap{padding-top:38px}
.metric-grid,.impact-cards,.four-grid,.rf-process-rail,.audit-row,.workspace-grid4{grid-template-columns:1fr}
.metric,.impact-card,.four-grid>div,.workspace-grid4>div{border-right:0!important;border-bottom:1px solid var(--line)}
.metric{border-bottom-color:rgba(255,255,255,.14)}
.metric:last-child,.impact-card:last-child,.workspace-grid4>div:last-child{border-bottom:0}
.question .wrap{gap:30px}
.matrix{min-height:0;grid-template-columns:1fr;grid-template-rows:auto}
.quad{min-height:180px;border:0!important;border-bottom:1px solid var(--line)!important;padding:30px}
.quad:last-child{border-bottom:0!important}
.axis-x,.axis-y{display:none}
.footer .wrap{align-items:flex-start;flex-direction:column}
.footer nav{margin-left:0;flex-wrap:wrap}
.footer-brand span{display:block;margin:5px 0 0}
.pattern-row{grid-template-columns:1fr}
.pattern-row>div:nth-child(n){grid-column:1}
}
.container{width:min(var(--max),calc(100% - 2*var(--pad)));margin:auto}
.alt{background:var(--paper-3)}
.page-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.page-hero>.container{padding-top:clamp(56px,6.5vw,92px);padding-bottom:clamp(58px,7vw,96px)}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);gap:56px;align-items:center}
.page-hero-grid.with-art{grid-template-columns:minmax(0,.84fr) minmax(360px,1.16fr)}
.page-hero h1{font-size:clamp(48px,5.6vw,82px)}
.page-hero-side{font-size:clamp(17px,1.45vw,21px);color:#303737;max-width:580px}
.page-hero-side p{margin:0}
.page-hero .hero-art{min-height:320px}
.editorial{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(44px,6vw,90px);align-items:start}
.editorial>h2{max-width:11.5ch}
.prose{font-size:17px;line-height:1.72;max-width:760px}
.prose p:first-child{margin-top:0}
.prose strong{font-weight:800}
.section-visual-grid{margin-top:44px;display:grid;grid-template-columns:.42fr 1.58fr;gap:36px;border-top:1px solid var(--line);padding-top:30px;align-items:center}
.section-visual-copy h3{font-size:26px}
.section-visual-copy p{font-size:14px;color:var(--muted)}
.section-art{min-height:300px;border-left:1px solid var(--line);padding-left:32px;display:grid;place-items:center;overflow:hidden}
.rf-visual{width:100%;min-height:260px;display:grid;place-items:center;overflow:hidden}
.rf-visual svg{width:100%;height:auto}
.rf-visual.dark{background:var(--ink);padding:28px}
.steps,.cap-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.step,.cap{padding:28px;border-right:1px solid var(--line);min-height:220px}
.step:last-child,.cap:last-child{border-right:0}
.step>span,.cap .num{font-size:11px;color:var(--brass);font-weight:800;letter-spacing:.1em}
.step h3,.cap h3{font-size:25px;margin:42px 0 10px}
.step p,.cap p{font-size:13px;color:var(--muted)}
.principle{background:var(--ink);color:#f8f1e5;padding:clamp(58px,7vw,92px) 0;position:relative;overflow:hidden}
.principle>.container{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}
.principle blockquote{font:500 clamp(38px,4.6vw,66px)/1.02 var(--serif);letter-spacing:-.035em;margin:0}
.principle blockquote em{color:var(--brass-2);font-style:normal}
.principle-copy{font-size:17px;color:#cbc8c0}
.principle .eyebrow{color:var(--brass-2)}
.cta-band{position:relative;overflow:hidden;background:var(--paper-2);padding:clamp(52px,6vw,78px) 0;border-top:1px solid var(--line)}
.cta-band>.container{display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center}
.cta-band h2{font-size:clamp(36px,4vw,58px)}
.cta-box{font-size:16px}
.link{display:inline-flex;margin-top:13px;text-decoration:none;font-weight:800;font-size:13px;color:var(--brass)}
.decorative-corner{display:none}
.patterns-intro{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;margin-bottom:34px}
.pattern-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.pattern-mini{padding:28px;border-right:1px solid var(--line)}
.pattern-mini:last-child{border-right:0}
.pattern-mini h3{font-size:24px;margin:16px 0}
.pattern-mini p{font-size:13px;color:var(--muted)}
.pattern-mini a{font-size:12px;font-weight:800;color:var(--brass);text-decoration:none}
.research-disclaimer{font-size:11px;color:var(--muted);margin-top:18px;max-width:920px}
.conversation-first{background:var(--paper-3)}
.conversation-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:56px}
.conversation-layout h2{max-width:12ch}
.conversation-intro{font-size:17px;color:var(--muted);max-width:720px}
.form-shell{margin-top:30px;border:1px solid var(--line);background:#faf8f2;padding:30px}
.conversation-next{border-left:1px solid var(--line);padding-left:36px}
.conversation-next-label{font-size:11px;color:var(--brass);font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.conversation-next ol{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:26px;counter-reset:next}
.conversation-next li{counter-increment:next;position:relative;padding-left:52px}
.conversation-next li:before{content:counter(next);position:absolute;left:0;top:-2px;width:34px;height:34px;border:1px solid rgba(184,139,57,.55);border-radius:50%;display:grid;place-items:center;color:var(--brass);font-family:var(--serif);font-size:18px}
.conversation-next b{display:block;margin-bottom:4px}
.conversation-next span{font-size:13px;color:var(--muted)}
.article-hero{padding:clamp(58px,7vw,96px) 0 48px;border-bottom:1px solid var(--line)}
.article-hero .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(380px,1.2fr);gap:55px;align-items:center}
.article-meta{font-size:12px;color:var(--muted);margin-top:20px}
.article-body{padding:60px 0}
.article-layout{display:grid;grid-template-columns:220px minmax(0,720px) minmax(180px,1fr);gap:42px;align-items:start}
.article-toc{position:sticky;top:100px;font-size:12px;color:var(--muted)}
.article-toc b{display:block;color:var(--ink);margin-bottom:10px}
.article-toc a{display:block;text-decoration:none;padding:7px 0;border-bottom:1px solid rgba(16,23,25,.08)}
.article-prose{font-family:var(--serif);font-size:20px;line-height:1.68}
.article-prose h2{font-size:38px;margin:58px 0 18px}
.article-prose h3{font-size:28px;margin:38px 0 12px}
.article-prose p{margin:0 0 24px}
.article-prose ul,.article-prose ol{padding-left:24px}
.article-aside{border-left:1px solid var(--line);padding-left:24px;font-size:13px;color:var(--muted);position:sticky;top:100px}
.article-aside strong{font:500 25px/1.1 var(--serif);color:var(--ink);display:block;margin-bottom:12px}
.legal-toc{position:sticky;top:100px;align-self:start;font-size:12px}
.legal-toc b{display:block;margin-bottom:14px}
.legal-toc a{display:block;text-decoration:none;color:var(--muted);padding:6px 0}
.legal-prose{font-size:16px;line-height:1.75}
.legal-prose h2{font:500 30px/1.15 var(--serif);margin:42px 0 12px;letter-spacing:-.02em}
.legal-prose p{margin:0 0 18px}
.legal-prose li{margin-bottom:7px}
.legal-prose a{color:var(--brass);font-weight:700}
.partner-access{min-height:calc(100vh - 74px);display:grid;grid-template-columns:1fr 1fr}
.partner-access-copy{background:var(--ink);color:#f7f0e4;padding:clamp(52px,7vw,92px) max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)));position:relative;overflow:hidden}
.partner-access-copy h1{font-size:clamp(48px,5.5vw,78px);max-width:9ch}
.partner-access-copy .lede{color:#c9c6bf;margin-top:24px}
.partner-access-card{display:grid;align-content:center;padding:clamp(40px,6vw,90px);background:var(--paper-3)}
.login-card{width:min(100%,500px);border:1px solid var(--line);padding:34px;background:#fffdf8}
.login-card h2{font-size:34px;margin-bottom:8px}
.login-card p{font-size:14px;color:var(--muted)}
.access-assurance{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;color:#bbbdb8;max-width:520px}
.not-found{min-height:calc(100vh - 150px);display:grid;place-items:center;text-align:center;padding:60px 20px}
.not-found strong{font:500 clamp(90px,18vw,220px)/.8 var(--serif);color:rgba(184,139,57,.25)}
.not-found h1{font-size:48px;margin-top:-20px}
.not-found p{max-width:520px;color:var(--muted)}
@media(max-width:1120px){
.nav{gap:16px;font-size:11px}
.page-hero-grid.with-art{grid-template-columns:1fr 1fr}
.article-layout{grid-template-columns:180px minmax(0,1fr)}
.article-aside{grid-column:2;position:static;border-left:0;border-top:1px solid var(--line);padding:20px 0 0}
}
@media(max-width:820px){
.page-hero-grid,.page-hero-grid.with-art,.editorial,.section-visual-grid,.principle>.container,.cta-band>.container,.conversation-layout,.article-hero .wrap,.legal-layout,.partner-access{grid-template-columns:1fr}
.page-hero .hero-art{min-height:240px}
.editorial>h2{max-width:15ch}
.section-visual-grid{gap:20px}
.section-art{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}
.steps,.cap-grid{grid-template-columns:1fr 1fr}
.step:nth-child(2),.cap:nth-child(2){border-right:0}
.step:nth-child(-n+2),.cap:nth-child(-n+2){border-bottom:1px solid var(--line)}
.pattern-mini-grid{grid-template-columns:1fr}
.pattern-mini{border-right:0;border-bottom:1px solid var(--line)}
.pattern-mini:last-child{border-bottom:0}
.patterns-intro{grid-template-columns:1fr}
.conversation-next{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}
.article-layout{grid-template-columns:1fr}
.article-toc{display:none}
.article-aside{grid-column:1}
.legal-toc{display:none}
.partner-access-copy,.partner-access-card{padding-left:var(--pad);padding-right:var(--pad)}
}
@media(max-width:560px){
body{font-size:15px}
.mast .wrap{gap:12px}
.brand{font-size:24px}
.page-hero>.container{padding-top:42px;padding-bottom:48px}
.page-hero h1{font-size:45px;line-height:1}
.page-hero-side{font-size:17px}
.page-hero .hero-art{min-height:190px}
.section{padding:54px 0}
.section-head{gap:18px;margin-bottom:28px}
.editorial{gap:20px}
.editorial h2{font-size:37px}
.prose{font-size:16px}
.steps,.cap-grid{grid-template-columns:1fr}
.step,.cap{border-right:0!important;border-bottom:1px solid var(--line);min-height:0}
.step h3,.cap h3{margin-top:24px}
.principle>.container,.cta-band>.container{gap:28px}
.principle blockquote{font-size:39px}
.form-shell{padding:20px}
.partner-access-copy h1{font-size:47px}
.login-card{padding:24px}
.article-hero{padding-top:44px}
.article-hero h1{font-size:44px}
.article-prose{font-size:18px;line-height:1.65}
.article-prose h2{font-size:31px}
.legal-prose{font-size:15px}
.btn,.nav .cta{min-height:44px}
}
.menu-btn{min-height:44px;min-width:44px;padding:8px 10px;align-items:center;justify-content:center}
@media(max-width:820px){
.menu-btn{display:inline-flex}
}
html{scroll-padding-top:88px}
body{font-size:16px;line-height:1.6}
.h1,h1,.h2,h2,.h3,h3{text-wrap:balance}
.lede{max-width:680px}
.mast{height:78px}
.brand{font-size:26px}
.nav{gap:26px;font-size:13px}
.nav a{min-height:42px;display:inline-flex;align-items:center}
.nav .cta,.btn{min-height:44px;padding:11px 17px}
.nav a:not(.cta){position:relative}
.nav a.active:not(.cta):after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--brass)}
.section{padding:clamp(58px,5.7vw,86px) 0}
.section.compact{padding:42px 0}
.section-head{margin-bottom:34px;gap:46px}
.footer{padding:30px 0}
.footer nav a{min-height:34px;display:inline-flex;align-items:center}
.page-hero-grid.with-art{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);grid-template-areas:"title visual" "side visual";gap:18px 64px;align-items:center}
.page-hero-grid.with-art>h1{grid-area:title;align-self:end}
.page-hero-grid.with-art>.page-hero-side{grid-area:side;align-self:start;margin-top:18px}
.page-hero-grid.with-art>.hero-art{grid-area:visual;min-height:390px;margin:0;display:flex;align-items:center}
.page-hero-grid.with-art>.hero-art .rf-visual{min-height:330px}
.page-hero-grid.with-art>.hero-art svg{width:112%;max-width:none;margin-left:-4%}
.page-hero>.container{padding-top:clamp(52px,5.5vw,78px);padding-bottom:clamp(54px,5.7vw,82px)}
.page-hero h1{font-size:clamp(50px,5.35vw,78px)}
.page-hero-side{line-height:1.55}
.editorial{gap:clamp(38px,5vw,72px)}
.editorial>h2{max-width:12.5ch}
.prose{font-size:17px;line-height:1.67}
.section-visual-grid{margin-top:34px;grid-template-columns:.52fr 1.48fr;gap:30px;padding-top:26px}
.section-art{min-height:240px;padding-left:28px}
.rf-visual{min-height:220px}
.section-visual-copy p{font-size:14px;line-height:1.6}
.steps,.cap-grid{margin-top:30px}
.step,.cap{min-height:190px;padding:25px}
.step h3,.cap h3{margin-top:32px}
.step p,.cap p{font-size:13.5px;line-height:1.55}
.principle{padding:clamp(52px,5.5vw,78px) 0}
.cta-band{padding:clamp(46px,5vw,66px) 0}
.pattern-mini{padding:25px}
.pattern-mini p{font-size:13.5px;line-height:1.55}
.pattern-mini h3{margin-top:12px}
.page-value .section-visual-grid{grid-template-columns:minmax(220px,.45fr) minmax(0,1.55fr)}
.page-value .section-art{min-height:270px}
.page-value .section-art .rf-visual{min-height:250px}
.page-value .section:nth-of-type(4) .section-art .rf-visual svg{width:118%}
.page-contact .page-hero-grid.with-art{grid-template-columns:minmax(0,.95fr) minmax(390px,1.05fr)}
.page-contact .conversation-layout{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:48px}
.page-contact .form-shell{box-shadow:0 1px 0 rgba(16,23,25,.04);padding:28px}
.page-contact .conversation-next{background:rgba(236,229,215,.38);padding:28px 28px 30px;border:1px solid var(--line)}
.page-contact .conversation-next ol{margin-top:24px;gap:22px}
.page-why .section-visual-grid{grid-template-columns:minmax(220px,.48fr) minmax(0,1.52fr)}
.page-why .section-art{min-height:220px}
.page-why .section-art .rf-visual{min-height:205px}
.page-why .principle blockquote{max-width:16ch}
.rf-matrix-block .matrix-wrap{grid-template-columns:minmax(250px,.42fr) minmax(0,1.58fr);gap:48px}
.rf-matrix-block .matrix{min-height:560px}
.rf-matrix-block .quad{padding:42px}
.rf-matrix-block .quad-meta{display:block;margin:0 0 14px;font-size:10px;font-family:var(--sans);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.rf-matrix-block .quad.primary .quad-meta{color:rgba(16,23,25,.65)}
.page-impact .impact-card{min-height:245px;padding:27px}
.page-impact .impact-card p{font-size:13.5px;line-height:1.55}
.page-insights .feature{min-height:420px}
.page-insights .feature-copy{padding:42px}
.page-insights .article{min-height:235px}
.article-body{padding:52px 0 68px}
.article-layout{grid-template-columns:205px minmax(0,740px) minmax(180px,1fr);gap:38px}
.article-prose{font-size:19px;line-height:1.7}
.article-prose h2{margin-top:50px}
.article-aside,.article-toc{font-size:13px}
.legal-prose{font-size:16.5px;line-height:1.72}
.legal-prose h2{font-size:31px}
.legal-toc{font-size:13px}
.legal-toc a{padding:7px 0}
.page-partner-access .partner-access{min-height:calc(100vh - 78px)}
.page-partner-access .partner-access-copy{display:flex;flex-direction:column;justify-content:center}
.page-partner-access .partner-access-copy .rf-visual{min-height:170px;margin-top:28px}
.page-partner-access .partner-access-card{padding:clamp(36px,5vw,70px)}
.page-partner-access .login-card{box-shadow:0 18px 60px rgba(16,23,25,.06)}
.page-404 .not-found{min-height:calc(100vh - 142px)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.btn:hover,.nav .cta:hover{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media(max-width:1120px){
.brand{font-size:24px}
.nav{font-size:12px;gap:17px}
.page-hero-grid.with-art{grid-template-columns:minmax(0,1fr) minmax(350px,.92fr);gap:16px 38px}
.page-hero-grid.with-art>.hero-art{min-height:320px}
.rf-matrix-block .matrix-wrap{grid-template-columns:1fr}
.rf-matrix-block .matrix-copy{max-width:760px}
.rf-matrix-block .matrix{min-height:520px}
}
@media(max-width:820px){
.mast{height:68px}
.nav{top:68px;padding-top:12px;padding-bottom:16px;gap:2px}
.nav a{width:100%;min-height:46px;padding:9px 0}
.nav a.active:not(.cta):after{bottom:4px;right:auto;width:34px}
.page-hero-grid.with-art{grid-template-columns:1fr;grid-template-areas:"title" "side" "visual";gap:14px}
.page-hero-grid.with-art>.page-hero-side{margin-top:2px}
.page-hero-grid.with-art>.hero-art{min-height:235px;margin-top:12px}
.page-hero-grid.with-art>.hero-art .rf-visual{min-height:215px}
.page-hero-grid.with-art>.hero-art svg{width:100%;margin:0}
.section-visual-grid,.page-value .section-visual-grid,.page-why .section-visual-grid{grid-template-columns:1fr}
.section-art{min-height:210px;padding-left:0}
.conversation-layout{gap:30px}
.page-contact .conversation-next{border-left:1px solid var(--line)}
.article-layout{grid-template-columns:1fr}
}
@media(max-width:560px){
:root{--pad:18px}
.mast .wrap{width:calc(100% - 30px)}
.brand{font-size:25px}
.page-hero>.container{padding-top:38px;padding-bottom:42px}
.page-hero h1{font-size:42px;line-height:.99}
.page-hero-side{font-size:16.5px}
.page-hero-grid.with-art>.hero-art{min-height:185px}
.page-hero-grid.with-art>.hero-art .rf-visual{min-height:170px}
.section{padding:48px 0}
.section.compact{padding:34px 0}
.editorial h2{font-size:35px;max-width:100%}
.section-visual-grid{margin-top:26px;padding-top:22px}
.section-art{min-height:170px}
.rf-visual{min-height:160px}
.steps,.cap-grid{margin-top:24px}
.step,.cap{padding:22px}
.principle blockquote{font-size:36px}
.cta-band h2{font-size:36px}
.conversation-intro{font-size:16px}
.page-contact .form-shell{padding:18px}
.page-contact .conversation-next{padding:22px 20px}
.article-hero h1{font-size:40px}
.article-prose{font-size:18px}
.article-prose h2{font-size:30px}
.legal-prose{font-size:16px}
.rf-matrix-block .matrix{border:0}
.rf-matrix-block .quad{padding:26px 22px;border:1px solid var(--line)!important;border-bottom:0!important;min-height:0}
.rf-matrix-block .quad:last-child{border-bottom:1px solid var(--line)!important}
.rf-matrix-block .quad b{font-size:26px}
.rf-matrix-block .quad-meta{margin-bottom:10px}
.page-impact .impact-card{min-height:0}
.page-partner-access .partner-access-copy{padding-top:38px;padding-bottom:34px}
.page-partner-access .partner-access-copy h1{font-size:43px}
.page-partner-access .partner-access-copy .rf-visual{min-height:120px;margin-top:20px}
.page-partner-access .partner-access-card{padding-top:28px;padding-bottom:38px}
.page-partner-access .login-card{padding:22px}
.footer nav{gap:8px 18px}
}
.rf-visual, .hero-art, .section-art{min-width:0;max-width:100%;overflow:hidden}
.rf-visual svg,.hero-art svg,.section-art svg{width:100%!important;max-width:100%!important;height:auto!important;overflow:hidden}
.hero-art svg *{vector-effect:non-scaling-stroke}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.footer-brand-line{display:flex;align-items:baseline;gap:7px}
.footer-brand .footer-copyright{font:600 11px var(--sans);color:var(--muted);white-space:nowrap}
.footer-brand .footer-slogan{display:block;margin:0!important;color:var(--brass-text,var(--brass));font:500 16px var(--serif)}
@media(max-width:560px){
.footer .wrap{gap:20px}
.footer-brand{gap:2px}
.footer-brand .footer-slogan{font-size:15px}
}
@media(max-width:820px){
.page-contact .conversation-layout{grid-template-columns:minmax(0,1fr)!important}
.page-contact .conversation-next{width:auto;min-width:0}
.page-contact .form-shell,.page-contact .mock-form{min-width:0}
.page-contact .page-hero-grid.with-art{grid-template-columns:1fr!important;grid-template-areas:"title" "side" "visual"!important}
.page-contact .page-hero-grid.with-art>h1,.page-contact .page-hero-grid.with-art>.page-hero-side,.page-contact .page-hero-grid.with-art>.hero-art{min-width:0;width:auto}
}
body.rf-public-body{margin:0}
.site{min-height:100vh}
.mast .wrap,.footer .wrap{width:min(var(--max),calc(100% - (var(--pad)*2)));margin:0 auto}
.mast .custom-logo-link{display:flex;align-items:center}
.mast .custom-logo{display:block;width:auto;max-width:205px;max-height:36px;height:auto}
.nav .nav-list,.footer .footer-menu{list-style:none;margin:0;padding:0;display:contents}
.public-page-content{min-width:0}
.public-page-content>.page-hero:first-child,.public-page-content>.hero:first-child{border-top:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;margin:8px;padding:12px 16px;background:#fff;z-index:9999;color:#111}
.rf-hp-field{position:absolute!important;left:-9999px!important}
.form-message{margin:0 0 18px;padding:12px 14px;border:1px solid var(--line)}
.form-message.success{background:rgba(95,134,99,.08)}
.form-message.error{background:rgba(154,85,74,.08)}
.form-shell .form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-shell .form .form-message,.form-shell .form .rf-hp-field,.form-shell .form .checkbox-field,.form-shell .form .submit,.form-shell .form .form-note{grid-column:1/-1}
.form-shell .form .field.full{grid-column:1/-1}
.form-shell .form label{display:block;margin-bottom:7px;font:700 12px var(--sans);color:var(--ink)}
.form-shell .form input:not([type=checkbox]),.form-shell .form textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);background:rgba(255,255,255,.35);padding:13px 14px;font:500 16px var(--sans);color:var(--ink);border-radius:0}
.form-shell .form textarea{min-height:150px;resize:vertical}
.form-shell .form .checkbox-field{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:13px}
.form-shell .form .checkbox-field label{margin:0;font-weight:500;line-height:1.5}
.form-shell .form .submit{justify-self:start;min-height:46px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:11px 18px;font:700 13px var(--sans);cursor:pointer}
.form-shell .form .form-note{font-size:12px;color:var(--muted);margin:0}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.footer-brand-line{display:flex;align-items:baseline;gap:7px}
.footer-brand .footer-copyright{font:600 11px var(--sans);color:var(--muted);white-space:nowrap}
.footer-brand .footer-slogan{display:block;margin:0!important;color:var(--brass-text,var(--brass));font:500 16px var(--serif)}
@media(max-width:820px){
.mast .custom-logo{max-width:168px;max-height:30px}
.form-shell .form{grid-template-columns:1fr}
.form-shell .form .field,.form-shell .form .field.full{grid-column:1}
.form-shell .form .checkbox-field,.form-shell .form .submit,.form-shell .form .form-note,.form-shell .form .form-message{grid-column:1}
}
@media(max-width:560px){
.mast .custom-logo{max-width:154px;max-height:28px}
.footer-brand .footer-slogan{font-size:15px}
}
.footer .wrap{align-items:flex-start}
.footer-brand{display:grid;gap:5px}
.footer-brand-line{display:flex;align-items:baseline;gap:10px}
.footer-brand-mark{position:relative;display:inline-flex;align-items:baseline;text-decoration:none;font-size:22px;letter-spacing:-.04em}
.footer-brand-mark .brand-ready{position:relative;font-weight:900}
.footer-brand-mark .brand-ready:after{content:"";position:absolute;left:.02em;bottom:-3px;width:.42em;height:2px;background:var(--brass)}
.footer-brand-mark .brand-front{font-weight:450}
.footer-copyright{font:700 11px/1 var(--sans);color:var(--ink)!important;letter-spacing:.02em}
.footer-slogan{display:block!important;margin:0!important;color:var(--brass-text)!important;font:500 16px/1.25 var(--serif)!important}
.footer nav{padding-top:2px}
.impact-hero-chart svg{overflow:visible}
.chart-grid line{stroke:rgba(255,255,255,.10);stroke-width:1}
.light-grid line{stroke:rgba(16,23,25,.10)}
.chart-line{fill:none;stroke-width:3;stroke-linecap:round}
.chart-line.gold{stroke:var(--brass-2)}
.chart-line.light{stroke:#e8e2d7}
.chart-line.ink{stroke:var(--ink)}
.chart-area{fill:rgba(184,139,57,.08)}
.chart-marker{stroke:rgba(255,255,255,.22);stroke-width:1;stroke-dasharray:5 7}
.ink-marker{stroke:rgba(16,23,25,.18)}
.chart-dot{fill:var(--paper);stroke:var(--brass);stroke-width:2}
.chart-label{font:700 11px var(--sans);fill:#e8e2d7;letter-spacing:.06em}
.chart-label.gold{fill:var(--brass-2)}
.ink-label{fill:var(--ink)}
.chart-note{font:700 10px var(--sans);fill:#bcb8b0;letter-spacing:.08em}
.ink-note{fill:var(--muted)}
.impact-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:46px;align-items:end;margin-bottom:26px}
.impact-heading .small{max-width:680px;margin:0}
.impact-cards-v47{align-items:stretch}
.impact-card-v47{display:flex;flex-direction:column;min-height:360px;padding:26px 25px 20px}
.impact-card-head{display:flex;align-items:start;justify-content:space-between;gap:15px;min-height:91px}
.impact-card-head>div{display:grid}
.impact-card-v47 strong{margin:0 0 7px}
.impact-card-v47 b{font-size:13px}
.chart-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:right;padding-top:7px;max-width:86px}
.impact-card-v47>p{min-height:64px;margin:15px 0 4px}
.impact-chart{height:126px;margin-top:auto;border-top:1px solid rgba(16,23,25,.08);padding-top:11px}
.impact-chart svg{width:100%;height:112px;overflow:visible}
.impact-chart text{font:700 9px var(--sans);fill:var(--muted);letter-spacing:.05em}
.ic-grid line{stroke:rgba(16,23,25,.11);stroke-width:1}
.ic-area{fill:rgba(184,139,57,.10)}
.ic-line{fill:none;stroke:var(--brass);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ic-line.dark{stroke:var(--ink)}
.ic-points circle{fill:var(--paper-3);stroke:var(--brass);stroke-width:1.7}
.ic-points.dark circle{stroke:var(--ink)}
.ic-bars rect{fill:rgba(184,139,57,.78)}
.cadence-line{stroke:var(--brass);stroke-width:1.6}
.cadence-line.dark{stroke:var(--ink)}
.cadence-points circle{fill:var(--brass)}
.cadence-dark{fill:var(--ink)}
.article{display:flex;flex-direction:column}
.article-index{font:500 42px/1 var(--serif);color:rgba(184,139,57,.30);margin-bottom:22px}
.article h3{margin:0 0 14px}
.article p{margin:0 0 24px}
.article-link{margin-top:auto;text-decoration:none;font-size:12px;font-weight:800;color:var(--brass-text);display:inline-flex;align-items:center;gap:7px}
.article-link:hover{text-decoration:underline}
.insight-question .wrap{grid-template-columns:.8fr 1.2fr}
.insight-question-actions{display:grid;gap:24px}
.insight-mini-steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.14)}
.insight-mini-steps span{padding:16px;border-right:1px solid rgba(255,255,255,.14);font-size:12px;color:#d3d0c8}
.insight-mini-steps span:last-child{border-right:0}
.insight-mini-steps b{display:block;color:var(--brass-2);font:500 22px/1 var(--serif);margin-bottom:6px}
.insight-explain{justify-self:start}
.pattern-table-v47 .pattern-row{grid-template-columns:140px 1fr 1.15fr 150px}
.pattern-table-v47 .pattern-header{background:rgba(16,23,25,.035);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:10px;font-weight:800}
.pattern-table-v47 .pattern-header>div{font-size:10px}
.mechanism-tag{display:inline-flex;border:1px solid rgba(184,139,57,.32);padding:6px 9px;color:var(--brass-text);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:rgba(184,139,57,.06)}
.patterns-section .research-disclaimer{margin-top:16px}
.why-hero-art svg{min-height:300px}
.operator-continuity,.handoff-visual{margin-top:34px;border:1px solid var(--line);display:grid;grid-template-columns:minmax(260px,.42fr) minmax(0,1.58fr);background:rgba(255,255,255,.18)}
.operator-copy,.handoff-copy{padding:34px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}
.operator-copy h3,.handoff-copy h3{font-size:30px;margin-bottom:13px}
.operator-copy p:last-child,.handoff-copy p:last-child{font-size:14px;color:var(--muted)}
.continuity-map{position:relative;display:grid;grid-template-columns:repeat(4,1fr);min-height:330px;align-items:center;padding:40px 34px;gap:14px}
.continuity-track{position:absolute;left:12%;right:12%;top:50%;height:2px;background:linear-gradient(90deg,rgba(184,139,57,.18),var(--brass),rgba(184,139,57,.30));transform:translateY(-50%)}
.continuity-map article{position:relative;z-index:1;background:var(--paper-3);border:1px solid var(--line);padding:20px;min-height:150px;box-shadow:0 8px 26px rgba(16,23,25,.035)}
.continuity-map article span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;font:500 16px var(--serif);margin-bottom:22px}
.continuity-map article b{display:block;font:500 20px/1.1 var(--serif);margin-bottom:8px}
.continuity-map article small{font-size:11px;color:var(--muted)}
.leader-section{background:var(--paper-3)}
.leader-card{padding:38px;display:grid;grid-template-columns:120px 1fr;gap:30px;border-right:1px solid var(--line);align-items:start}
.leader-card h2{font-size:46px;margin-bottom:18px}
.leader-card p{color:var(--muted);max-width:600px}
.leader-card .link{display:inline-flex;margin-top:18px;color:var(--brass-text);font-weight:800;font-size:12px}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}
.fit-grid>div{padding:28px}
.fit-grid>div+div{border-left:1px solid var(--line)}
.fit-grid h3{font-size:27px;margin-bottom:10px}
.fit-grid p:last-child{font-size:13px;color:var(--muted)}
.cadence-hero-svg{width:100%;height:auto}
@media(max-width:980px){
.impact-cards-v47{grid-template-columns:1fr 1fr}
.impact-card-v47:nth-child(2){border-right:0}
.impact-card-v47:nth-child(-n+2){border-bottom:1px solid var(--line)}
.impact-heading,.operator-continuity,.handoff-visual,.leader-grid{grid-template-columns:1fr}
.operator-copy,.handoff-copy,.leader-card{border-right:0;border-bottom:1px solid var(--line)}
.leader-card{grid-template-columns:100px 1fr}
.pattern-table-v47 .pattern-row{grid-template-columns:120px 1fr 1.1fr}
.pattern-table-v47 .pattern-row>div:last-child{grid-column:2/-1;padding-top:0}
.pattern-table-v47 .pattern-header>div:last-child{display:none}
}
@media(max-width:820px){
.insight-question .wrap{grid-template-columns:1fr}
.insight-mini-steps{grid-template-columns:1fr}
.insight-mini-steps span{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
.insight-mini-steps span:last-child{border-bottom:0}
.continuity-map{grid-template-columns:1fr 1fr;min-height:0}
.continuity-track{display:none}
.leader-card{grid-template-columns:1fr}
.fit-grid{grid-template-columns:1fr}
.fit-grid>div+div{border-left:0;border-top:1px solid var(--line)}
}
@media(max-width:560px){
.footer-brand-mark{font-size:23px}
.footer-slogan{font-size:15px!important}
.impact-heading{grid-template-columns:1fr;gap:12px}
.impact-cards-v47{grid-template-columns:1fr}
.impact-card-v47{border-right:0!important;border-bottom:1px solid var(--line)!important;min-height:0}
.impact-card-v47:last-child{border-bottom:0!important}
.impact-card-head{min-height:0}
.impact-card-v47>p{min-height:0}
.impact-chart{margin-top:18px}
.pattern-table-v47 .pattern-row{grid-template-columns:1fr;padding:12px 0}
.pattern-table-v47 .pattern-row>div,.pattern-table-v47 .pattern-row>div:last-child{grid-column:1;padding:7px 12px}
.pattern-table-v47 .pattern-header{display:none}
.company{font-size:18px}
.continuity-map{grid-template-columns:1fr;padding:20px}
.continuity-map article{min-height:0}
.leader-card,.leader-proof{padding:24px}
.leader-card h2{font-size:39px}
.operator-copy,.handoff-copy{padding:24px}
}
.footer-brand-mark span{margin:0!important;color:inherit!important;font:inherit!important}
.footer-brand-line .footer-copyright{margin:0!important;font:700 11px/1 var(--sans)!important;color:var(--ink)!important}
.pattern-source{display:block;margin-top:7px;font-size:10px;font-weight:800;color:var(--muted);text-decoration:none}
.pattern-source:hover{color:var(--brass-text);text-decoration:underline}
.leader-intro{margin-bottom:34px}
.leader-partner-proof{display:grid;grid-template-columns:repeat(4,1fr);margin-top:32px;border:1px solid var(--line)}
.leader-partner-proof article{padding:28px;border-right:1px solid var(--line);min-height:230px}
.leader-partner-proof article:last-child{border-right:0}
.leader-partner-proof span{font:700 11px/1 var(--sans);color:var(--brass-text);letter-spacing:.08em}
.leader-partner-proof h3{font-size:23px;margin:42px 0 12px}
.leader-partner-proof p{font-size:12px;color:var(--muted);line-height:1.6}
@media(max-width:980px){
.leader-evidence,.leader-partner-proof{grid-template-columns:1fr 1fr}
.leader-evidence article:nth-child(2),.leader-partner-proof article:nth-child(2){border-right:0}
.leader-evidence article:nth-child(-n+2),.leader-partner-proof article:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:620px){
.leader-evidence,.leader-partner-proof{grid-template-columns:1fr}
.leader-evidence article,.leader-partner-proof article{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:24px}
.leader-evidence article:last-child,.leader-partner-proof article:last-child{border-bottom:0}
.leader-partner-proof h3{margin-top:26px}
}
.rf-wordmark{position:relative;display:inline-flex;align-items:baseline;text-decoration:none;letter-spacing:-.045em;line-height:1}
.rf-wordmark .brand-ready{position:relative;font-weight:900}
.rf-wordmark .brand-front{font-weight:450}
.rf-wordmark .brand-ready:after{content:"";position:absolute;left:.015em;bottom:-4px;width:.40em;height:2px;background:var(--brass)}
.leader-photo{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:620px){
.rf-wordmark .brand-ready:after{bottom:-3px}
}
.page-value .management-impact-grid{grid-template-columns:minmax(220px,.38fr) minmax(0,1.62fr)}
.page-value .rf-management-impact-shell{min-height:360px;padding-left:30px;place-items:stretch}
.rf-management-impact{width:100%;min-height:330px;display:grid;grid-template-columns:minmax(210px,.72fr) 64px minmax(0,1.28fr);grid-template-rows:1fr auto;align-items:stretch;border:1px solid var(--line);background:linear-gradient(135deg,rgba(184,139,57,.055),transparent 42%);position:relative;overflow:hidden}
.management-core{background:var(--ink);color:var(--paper);padding:30px 26px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.management-kicker{font:800 10px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--brass-2);margin-bottom:14px}
.management-core>strong{font:500 clamp(24px,2.2vw,36px)/1.02 var(--serif);max-width:10ch}
.management-core-items{margin-top:28px;display:grid;gap:8px}
.management-core-items span{border-top:1px solid rgba(255,255,255,.14);padding-top:8px;font-size:12px;color:#d7d3c9}
.management-flow{display:grid;place-items:center;position:relative;background:linear-gradient(90deg,rgba(16,23,25,.025),rgba(184,139,57,.07))}
.management-flow:before,.management-flow:after{content:"";position:absolute;background:var(--line)}
.management-flow:before{height:1px;width:72%;left:0;top:50%}
.management-flow:after{width:1px;height:70%;right:16px;top:15%}
.management-flow span{width:26px;height:26px;border:1px solid var(--brass);border-radius:50%;background:var(--paper);position:relative;z-index:1}
.management-flow span:after{content:"→";position:absolute;inset:0;display:grid;place-items:center;color:var(--brass-text);font:800 13px var(--sans)}
.management-outcomes{display:grid;grid-template-rows:repeat(3,1fr);min-width:0}
.management-outcomes article{padding:20px 24px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(150px,.55fr) minmax(0,1fr);gap:22px;align-items:center}
.management-outcomes article:last-child{border-bottom:0}
.management-outcome-head{display:grid;gap:4px}
.management-outcome-head b{font:500 20px/1.1 var(--serif)}
.management-outcome-head span{font-size:11px;color:var(--muted)}
.management-bar-pair{display:grid;gap:8px}
.management-bar-pair>div{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:8px}
.management-bar-pair small{font:800 9px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.management-bar{height:8px;display:block;border-radius:999px;transform-origin:left center}
.management-bar.current{background:var(--ink)}
.management-bar.after{background:var(--brass)}
.decision-current{width:88%}
.decision-after{width:54%}
.escalation-current{width:80%}
.escalation-after{width:34%}
.forecast-current{width:48%}
.forecast-after{width:84%}
.management-note{grid-column:1/-1;margin:0;padding:11px 16px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);background:rgba(255,255,255,.4)}
.pattern-row[id]{scroll-margin-top:92px}
.company-context{display:block;margin-top:5px;font-size:10px;font-weight:600;color:var(--muted);letter-spacing:.02em;text-transform:none}
.pattern-mini .company-context{font-size:9px}
.pattern-table-v47 .company{line-height:1.15}
.impact-chart .baseline-point{fill:var(--ink)!important;stroke:var(--ink)!important}
.impact-chart .after-point{fill:var(--brass)!important;stroke:var(--brass)!important}
.impact-chart .baseline-bar{fill:var(--ink)!important}
.impact-chart .after-bar{fill:var(--brass)!important}
@media(max-width:980px){
.page-value .management-impact-grid{grid-template-columns:1fr}
.page-value .rf-management-impact-shell{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:24px}
.rf-management-impact{grid-template-columns:minmax(190px,.7fr) 52px minmax(0,1.3fr)}
}
@media(max-width:680px){
.page-value .rf-management-impact-shell{min-height:0}
.rf-management-impact{grid-template-columns:1fr;grid-template-rows:auto;min-height:0}
.management-core{padding:24px 22px}
.management-core>strong{max-width:14ch}
.management-core-items{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}
.management-core-items span{font-size:10px}
.management-flow{height:46px}
.management-flow:before{width:1px;height:100%;left:50%;top:0}
.management-flow:after{display:none}
.management-flow span{width:24px;height:24px}
.management-outcomes article{grid-template-columns:1fr;gap:12px;padding:19px 20px}
.management-outcome-head b{font-size:23px}
.management-note{grid-column:1}
.pattern-row[id]{scroll-margin-top:76px}
}
.partner-demo-access .partner-access-copy{justify-content:center}
.poc-preview-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);margin-top:34px;max-width:720px}
.poc-preview-strip>div{background:#101719;padding:18px 16px;display:grid;gap:5px}
.poc-preview-strip span{font:800 10px/1 var(--sans);letter-spacing:.1em;color:var(--brass-2)}
.poc-preview-strip b{font:500 17px/1.1 var(--serif)}
.poc-preview-strip small{color:#bcbeb9;font-size:11px;line-height:1.45}
.demo-gate-form{display:grid;gap:14px;margin-top:24px}
.demo-gate-form .field{display:grid;gap:7px}
.demo-gate-form label{font-size:12px;font-weight:700}
.demo-gate-form input{width:100%;min-height:50px;border:1px solid var(--line);background:#fff;padding:0 14px;color:var(--ink);font-size:16px}
.demo-gate-form input:focus{outline:2px solid rgba(184,139,57,.28);border-color:var(--brass-text)}
.demo-gate-form .login-btn{margin-top:2px;min-height:48px;border:0;background:var(--ink);color:#fff;font-weight:800;padding:0 18px}
.demo-gate-error{background:#fff3ef;border:1px solid #d7a398;color:#7a3026;padding:12px 14px;font-size:12px;margin:18px 0}
.partner-demo-access .demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.partner-demo-access .demo-key{border:1px solid var(--line);background:#fbf8f1;color:var(--ink);padding:13px;text-align:left;min-height:84px}
.partner-demo-access .demo-key:hover,.partner-demo-access .demo-key:focus{border-color:var(--brass-text);background:#fff}
.partner-demo-access .demo-key b,.partner-demo-access .demo-key small,.partner-demo-access .demo-key code{display:block}
.partner-demo-access .demo-key small{margin:4px 0 8px;color:var(--muted);font-size:10px}
.partner-demo-access .demo-key code{font-size:10px;color:var(--brass-text);font-weight:800}
.partner-demo-access .security-note{font-size:11px;color:var(--muted);margin-top:14px}
@media(max-width:760px){
.poc-preview-strip{grid-template-columns:1fr}
.partner-demo-access .demo-grid{grid-template-columns:1fr}
.partner-demo-access .demo-key{min-height:66px}
}
.rf-intake-form{display:block!important}
.rf-intake-form .intake-progress{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:18px}
.rf-intake-form .intake-progress span{padding:11px 12px;border-right:1px solid var(--line);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.rf-intake-form .intake-progress span:last-child{border-right:0}
.rf-intake-form .intake-section{border:1px solid var(--line);padding:0;margin:0 0 18px;background:#fffdf7}
.rf-intake-form .intake-section legend{float:left;width:100%;display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:12px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);background:rgba(236,229,215,.3)}
.rf-intake-form .intake-section legend+*{clear:both}
.rf-intake-form .intake-section legend>span{grid-row:1/3;width:34px;height:34px;border:1px solid rgba(184,139,57,.55);border-radius:50%;display:grid;place-items:center;color:var(--brass-text);font:600 16px var(--serif)}
.rf-intake-form .intake-section legend strong{font:500 21px/1.1 var(--serif)}
.rf-intake-form .intake-section legend small{font-size:11px;color:var(--muted);margin-top:3px}
.rf-intake-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px}
.rf-intake-form .field{display:grid;align-content:start}
.rf-intake-form .field.full,.rf-intake-form .checkbox-field.full{grid-column:1/-1}
.rf-intake-form .field label{margin-bottom:7px;font:700 11px var(--sans);color:var(--ink)}
.rf-intake-form .optional{font-weight:500;color:var(--muted)}
.rf-intake-form input:not([type=checkbox]),.rf-intake-form select,.rf-intake-form textarea{width:100%;border:1px solid rgba(16,23,25,.22);background:#fff;padding:12px 13px;font:500 16px var(--sans);color:var(--ink);border-radius:0;min-height:48px}
.rf-intake-form select{appearance:auto}
.rf-intake-form textarea{min-height:118px;resize:vertical}
.rf-intake-form input:focus,.rf-intake-form select:focus,.rf-intake-form textarea:focus{outline:2px solid rgba(140,103,38,.18);outline-offset:1px;border-color:var(--brass-text)}
.rf-intake-form .intake-choice-block{padding:20px 20px 0}
.rf-intake-form .intake-choice-block>b{font-size:12px}
.rf-intake-form .choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}
.rf-intake-form .choice-grid.compact{grid-template-columns:repeat(4,1fr);padding-bottom:20px}
.rf-intake-form .choice{display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 10px;border:1px solid var(--line);background:#faf7ef;font-size:11px;cursor:pointer}
.rf-intake-form .choice:has(input:checked){border-color:var(--brass-text);background:rgba(184,139,57,.08)}
.rf-intake-form .choice input{margin:0;accent-color:var(--brass-text)}
.rf-intake-form .checkbox-field{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}
.rf-intake-form .checkbox-field label{margin:0;font-size:12px;line-height:1.55}
.rf-intake-form .intake-submit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;background:var(--ink);color:var(--paper);padding:22px 24px}
.rf-intake-form .intake-submit b{font:500 19px var(--serif);color:var(--brass-2)}
.rf-intake-form .intake-submit p{font-size:11px;color:#cfd1cc;margin:5px 0 0;max-width:620px}
.rf-intake-form .intake-submit .submit{background:var(--brass);color:#fff;border:0;min-height:48px;padding:0 18px;white-space:nowrap}
.rf-intake-form .form-note{font-size:11px;color:var(--muted);margin:12px 0 0}
.page-contact .form-shell{padding:20px;background:#f8f3e9}
.page-contact .conversation-layout{grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr)}
@media(max-width:980px){
.rf-intake-form .choice-grid,.rf-intake-form .choice-grid.compact{grid-template-columns:1fr 1fr}
.page-contact .conversation-layout{grid-template-columns:1fr}
.page-contact .conversation-next{border-left:0}
}
@media(max-width:620px){
.rf-intake-form .intake-progress{grid-template-columns:1fr 1fr}
.rf-intake-form .intake-progress span:nth-child(2){border-right:0}
.rf-intake-form .intake-progress span:nth-child(-n+2){border-bottom:1px solid var(--line)}
.rf-intake-form .form-grid{grid-template-columns:1fr;padding:16px}
.rf-intake-form .field.full,.rf-intake-form .checkbox-field.full{grid-column:1}
.rf-intake-form .choice-grid,.rf-intake-form .choice-grid.compact{grid-template-columns:1fr}
.rf-intake-form .intake-choice-block{padding:16px 16px 0}
.rf-intake-form .intake-section legend{padding:15px 16px}
.rf-intake-form .intake-submit{grid-template-columns:1fr;padding:20px}
.rf-intake-form .intake-submit .submit{width:100%}
.page-contact .form-shell{padding:12px}
}
.partner-demo-access .demo-grid{grid-template-columns:1fr!important}
.partner-demo-access .demo-key{min-height:0!important;display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:4px 14px;align-items:center}
.partner-demo-access .demo-key-type{grid-row:1/4;align-self:stretch;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:-13px 0 -13px -13px}
.partner-demo-access .demo-key b{font-family:var(--serif);font-size:17px;font-weight:500}
.partner-demo-access .demo-key small{font-size:10px}
.partner-demo-access .demo-key p{grid-column:2;font-size:10px;margin:0;color:var(--muted)}
.partner-demo-access .demo-key code{grid-column:3;grid-row:1/4;align-self:center}
.partner-demo-access .demo-key:hover .demo-key-type,.partner-demo-access .demo-key:focus .demo-key-type{background:var(--brass-text)}
@media(max-width:560px){
.partner-demo-access .demo-key{grid-template-columns:78px 1fr}
.partner-demo-access .demo-key code{grid-column:2;grid-row:auto}
.partner-demo-access .demo-key-type{grid-row:1/5}
.partner-demo-access .demo-key p{grid-column:2}
}
.rf-intake-form.rf-intake-enhanced .intake-section[hidden]{display:none!important}
.rf-intake-form.rf-intake-enhanced .intake-progress span{transition:background .18s ease,color .18s ease,border-color .18s ease}
.rf-intake-form.rf-intake-enhanced .intake-progress span.is-current{background:var(--ink);color:var(--paper)}
.rf-intake-form.rf-intake-enhanced .intake-progress span.is-done{color:var(--brass-text);background:rgba(184,139,57,.07)}
.rf-intake-form .intake-step-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:0 20px 20px}
.rf-intake-form .intake-step-actions .step-next,.rf-intake-form .intake-step-actions .step-back{min-height:46px;border:1px solid var(--ink);padding:0 16px;font:700 11px var(--sans);letter-spacing:.02em;cursor:pointer}
.rf-intake-form .intake-step-actions .step-next{margin-left:auto;background:var(--ink);color:var(--paper)}
.rf-intake-form .intake-step-actions .step-back{background:transparent;color:var(--ink)}
.rf-intake-form .intake-step-error{display:none;margin:0 20px 16px;padding:10px 12px;border-left:3px solid #9d3a2f;background:#fff2ef;color:#732b23;font-size:11px;line-height:1.45}
.rf-intake-form .intake-step-error.is-visible{display:block}
.rf-intake-form.rf-intake-enhanced .intake-submit{display:none}
.rf-intake-form.rf-intake-enhanced[data-step="3"] .intake-submit{display:grid}
@media(max-width:620px){
.rf-intake-form .intake-step-actions{padding:0 16px 16px}
.rf-intake-form .intake-step-actions button{flex:1}
.rf-intake-form .intake-step-actions .step-next{margin-left:0}
.rf-intake-form .intake-step-error{margin:0 16px 14px}
}
.rf-intake-form .intake-submit[hidden]{display:none!important}
html{scroll-behavior:smooth}
.rf-motion-ready [data-rf-reveal]{opacity:0;transform:translate3d(0,16px,0);transition:opacity var(--rf-motion-med) var(--rf-ease-out),transform var(--rf-motion-med) var(--rf-ease-out);transition-delay:var(--rf-delay,0ms);will-change:opacity,transform}
.rf-motion-ready [data-rf-reveal].is-visible{opacity:1;transform:none}
.rf-motion-ready [data-rf-reveal="soft"]{transform:translate3d(0,9px,0)}
.rf-motion-ready [data-rf-reveal="scale"]{transform:scale(.975);transform-origin:center}
.rf-motion-ready [data-rf-reveal="scale"].is-visible{transform:scale(1)}
.rf-motion-ready [data-rf-draw] path,.rf-motion-ready [data-rf-draw] polyline,.rf-motion-ready [data-rf-draw] line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset var(--rf-motion-slow) var(--rf-ease);transition-delay:var(--rf-delay,80ms)}
.rf-motion-ready [data-rf-draw].is-visible path,.rf-motion-ready [data-rf-draw].is-visible polyline,.rf-motion-ready [data-rf-draw].is-visible line{stroke-dashoffset:0}
.hero-art{isolation:isolate}
.hero-art:after{content:"";position:absolute;inset:12% 4%;background:radial-gradient(circle at 72% 50%,rgba(184,139,57,.10),transparent 35%);opacity:0;transform:scale(.85);transition:opacity 900ms var(--rf-ease),transform 1200ms var(--rf-ease-out);pointer-events:none;z-index:-1}
.hero-art.is-visible:after{opacity:1;transform:scale(1)}
.metric,.impact-card,.rf-process-step,.quad,.article,.feature,.pattern-row,.signal-grid>*,.three-grid>*,.four-grid>*{transition:border-color var(--rf-motion-fast) ease,background-color var(--rf-motion-fast) ease,transform var(--rf-motion-fast) var(--rf-ease-out)}
@media(hover:hover) and (pointer:fine){
.impact-card:hover,.article:hover,.feature:hover{transform:translateY(-3px)}
.quad.primary:hover{transform:translateY(-2px)}
.btn:hover{transform:translateY(-1px)}
}
.rf-process-rail:before{transform:scaleX(0);transform-origin:left;transition:transform 1050ms var(--rf-ease-out)}
.rf-process-rail.is-visible:before{transform:scaleX(1)}
.rf-process-step.is-visible .rf-step-num{animation:rf-node-settle 520ms var(--rf-ease-out) both;animation-delay:var(--rf-delay,0ms)}
@keyframes rf-node-settle{0%{transform:scale(.8);opacity:.25}100%{transform:scale(1);opacity:1}}
.matrix .quad{opacity:.001;transform:translateY(10px);transition:opacity 540ms var(--rf-ease-out),transform 540ms var(--rf-ease-out);transition-delay:var(--rf-delay,0ms)}
.matrix.is-visible .quad{opacity:1;transform:none}
.matrix.is-visible .quad.primary{animation:rf-primary-warmth 1050ms 620ms var(--rf-ease-out) both}
@keyframes rf-primary-warmth{0%{box-shadow:inset 0 0 0 rgba(184,139,57,0)}50%{box-shadow:inset 0 0 48px rgba(255,246,220,.22)}100%{box-shadow:inset 0 0 0 rgba(184,139,57,0)}}
.impact-hero-ghost span{animation:rf-ghost-settle 1000ms var(--rf-ease-out) both;animation-play-state:paused}
.impact-hero-ghost.is-visible span{animation-play-state:running}
@keyframes rf-ghost-settle{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
.question,.metric-band{background-position:0 50%;transition:background-position 1400ms var(--rf-ease-out)}
.intake-progress span{transition:color 260ms ease,border-color 260ms ease,background-color 260ms ease}
.intake-section{animation:rf-form-step 360ms var(--rf-ease-out) both}
@keyframes rf-form-step{from{opacity:.25;transform:translateX(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto!important}
.rf-motion-ready [data-rf-reveal],.rf-motion-ready [data-rf-draw] path,.rf-motion-ready [data-rf-draw] polyline,.rf-motion-ready [data-rf-draw] line,.rf-process-rail:before,.matrix .quad,.mini-chart:before,.hero-art:after{opacity:1!important;transform:none!important;scale:1 1!important;stroke-dashoffset:0!important;transition:none!important;animation:none!important}
.impact-card:hover,.article:hover,.feature:hover,.btn:hover{transform:none!important}
}
@media(max-width:820px){
:root{--pad:clamp(16px,4.5vw,28px)}
.page-hero>.container{padding-top:34px;padding-bottom:36px}
.page-hero-grid.with-art{gap:10px}
.page-hero-grid.with-art>.page-hero-side{margin-top:0}
.page-hero-grid.with-art>.hero-art{min-height:190px;margin-top:6px}
.page-hero-grid.with-art>.hero-art .rf-visual{min-height:176px}
.hero .wrap{padding-top:36px;padding-bottom:38px;gap:18px}
.hero-art{min-height:210px}
.hero-art svg{height:auto;max-height:235px}
.section{padding:44px 0}
.section.compact{padding:30px 0}
.section-head{gap:16px;margin-bottom:24px}
.section-visual-grid{gap:16px;margin-top:22px;padding-top:18px}
.section-art{min-height:155px;padding-top:18px}
.rf-visual{min-height:145px}
.question{padding:44px 0}
.question .wrap{gap:24px}
.question-list{gap:8px}
.question-list div{padding:10px 0}
.signal-band{padding:40px 0}
.signal-grid{gap:24px}
.principle,.cta-band{padding-top:46px;padding-bottom:46px}
.three-grid>div,.four-grid>div{padding:22px}
.audit-row>div{padding:18px}
.feature{min-height:0}
.feature-copy,.feature-visual{padding:28px}
.article{min-height:0;padding:22px}
.article .art{height:82px;margin-bottom:16px}
.pattern-row>div{padding:14px 10px}
.footer{padding:24px 0}
}
@media(max-width:560px){
body{font-size:15px;line-height:1.52}
:root{--pad:16px}
.mast{height:64px}
.nav{top:64px}
.brand{font-size:24px}
.page-hero>.container{padding-top:28px;padding-bottom:30px}
.page-hero h1{font-size:40px;line-height:.99}
.page-hero-side{font-size:16px;line-height:1.5}
.page-hero-grid.with-art>.hero-art{min-height:145px;margin-top:2px}
.page-hero-grid.with-art>.hero-art .rf-visual{min-height:135px}
.hero .wrap{padding-top:30px;padding-bottom:32px}
.hero-copy .lede{margin:18px 0}
.hero-art{min-height:165px}
.hero-art svg{max-height:180px}
.section{padding:38px 0}
.section.compact{padding:26px 0}
.section-head{gap:12px;margin-bottom:20px}
.section-head .lede{font-size:16px}
.editorial{gap:14px}
.editorial h2{font-size:33px}
.prose{font-size:16px}
.section-visual-grid{margin-top:20px;padding-top:16px}
.section-art{min-height:135px}
.rf-visual{min-height:128px}
.three-grid>div{padding:18px 18px}
.kicker{margin-bottom:10px}
.four-grid>div{padding:18px}
.four-grid .icon{width:38px;height:38px;margin-bottom:12px}
.audit-row>div{padding:16px}
.audit-row b{font-size:17px}
.question{padding:36px 0}
.question .wrap{gap:18px}
.question-list{gap:4px}
.question-list div{padding:9px 0;font-size:13px}
.signal-band{padding:34px 0}
.signal-grid{gap:18px}
.principle>.container,.cta-band>.container{gap:20px}
.principle blockquote{font-size:33px}
.cta-band h2{font-size:33px}
.feature-copy,.feature-visual{padding:20px}
.article{padding:18px}
.article p{font-size:12.5px}
.footer{padding:20px 0}
.footer .wrap{gap:14px}
.footer nav{gap:6px 16px}
.footer-brand .footer-slogan{margin-top:2px}
.rf-process-rail{display:grid;grid-template-columns:1fr;gap:0;position:relative;margin-top:18px;padding-left:0}
.rf-process-rail:before{display:block!important;top:19px;bottom:20px;left:19px;right:auto;width:1px;height:auto;transform:scaleY(0);transform-origin:top;background:var(--line)}
.rf-process-rail.is-visible:before{transform:scaleY(1)}
.rf-process-step{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:2px;padding:0 0 17px!important;border:0!important;min-height:0}
.rf-process-step:last-child{padding-bottom:0!important}
.rf-step-num{grid-column:1;grid-row:1/3;width:40px;height:40px;margin:0;background:var(--paper);font-size:19px}
.rf-process-step b{grid-column:2;grid-row:1;margin:1px 0 0;font-size:14px;align-self:end}
.rf-process-step p{grid-column:2;grid-row:2;margin:2px 0 0;font-size:12px;line-height:1.45;max-width:34ch}
.step,.cap,.impact-card,.metric,.article{min-height:0}
.step,.cap{padding:18px}
.step h3,.cap h3{margin-top:16px}
.impact-card{padding:18px}
.impact-card strong{font-size:43px;margin:8px 0 6px}
.metric{padding:18px 16px;min-height:142px}
.metric strong{font-size:43px;margin:4px 0 6px}
.metric p{font-size:11px;line-height:1.4;margin-top:5px}
.page-contact .form-shell{padding:9px}
.rf-intake-form .intake-section{margin-bottom:12px}
.rf-intake-form .intake-section legend{padding:12px 14px;grid-template-columns:34px minmax(0,1fr);column-gap:9px}
.rf-intake-form .intake-section legend>span{width:30px;height:30px;font-size:14px}
.rf-intake-form .intake-section legend strong{font-size:19px}
.rf-intake-form .form-grid{padding:14px;gap:12px}
.rf-intake-form .field label{margin-bottom:5px}
.rf-intake-form textarea{min-height:94px}
.rf-intake-form .intake-choice-block{padding:14px 14px 0}
.rf-intake-form .choice-grid{gap:6px;margin-top:8px}
.rf-intake-form .choice{min-height:42px;padding:8px 9px}
.rf-intake-form .intake-step-actions{padding:0 14px 14px}
}
@media(min-width:361px) and (max-width:560px){
.metric-grid,.impact-cards{grid-template-columns:1fr 1fr}
.metric,.impact-card{border-right:1px solid rgba(255,255,255,.14)!important;border-bottom:1px solid rgba(255,255,255,.14)!important}
.impact-card{border-color:var(--line)!important}
.metric:nth-child(2n),.impact-card:nth-child(2n){border-right:0!important}
.metric:nth-last-child(-n+2),.impact-card:nth-last-child(-n+2){border-bottom:0!important}
.four-grid{grid-template-columns:1fr 1fr}
.four-grid>div{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
.four-grid>div:nth-child(2n){border-right:0!important}
.four-grid>div:nth-last-child(-n+2){border-bottom:0!important}
}
@media(max-width:360px){
.metric,.impact-card{padding:15px 16px;min-height:0}
.metric strong,.impact-card strong{font-size:40px}
.three-grid>div,.four-grid>div{padding:16px}
}
@media(max-width:560px) and (prefers-reduced-motion:no-preference){
:root{--rf-motion-fast:260ms;--rf-motion-med:420ms;--rf-motion-slow:680ms}
}
@media(max-width:560px){
.impact-cards,.impact-cards-v47,.impact-card,.impact-card-v47,.impact-card-head{min-width:0}
.impact-card-head{gap:7px}
.chart-kicker{max-width:62px;font-size:8px;line-height:1.25}
.impact-chart{overflow:hidden}
.impact-chart svg{overflow:hidden}
}
.section-head{grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:clamp(38px,5vw,64px)}
.section-head .lede{max-width:720px}
.three-grid>div,.four-grid>div,.article,.why-system-grid article,.leader-evidence article,.leader-partner-proof article{min-height:0}
.article h3{line-height:1.12}
.pattern-row{align-items:start}
.pattern-row>div{line-height:1.5}
.alt{background:linear-gradient(180deg,var(--paper-3),rgba(223,233,229,.28))}
.page-home .three-grid>div:nth-child(1){background:linear-gradient(145deg,rgba(184,139,57,.08),transparent 72%)}
.page-home .three-grid>div:nth-child(2){background:linear-gradient(145deg,rgba(49,92,89,.07),transparent 72%)}
.page-home .three-grid>div:nth-child(3){background:linear-gradient(145deg,rgba(137,85,66,.06),transparent 72%)}
.page-home .signal-band{background:linear-gradient(115deg,#101719 0%,#142324 56%,#17302e 100%)}
.page-home .signal-band .eyebrow{color:#d7b872}
.page-how .audit-row>div{position:relative;background:rgba(255,255,255,.12)}
.page-how .audit-row>div:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--clay);opacity:.72}
.page-how .audit-row>div:nth-child(2):before{background:var(--brass)}
.page-how .audit-row>div:nth-child(3):before{background:var(--slate)}
.page-how .audit-row>div:nth-child(4):before{background:var(--teal)}
.page-how .section.dark.compact{background:linear-gradient(110deg,#101719,#132523 72%,#10201f)}
.page-value .page-hero{background:radial-gradient(circle at 84% 30%,rgba(49,92,89,.10),transparent 32%),var(--paper)}
.page-value .section:nth-of-type(2){box-shadow:inset 4px 0 0 rgba(184,139,57,.62)}
.page-value .section:nth-of-type(3){background:linear-gradient(110deg,var(--paper-3),rgba(223,233,229,.62));box-shadow:inset 4px 0 0 rgba(49,92,89,.58)}
.page-value .section:nth-of-type(3) .eyebrow{color:var(--teal)}
.page-value .section:nth-of-type(4){background:linear-gradient(110deg,var(--paper),rgba(234,219,210,.38));box-shadow:inset 4px 0 0 rgba(137,85,66,.48)}
.page-value .section:nth-of-type(4) .eyebrow{color:var(--clay)}
.page-value .rf-management-impact-shell{background:linear-gradient(145deg,rgba(255,255,255,.30),rgba(234,219,210,.22))}
.page-value .management-core{border-color:rgba(137,85,66,.25)}
.page-value .management-kicker{color:var(--clay)}
.page-value .management-bar.after{background:var(--teal)}
.page-value .management-bar.current{background:rgba(137,85,66,.42)}
.page-impact .hero.dark{background:radial-gradient(circle at 78% 18%,rgba(49,92,89,.22),transparent 26%),linear-gradient(115deg,#101719,#152122 62%,#172c2a)}
.page-impact .impact-card-v47{position:relative;background:rgba(255,255,255,.12)}
.page-impact .impact-card-v47:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--brass)}
.page-impact .impact-card-v47:nth-child(2):before{background:var(--clay)}
.page-impact .impact-card-v47:nth-child(3):before{background:var(--teal)}
.page-impact .impact-card-v47:nth-child(4):before{background:var(--slate)}
.page-impact .impact-card-v47:nth-child(2) .chart-kicker{color:var(--clay)}
.page-impact .impact-card-v47:nth-child(3) .chart-kicker{color:var(--teal)}
.page-impact .impact-card-v47:nth-child(4) .chart-kicker{color:var(--slate)}
.page-impact .four-grid>div:nth-child(1) .icon{color:var(--teal);border-color:rgba(49,92,89,.45)}
.page-impact .four-grid>div:nth-child(2) .icon{color:var(--clay);border-color:rgba(137,85,66,.42)}
.page-impact .four-grid>div:nth-child(3) .icon{color:var(--teal);border-color:rgba(49,92,89,.45)}
.page-impact .four-grid>div:nth-child(4) .icon{color:var(--brass);border-color:rgba(184,139,57,.46)}
.rf-matrix-block .quad:nth-child(1){background:linear-gradient(145deg,rgba(223,233,229,.70),rgba(255,255,255,.10))}
.rf-matrix-block .quad:nth-child(3){background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(236,229,215,.42))}
.rf-matrix-block .quad:nth-child(4){background:linear-gradient(145deg,rgba(225,231,233,.72),rgba(255,255,255,.12))}
.rf-matrix-block .quad:nth-child(1) .quad-meta{color:var(--teal)}
.rf-matrix-block .quad:nth-child(4) .quad-meta{color:var(--slate)}
.rf-matrix-block .question{background:linear-gradient(110deg,#101719,#152525 68%,#18312f)}
.page-insights .feature-visual{background:linear-gradient(145deg,rgba(223,233,229,.62),rgba(255,255,255,.14))}
.page-insights .article{position:relative}
.page-insights .article:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--brass)}
.page-insights .article:nth-child(2):before{background:var(--teal)}
.page-insights .article:nth-child(3):before{background:var(--clay)}
.page-insights .insight-question{background:linear-gradient(110deg,#101719,#142724 62%,#18322f)}
.page-insights .mechanism-tag{display:inline-flex;padding:4px 7px;border:1px solid rgba(49,92,89,.23);background:rgba(223,233,229,.55);color:var(--teal-deep)}
.page-insights .pattern-row:nth-child(3n+2) .mechanism-tag{background:rgba(234,219,210,.45);border-color:rgba(137,85,66,.20);color:var(--clay)}
.page-why .why-hero{background:radial-gradient(circle at 82% 22%,rgba(49,92,89,.10),transparent 31%),var(--paper)}
.page-why .continuity-map article:nth-of-type(1) span{background:var(--clay)}
.page-why .continuity-map article:nth-of-type(2) span{background:var(--brass);color:var(--ink)}
.page-why .continuity-map article:nth-of-type(3) span{background:var(--teal)}
.page-why .continuity-map article:nth-of-type(4) span{background:var(--ink)}
.page-why .section.alt{background:linear-gradient(120deg,var(--paper-3),rgba(223,233,229,.55))}
.page-why .leader-section{background:linear-gradient(180deg,var(--paper-3),rgba(225,231,233,.38))}
.page-why .fit-grid>div:first-child{background:rgba(223,233,229,.48)}
.page-why .fit-grid>div:last-child{background:rgba(234,219,210,.34)}
.page-contact .page-hero{background:radial-gradient(circle at 82% 28%,rgba(49,92,89,.10),transparent 32%),var(--paper)}
.page-contact .conversation-first{background:linear-gradient(180deg,var(--paper-3),rgba(223,233,229,.24))}
.page-contact .conversation-next{background:linear-gradient(145deg,rgba(223,233,229,.64),rgba(255,255,255,.24));border-color:rgba(49,92,89,.20)}
.page-contact .conversation-next-label{color:var(--teal)}
.page-contact .conversation-next li:before{border-color:rgba(49,92,89,.40);color:var(--teal)}
.page-contact .rf-intake-form .intake-section:nth-of-type(1) legend{box-shadow:inset 4px 0 0 var(--brass)}
.page-contact .rf-intake-form .intake-section:nth-of-type(2) legend{box-shadow:inset 4px 0 0 var(--teal)}
.page-contact .rf-intake-form .intake-section:nth-of-type(3) legend{box-shadow:inset 4px 0 0 var(--clay)}
.page-contact .rf-intake-form .intake-section:nth-of-type(4) legend{box-shadow:inset 4px 0 0 var(--slate)}
.page-contact .rf-intake-form .choice:has(input:checked){background:rgba(223,233,229,.62);border-color:var(--teal)}
.principle{background:radial-gradient(circle at 86% 50%,rgba(49,92,89,.18),transparent 28%),var(--ink)}
.cta-band{background:linear-gradient(120deg,var(--paper-2),rgba(223,233,229,.46))}
@media(max-width:820px){
.page-value .section:nth-of-type(2){box-shadow:inset 3px 0 0 rgba(184,139,57,.62)}
.page-value .section:nth-of-type(3){box-shadow:inset 3px 0 0 rgba(49,92,89,.58)}
.page-value .section:nth-of-type(4){box-shadow:inset 3px 0 0 rgba(137,85,66,.48)}
.page-impact .impact-card-v47:before{height:3px}
}
@media(max-width:560px){
.section-head{gap:13px}
.page-home .three-grid>div,.page-how .before-after .ba,.rf-matrix-block .quad,.page-why .fit-grid>div{background-image:none}
.rf-matrix-block .quad:nth-child(1){box-shadow:inset 3px 0 0 var(--teal)}
.rf-matrix-block .quad:nth-child(3){box-shadow:inset 3px 0 0 rgba(16,23,25,.18)}
.rf-matrix-block .quad:nth-child(4){box-shadow:inset 3px 0 0 var(--slate)}
.page-contact .conversation-next{background:rgba(223,233,229,.36)}
}
.signal-band .small,.question .small{color:#cfd2cd}
@media(max-width:820px){
.section-head{grid-template-columns:1fr}
}
@media(max-width:560px){
.page-home .three-grid>div{position:relative;border-top:0}
.page-home .three-grid>div:before{content:"";display:block;height:3px;margin:-18px -18px 16px;background:var(--brass)}
.page-home .three-grid>div:nth-child(2):before{background:var(--teal)}
.page-home .three-grid>div:nth-child(3):before{background:var(--clay)}
}
html,body{max-width:100%;overflow-x:clip}
@media(max-width:820px){
.rf-matrix-block .axis-y,.rf-matrix-block .axis-x{display:none}
}
@media (min-width:821px) and (max-width:1120px){
.rf-matrix-block .axis-y{left:-20px}
}
@media (max-width:480px){
.page-impact .impact-cards, .page-impact .impact-cards-v47{grid-template-columns:1fr!important}
.page-impact .impact-card, .page-impact .impact-card-v47{display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(132px,1.08fr);
    grid-template-areas:"head chart" "copy chart";
    column-gap:18px;
    row-gap:8px;
    align-items:center;
    padding:20px!important;
    border-right:0!important;
    border-bottom:1px solid var(--line)!important;
    min-height:0!important;}
.page-impact .impact-card:last-child, .page-impact .impact-card-v47:last-child{border-bottom:0!important}
.page-impact .impact-card-head{grid-area:head;display:block;min-height:0!important;align-self:end}
.page-impact .impact-card-head>div{display:block}
.page-impact .impact-card-v47 strong{font-size:42px;line-height:.95;margin:0 0 6px}
.page-impact .impact-card-v47 b{display:block;font-size:12px;line-height:1.25}
.page-impact .chart-kicker{display:block;max-width:none!important;text-align:left;padding:0;margin-top:7px;font-size:8px;line-height:1.25;letter-spacing:.055em}
.page-impact .impact-card-v47>p{grid-area:copy;min-height:0!important;margin:0;font-size:12px;line-height:1.42;align-self:start}
.page-impact .impact-chart{grid-area:chart;height:auto;min-height:118px;margin:0!important;padding-top:0;border-top:0;align-self:center;overflow:hidden}
.page-impact .impact-chart svg{width:100%!important;height:auto!important;max-height:132px;overflow:hidden}
}
@media (max-width:350px){
.page-impact .impact-card, .page-impact .impact-card-v47{grid-template-columns:1fr;
    grid-template-areas:"head" "copy" "chart";
    row-gap:10px;
    padding:18px!important;}
.page-impact .impact-chart{min-height:0;margin-top:4px!important}
.page-impact .impact-chart svg{max-height:108px}
.page-impact .impact-card-v47 strong{font-size:40px}
}
.rf-admin-hint{margin:12px 0 0;padding:10px 12px;border:1px dashed rgba(184,139,57,.6);background:rgba(184,139,57,.07);font-size:11px;line-height:1.45;color:var(--brass-text)}
.rf-offer{background:var(--paper-3)}
.rf-offer-head{max-width:820px}
.rf-offer-head .h2{margin-bottom:18px}
.rf-offer-head .lede{margin:0}
.rf-offer-terms{display:flex;flex-wrap:wrap;gap:0;margin:26px 0 0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rf-offer-terms>div{padding:16px 30px 16px 0;margin-right:30px;border-right:1px solid var(--line)}
.rf-offer-terms>div:last-child{border-right:0;margin-right:0;padding-right:0}
.rf-offer-terms dt{margin:0 0 5px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.rf-offer-terms dd{margin:0;font:500 19px/1.25 var(--serif);color:var(--ink)}
.rf-offer-cols{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:0;margin-top:42px;border:1px solid var(--line);background:rgba(255,255,255,.4)}
.rf-offer-col{padding:32px 34px}
.rf-offer-aside{border-left:1px solid var(--line);background:rgba(236,229,215,.34);display:flex;flex-direction:column}
.rf-offer-list,.rf-offer-need{list-style:none;margin:0;padding:0}
.rf-offer-list li{padding:18px 0;border-bottom:1px solid var(--line)}
.rf-offer-list li:first-child{padding-top:0}
.rf-offer-list li:last-child{border-bottom:0;padding-bottom:0}
.rf-offer-list b{display:block;font:500 21px/1.2 var(--serif);letter-spacing:-.02em;margin-bottom:7px}
.rf-offer-list span{display:block;font-size:14px;line-height:1.6;color:var(--muted);max-width:60ch}
.rf-offer-need li{position:relative;padding:0 0 12px 20px;font-size:14px;line-height:1.55;color:var(--muted)}
.rf-offer-need li:last-child{padding-bottom:0}
.rf-offer-need li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:1px;background:var(--brass)}
.rf-offer-note{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:13px;line-height:1.6;color:var(--muted)}
.rf-offer-cta{margin-top:26px;align-self:flex-start;justify-content:center}
.rf-evidence .section-head{margin-bottom:36px}
.rf-evidence-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.rf-evidence-card{padding:30px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.4)}
.rf-evidence-card h3{font-size:25px;margin:0 0 20px}
.rf-evidence-row{padding:14px 0;border-top:1px solid var(--line)}
.rf-evidence-row b{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text);margin-bottom:7px}
.rf-evidence-row p{margin:0;font-size:14px;line-height:1.62;max-width:56ch}
.rf-evidence-verify{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;line-height:1.55;color:var(--muted)}
.rf-evidence-empty{background:rgba(184,139,57,.06)}
.rf-evidence-empty .lede{max-width:760px}
.rf-contact-card{border:1px solid var(--line);background:rgba(255,255,255,.5);padding:24px 26px;margin:0 0 26px}
.rf-contact-card .kicker{margin-bottom:14px}
.rf-contact-lines{list-style:none;margin:0;padding:0}
.rf-contact-lines li{margin-bottom:6px}
.rf-contact-lines li:last-child{margin-bottom:0}
.rf-contact-lines a{font:500 21px/1.3 var(--serif);letter-spacing:-.02em;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(184,139,57,.5);word-break:break-word}
.rf-contact-lines a:hover{color:var(--brass-text);border-bottom-color:var(--brass)}
.rf-contact-email{overflow-wrap:anywhere;word-break:break-word}
.rf-contact-card .small{margin:14px 0 0}
.rf-contact-card .rf-contact-place{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.rf-contact-compact{border:0;background:none;padding:0;margin:0}
.rf-contact-compact .rf-contact-lines a{font:700 12px/1.4 var(--sans);letter-spacing:0;border-bottom:0;text-decoration:none;opacity:.85}
.rf-contact-compact .rf-contact-lines a:hover{opacity:1;color:var(--brass-text)}
.rf-contact-compact .rf-contact-place{margin:6px 0 0;padding:0;border-top:0;font-size:11px;max-width:36ch}
.footer .footer-contact{margin-left:34px}
.rf-leader-brief-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.rf-leader-brief-portrait{width:100%}
.rf-leader-brief-photo,.rf-leader-brief-monogram{width:100%;aspect-ratio:1/1;border:1px solid var(--line);display:block}
.rf-leader-brief-photo{object-fit:cover;-o-object-fit:cover}
.rf-leader-brief-monogram{background:var(--paper-2);color:var(--brass-text);font:500 62px/1 var(--serif);display:grid;place-items:center}
@supports not (aspect-ratio:1/1){
.rf-leader-brief-portrait{position:relative;padding-top:100%}
.rf-leader-brief-photo,.rf-leader-brief-monogram{position:absolute;top:0;left:0;height:100%}
}
.rf-leader-brief-copy .h2{margin-bottom:6px}
.rf-leader-brief-role{margin:0 0 20px;font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--brass-text)}
.rf-leader-brief-bio{margin:0;font-size:17px;line-height:1.65;max-width:64ch;color:#2b3232}
.rf-leader-brief-facts{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.rf-leader-brief-facts li{padding:20px 22px 0 0;border-right:1px solid var(--line)}
.rf-leader-brief-facts li:last-child{border-right:0;padding-right:0}
.rf-leader-brief-facts b{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-text);margin-bottom:9px}
.rf-leader-brief-facts span{display:block;font-size:13px;line-height:1.55;color:var(--muted)}
.rf-leader-brief .link{margin-top:26px}
.rf-intake-quick .rf-quick-grid{border:1px solid var(--line);background:#fffdf7;margin-bottom:18px}
.rf-intake-form .rf-consent{padding:18px 20px;border:1px solid var(--line);background:#fffdf7;margin-bottom:18px}
.rf-more{border:1px solid var(--line);background:rgba(236,229,215,.28);margin-bottom:18px}
.rf-more>summary{display:block;padding:18px 20px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
.rf-more>summary::-webkit-details-marker{display:none}
.rf-more>summary::marker{content:""}
.rf-more-title{display:block;position:relative;padding-right:34px;font:500 21px/1.15 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.rf-more-title:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:26px;height:26px;border:1px solid rgba(184,139,57,.55);border-radius:50%;display:grid;place-items:center;font:700 15px/1 var(--sans);color:var(--brass-text)}
.rf-more[open]>summary .rf-more-title:after{content:"\2013"}
.rf-more-hint{display:block;margin-top:5px;font-size:12px;line-height:1.5;color:var(--muted);max-width:64ch}
.rf-more-body{border-top:1px solid var(--line);padding:18px 18px 4px}
.rf-more-body .intake-section{background:#fffdf7}
.rf-more>summary:focus{outline:2px solid var(--brass);outline-offset:-4px}
.rf-more>summary:focus:not(:focus-visible){outline:none}
.rf-more>summary:focus-visible{outline:2px solid var(--brass);outline-offset:-4px}
.rf-intake-form input:focus-visible,.rf-intake-form select:focus-visible,.rf-intake-form textarea:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
@media(max-width:1000px){
.nav{gap:15px;font-size:11px}
}
@media(max-width:1050px){
.rf-offer-cols{grid-template-columns:1fr}
.rf-offer-aside{border-left:0;border-top:1px solid var(--line)}
.rf-leader-brief-grid{grid-template-columns:200px minmax(0,1fr)}
}
@media(max-width:820px){
.rf-offer-col{padding:26px 24px}
.rf-offer-terms>div{padding-right:22px;margin-right:22px}
.rf-evidence-grid{grid-template-columns:1fr}
.rf-evidence-card{padding:26px 24px}
.rf-leader-brief-grid{grid-template-columns:148px minmax(0,1fr);gap:26px}
.rf-leader-brief-monogram{font-size:40px}
.rf-leader-brief-facts{grid-template-columns:1fr}
.rf-leader-brief-facts li{padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}
.rf-leader-brief-facts li:last-child{border-bottom:0;padding-bottom:0}
.footer .footer-contact{margin-left:0}
}
@media(max-width:560px){
.rf-offer-terms{display:block}
.rf-offer-terms>div{padding:14px 0;margin:0;border-right:0;border-bottom:1px solid var(--line)}
.rf-offer-terms>div:last-child{border-bottom:0;padding-bottom:14px}
.rf-offer-terms dd{font-size:17px}
.rf-offer-col{padding:22px 18px}
.rf-offer-list b{font-size:19px}
.rf-offer-cta{width:100%}
.rf-evidence-card{padding:22px 18px}
.rf-evidence-card h3{font-size:22px}
.rf-leader-brief-grid{grid-template-columns:1fr}
.rf-leader-brief-portrait{max-width:172px}
.rf-contact-card{padding:20px 18px}
.rf-contact-lines a{font-size:18px}
.rf-more>summary{padding:16px 16px}
.rf-more-title{font-size:19px}
.rf-more-body{padding:14px 12px 2px}
}
@media(max-width:380px){
.rf-offer-list b{font-size:18px}
.rf-contact-lines a{font-size:16px}
.rf-more-title{font-size:18px;padding-right:30px}
}
@media(prefers-reduced-motion:reduce){
.rf-more-title:after{transition:none}
}

/* ==========================================================================
   v4.19 — informational graphics.

   Animation contract: every graphic is a complete, readable SVG on its own.
   The hidden starting state is applied only under `.rf-motion-ready`, a class
   the client script puts on <html>. If the script never runs, nothing is ever
   hidden and the visitor sees the finished diagram. Motion is enhancement.
   ========================================================================== */

.rf-graphic{margin:0;display:block;width:100%}
.rf-graphic-svg{width:100%;height:auto;display:block;overflow:visible;font-family:var(--sans)}
.rf-graphic-caption{margin:16px 0 0;font-size:12px;line-height:1.55;color:var(--muted);max-width:62ch}

/* --- animation states ---------------------------------------------------- */
.rf-motion-ready .rf-graphic .rf-anim-fade{opacity:0;transition:opacity 560ms cubic-bezier(.22,.61,.36,1);transition-delay:var(--d,0ms)}
.rf-motion-ready .rf-graphic.is-live .rf-anim-fade{opacity:1}
.rf-motion-ready .rf-graphic .rf-anim-draw,
.rf-motion-ready .rf-graphic .rf-anim-draw path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1150ms cubic-bezier(.22,.61,.36,1);transition-delay:var(--d,0ms)}
.rf-motion-ready .rf-graphic.is-live .rf-anim-draw,
.rf-motion-ready .rf-graphic.is-live .rf-anim-draw path{stroke-dashoffset:0}

/* --- chart primitives ---------------------------------------------------- */
.rf-g-grid line{stroke:var(--line);stroke-width:1}
.rf-g-axis line{stroke:var(--ink);stroke-width:1.25;opacity:.55}
.rf-g-axis .rf-g-tickmark{stroke-width:1;opacity:.4}
.rf-g-tick{font-size:11px;font-weight:600;fill:var(--muted)}
.rf-g-axis-label{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;fill:var(--brass-text)}
.rf-g-series{fill:none;stroke-width:2.5;stroke-linecap:round}
.rf-g-series-a{stroke:var(--brass)}
.rf-g-series-b{stroke:var(--ink)}
.rf-g-legend-text{font-size:12px;font-weight:600;fill:var(--muted)}
.rf-g-mark-rule{stroke:var(--ink);stroke-width:1;stroke-dasharray:3 5;opacity:.4}
.rf-g-mark-dot{fill:var(--paper);stroke:var(--ink);stroke-width:2}
.rf-g-mark-label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;fill:var(--brass-text)}
.rf-g-mark-note{font-size:13px;fill:var(--ink)}

/* --- flow diagrams ------------------------------------------------------- */
.rf-graphic-pair{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);background:rgba(255,255,255,.4)}
.rf-graphic-panel{padding:28px 30px 30px}
.rf-graphic-panel+.rf-graphic-panel{border-left:1px solid var(--line);background:rgba(236,229,215,.34)}
.rf-graphic-heading{margin:0 0 20px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.rf-graphic-note{margin:18px 0 0;font-size:13px;line-height:1.6;color:var(--muted);max-width:44ch}
.rf-g-links path{fill:none;stroke:var(--ink);stroke-width:1.25;opacity:.45}
.rf-g-rail{fill:none;stroke:var(--brass);stroke-width:2}
.rf-g-node{fill:var(--paper-3);stroke:var(--line);stroke-width:1}
.rf-g-node-em{fill:rgba(184,139,57,.16);stroke:var(--brass);stroke-width:1.5}
.rf-g-node-rule{fill:rgba(184,139,57,.1);stroke:var(--brass);stroke-width:1.25}
.rf-g-node-quiet{fill:transparent;stroke:var(--line);stroke-dasharray:4 4}
.rf-g-queue{fill:var(--paper-2);stroke:var(--line);stroke-width:1}
.rf-g-node-text{font-size:13px;font-weight:700;fill:var(--ink)}
.rf-g-node-text-em{fill:var(--brass-text)}
.rf-g-node-sub{font-size:11px;fill:var(--muted)}

/* The travelling marker. Hidden unless the animation is actually running, so a
   no-JS visitor never sees an orphaned dot floating on the diagram. */
.rf-g-token circle{fill:var(--brass);stroke:var(--paper);stroke-width:2}
.rf-g-token{opacity:0}
.rf-motion-ready .rf-graphic.is-live .rf-g-token-before{animation:rf-token-before 5.4s cubic-bezier(.4,0,.2,1) 3}
.rf-motion-ready .rf-graphic.is-live .rf-g-token-after{animation:rf-token-after 3.6s cubic-bezier(.4,0,.2,1) 3}
@keyframes rf-token-before{
  0%{transform:translateY(0);opacity:0}
  5%{opacity:1}
  16%{transform:translateY(72px)}
  /* the dwell is the argument: routine work queues behind one person */
  62%{transform:translateY(72px)}
  76%{transform:translateY(152px)}
  92%{transform:translateY(224px);opacity:1}
  100%{transform:translateY(224px);opacity:0}
}
@keyframes rf-token-after{
  0%{transform:translateY(0);opacity:0}
  7%{opacity:1}
  20%{transform:translateY(72px)}
  32%{transform:translateY(72px)}
  50%{transform:translateY(152px)}
  62%{transform:translateY(152px)}
  86%{transform:translateY(224px);opacity:1}
  100%{transform:translateY(224px);opacity:0}
}

/* --- transformation stack ------------------------------------------------ */
.rf-g-band{fill:var(--paper-3);stroke:var(--line);stroke-width:1}
.rf-g-band-goal{fill:rgba(184,139,57,.14);stroke:var(--brass);stroke-width:1.5}
.rf-g-band-label{font-size:17px;font-weight:700;fill:var(--ink)}
.rf-g-band-detail{font-size:12.5px;fill:var(--muted)}
.rf-g-band-node{fill:var(--paper);stroke:var(--brass);stroke-width:2}
.rf-g-thread{fill:none;stroke:var(--brass);stroke-width:2}
.rf-g-stop-rule{stroke:var(--ink);stroke-width:1;stroke-dasharray:3 4;opacity:.5}
.rf-g-stop-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;fill:var(--muted)}

/* --- interactive decision-load model ------------------------------------- */
.rf-model{display:grid;grid-template-columns:minmax(0,.92fr) minmax(280px,1.08fr);border:1px solid var(--line);background:rgba(255,255,255,.4)}
.rf-model-controls{padding:30px 32px;border-right:1px solid var(--line)}
.rf-model-readout{padding:30px 32px;background:rgba(236,229,215,.34);display:flex;flex-direction:column}
.rf-model-field{margin-bottom:20px}
.rf-model-field label{display:block;margin-bottom:8px;font-size:12px;font-weight:700;line-height:1.45;color:var(--ink)}
.rf-model-input{width:110px;border:1px solid rgba(16,23,25,.22);background:#fff;padding:11px 12px;font:600 16px var(--sans);color:var(--ink);border-radius:0;min-height:46px}
.rf-model-input:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
.rf-model-slider{width:100%;min-height:32px;accent-color:var(--brass)}
.rf-model-slider:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.rf-model-slider-field output{font-variant-numeric:tabular-nums;color:var(--brass-text)}
.rf-model-disclaimer{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:12px;line-height:1.6;color:var(--muted)}
.rf-model-label{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-text);margin-bottom:10px}
.rf-model-value{display:block;font:500 clamp(46px,5vw,68px)/1 var(--serif);color:var(--ink);font-variant-numeric:tabular-nums}
.rf-model-figure-secondary{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.rf-model-figure-secondary .rf-model-value{font-size:clamp(34px,3.4vw,46px)}
.rf-model-bar{margin-top:22px}
.rf-model-bar-track{height:12px;border:1px solid var(--line);background:var(--paper-3)}
.rf-model-bar-fill{height:100%;background:var(--brass);transition:width 320ms cubic-bezier(.22,.61,.36,1)}
.rf-model-bar-scale{display:flex;justify-content:space-between;margin-top:7px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.rf-model-caption{margin:22px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}

/* --- responsive ---------------------------------------------------------- */
@media(max-width:1050px){
  .rf-model{grid-template-columns:1fr}
  .rf-model-controls{border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:820px){
  .rf-graphic-pair{grid-template-columns:1fr}
  .rf-graphic-panel+.rf-graphic-panel{border-left:0;border-top:1px solid var(--line)}
  .rf-graphic-panel{padding:24px 22px 26px}
  .rf-model-controls,.rf-model-readout{padding:24px 22px}
  /* The chart's callout collides with the curves once the viewBox is squeezed. */
  .rf-graphic-chart .rf-g-mark-note{font-size:15px}
  .rf-graphic-chart .rf-g-tick{font-size:13px}
  .rf-graphic-chart .rf-g-legend-text{font-size:14px}
  .rf-graphic-chart .rf-g-axis-label{font-size:13px}
}
@media(max-width:560px){
  .rf-graphic-chart .rf-g-legend{display:none}
  .rf-graphic-chart .rf-g-mark-note{font-size:17px}
  .rf-graphic-chart .rf-g-tick{font-size:15px}
  .rf-g-band-label{font-size:21px}
  .rf-g-band-detail{font-size:15px}
  .rf-g-stop-label{font-size:13px}
  .rf-g-node-text{font-size:15px}
  .rf-g-node-sub{font-size:13px}
  .rf-model-input{width:100%}
}

/* --- motion preference --------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .rf-motion-ready .rf-graphic .rf-anim-fade,
  .rf-motion-ready .rf-graphic .rf-anim-draw,
  .rf-motion-ready .rf-graphic .rf-anim-draw path{opacity:1!important;stroke-dashoffset:0!important;transition:none!important}
  .rf-motion-ready .rf-graphic.is-live .rf-g-token-before,
  .rf-motion-ready .rf-graphic.is-live .rf-g-token-after{animation:none!important}
  .rf-model-bar-fill{transition:none!important}
}

/* ==========================================================================
   v4.20 — layout repair, new graphics, the fit-finder, and the fallbacks that
   take over when the connection or the device asks for less.
   ========================================================================== */

/* --------------------------------------------------------------------------
   A. Layout repair from the v4.19 browser audit
   -------------------------------------------------------------------------- */

/* Touch targets. The intake consent checkbox measured 13px, which is below any
   accessibility guidance and sits between a prospect and submitting the form.
   The hit area grows; the control keeps its size. */
.checkbox-field,.rf-consent,.choice{position:relative}
.checkbox-field label,.choice{display:inline-flex;align-items:flex-start;gap:10px;min-height:44px;padding-top:2px}

/* Standalone links that act as calls to action need a real hit area on a phone.
   Links sitting inside a sentence are exempt under WCAG 2.5.8 and are left alone,
   because stretching them would break the line rhythm of the paragraph. */
@media(max-width:820px){
  .footer nav a,.rf-contact-lines a,.link,.article-link,.pattern-source,.footer-brand-mark{display:inline-block;min-height:44px;line-height:44px}
  .rf-contact-lines a{line-height:1.35;padding:11px 0}
  .footer-brand-mark{line-height:1.15;padding:11px 0}
}

/* A checkbox is its own target, so an ::after hit area does not apply to it:
   replaced elements do not render pseudo-elements. Size the control instead. */
.checkbox-field input[type="checkbox"],
.choice input[type="checkbox"],
.choice input[type="radio"],
.rf-consent input[type="checkbox"]{width:24px;height:24px;flex:0 0 24px}

/* Heading to body scale. Section headings ran 40–56px against 14px supporting
   copy, which made the argument read as a footnote beside the headline. */
.section-head p,.editorial .prose p,.page-hero-side p{font-size:16px;line-height:1.65}
.h2{font-size:clamp(27px,3.1vw,44px)}

/* Four elements have carried classes with no rules since v4.17. The article
   standfirst, callouts and editorial view all rendered as ordinary body copy. */
.insight-deck{font-size:clamp(21px,2vw,25px)!important;line-height:1.5!important;color:var(--ink);margin:0 0 30px!important;padding-bottom:26px;border-bottom:1px solid var(--line)}
.insight-callout{margin:32px 0;padding:22px 26px;border:1px solid var(--line);border-left:2px solid var(--brass);background:rgba(184,139,57,.07)}
.insight-callout strong{display:block;margin-bottom:9px;font:800 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.insight-callout p{margin:0!important;font-family:var(--sans);font-size:15px;line-height:1.62;color:#2b3232}
.insight-view{margin:40px 0;padding:30px 32px;background:var(--paper-3);border-top:2px solid var(--brass);border-bottom:1px solid var(--line)}
.insight-view>span{display:block;margin-bottom:14px;font:800 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.insight-view h2{margin:0 0 14px!important;font-size:clamp(23px,2.3vw,29px)!important;line-height:1.22!important}
.insight-view p{margin:0!important;font-size:17px;line-height:1.62}
.station{display:block;width:min(var(--max),calc(100% - 2*var(--pad)));margin:0 auto}
.station:before{content:"";display:block;width:26px;height:2px;background:var(--brass);opacity:.75}

/* --------------------------------------------------------------------------
   B. Layout rhythm. The site had one section shape repeated; these give a
   long page a form a reader can navigate.
   -------------------------------------------------------------------------- */
.rf-statement{padding:clamp(72px,9vw,132px) 0;background:var(--ink);color:var(--paper)}
.rf-statement .wrap{max-width:var(--max)}
.rf-statement p{margin:0;font:500 clamp(28px,4.2vw,54px)/1.16 var(--serif);letter-spacing:-.025em;max-width:22ch;color:var(--paper)}
.rf-statement .rf-statement-sub{margin-top:24px;font:400 16px/1.6 var(--sans);color:rgba(244,239,229,.72);max-width:52ch;letter-spacing:0}

.rf-pull{margin:38px 0;padding:26px 0 26px 28px;border-left:2px solid var(--brass)}
.rf-pull p{margin:0;font:500 clamp(21px,2.4vw,29px)/1.32 var(--serif);letter-spacing:-.02em;color:var(--ink);max-width:36ch}

/* --------------------------------------------------------------------------
   C. New graphics
   -------------------------------------------------------------------------- */
.rf-g-gap-wedge{fill:rgba(184,139,57,.13)}
.rf-g-gap-label{font-size:12px;font-weight:700;fill:var(--muted)}
.rf-g-gap-label-a{fill:var(--brass-text)}
.rf-g-gap-note{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;fill:var(--muted)}

.rf-g-domain{fill:var(--paper-3);stroke:var(--line);stroke-width:1}
.rf-g-domain-title{font-size:19px;font-weight:700;fill:var(--ink)}
.rf-g-domain-detail{font-size:12.5px;fill:var(--muted)}
.rf-g-domain-links path{fill:none;stroke:var(--brass);stroke-width:1.25;opacity:.6}
.rf-g-domain-core{fill:var(--paper);stroke:var(--brass);stroke-width:2}
.rf-g-domain-core-a{font-size:14px;font-weight:700;fill:var(--brass-text)}

/* --------------------------------------------------------------------------
   D. Fit-finder
   -------------------------------------------------------------------------- */
.rf-fit{border:1px solid var(--line);background:rgba(255,255,255,.4)}
.rf-fit-intro{padding:34px 36px 30px;border-bottom:1px solid var(--line)}
.rf-fit-intro .h2{margin-bottom:14px}
.rf-fit-intro p{margin:0;font-size:16px;line-height:1.65;color:var(--muted);max-width:62ch}

.rf-fit-quiz{padding:30px 36px;border-bottom:1px solid var(--line);background:rgba(236,229,215,.34)}
.rf-fit-q{border:0;margin:0 0 26px;padding:0}
.rf-fit-q:last-of-type{margin-bottom:18px}
.rf-fit-q legend{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;padding:0;font:500 20px/1.25 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.rf-fit-num{font:800 11px/1 var(--sans);letter-spacing:.12em;color:var(--brass-text)}
.rf-fit-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rf-fit-option{display:flex;align-items:center;gap:11px;min-height:52px;padding:10px 14px;border:1px solid var(--line);background:#fffdf7;cursor:pointer;font-size:14.5px;line-height:1.4;color:#2b3232}
.rf-fit-option:hover{border-color:var(--brass)}
.rf-fit-option input{flex:0 0 auto;width:18px;height:18px;accent-color:var(--brass);margin:0}
.rf-fit-option.is-picked{border-color:var(--brass);background:rgba(184,139,57,.1)}
.rf-fit-option:focus-within{outline:2px solid var(--brass);outline-offset:2px}
.rf-fit-progress{margin:0;font-size:13px;font-weight:700;color:var(--brass-text);min-height:20px}

.rf-fit-results{padding:32px 36px 36px}
.rf-fit-results-head{margin:0 0 22px;font:800 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.rf-fit-cards{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.rf-fit-card{padding:26px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.45);transition:opacity 260ms ease,background 260ms ease}
.rf-fit-card h3{margin:0 0 10px;font:500 22px/1.22 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.rf-fit-lede{margin:0 0 18px;font-size:14.5px;line-height:1.62;color:var(--muted)}
.rf-fit-card .kicker{margin-bottom:10px}
.rf-fit-card ul{list-style:none;margin:0 0 16px;padding:0}
.rf-fit-card li{position:relative;padding:0 0 9px 18px;font-size:14px;line-height:1.55;color:#2b3232}
.rf-fit-card li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:1px;background:var(--brass)}
.rf-fit-signal{margin:0;padding-top:14px;border-top:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}

/* Once four answers are in, the match is raised and the others recede without
   disappearing, so a reader can still see the reasoning behind the other three. */
.rf-fit.is-resolved .rf-fit-card.is-match{background:rgba(184,139,57,.12);box-shadow:inset 3px 0 0 var(--brass)}
.rf-fit.is-resolved .rf-fit-card.is-secondary{opacity:.5}
.rf-fit.is-resolved .rf-fit-card.is-secondary:hover,
.rf-fit.is-resolved .rf-fit-card.is-secondary:focus-within{opacity:1}

.rf-fit-cta{margin-top:26px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.rf-fit-cta p{margin:0;font-size:14px;line-height:1.6;color:var(--muted);max-width:56ch}

/* --------------------------------------------------------------------------
   E. Constrained connections and devices
   The script adds rf-constrained when Save-Data is on or the effective
   connection type is slow. Decorative work stops; content is untouched.
   -------------------------------------------------------------------------- */
.rf-constrained .rf-graphic .rf-anim-fade,
.rf-constrained .rf-graphic .rf-anim-draw,
.rf-constrained .rf-graphic .rf-anim-draw path{opacity:1!important;stroke-dashoffset:0!important;transition:none!important}
.rf-constrained .rf-g-token{display:none!important}
.rf-constrained [data-rf-reveal],
.rf-constrained [data-rf-draw]{opacity:1!important;transform:none!important;transition:none!important}
.rf-constrained .hero-art-glow,
.rf-constrained .impact-hero-ghost{display:none}

@media(prefers-reduced-data:reduce){
  .rf-graphic .rf-anim-fade,.rf-graphic .rf-anim-draw{opacity:1!important;stroke-dashoffset:0!important;transition:none!important}
  .rf-g-token{display:none!important}
}

/* --------------------------------------------------------------------------
   F. Responsive
   -------------------------------------------------------------------------- */
@media(max-width:1050px){
  .rf-fit-cards{grid-template-columns:1fr}
}
@media(max-width:820px){
  .rf-fit-intro,.rf-fit-quiz,.rf-fit-results{padding-left:22px;padding-right:22px}
  .rf-fit-options{grid-template-columns:1fr}
  .rf-fit-cta{flex-direction:column;align-items:flex-start}
  .rf-fit-cta .btn{width:100%;justify-content:center}
  .rf-g-domain-title{font-size:23px}
  .rf-g-domain-detail{font-size:15px}
  .rf-g-domain-core-a{font-size:17px}
  .rf-g-gap-label{font-size:15px}
  .rf-g-gap-note{font-size:13px}
}
@media(max-width:560px){
  .rf-fit-q legend{font-size:18px}
  .rf-fit-card{padding:22px 20px}
  .rf-fit-card h3{font-size:20px}
  .rf-statement p{max-width:none}
  .rf-pull{padding-left:20px;margin:28px 0}
}

/* --------------------------------------------------------------------------
   G. Print. Prospects print consulting pages before internal discussions.
   -------------------------------------------------------------------------- */
@media print{
  .site-header,.footer,.rf-fit-quiz,.menu-btn,.nav,.btn,.rf-g-token{display:none!important}
  body{background:#fff;color:#000}
  .section,.container,.wrap{padding-top:14px!important;padding-bottom:14px!important}
  .hero,.section.dark,.rf-statement{background:#fff!important;color:#000!important}
  .hero *,.section.dark *,.rf-statement *{color:#000!important}
  .rf-graphic,.rf-fit-card,.rf-offer-cols{break-inside:avoid;page-break-inside:avoid}
  .rf-anim-fade,.rf-anim-draw{opacity:1!important;stroke-dashoffset:0!important}
  a[href^="http"]:after{content:" (" attr(href) ")";font-size:10px;color:#444}
}

/* --------------------------------------------------------------------------
   H. Graphics on dark sections.
   The chart palette assumes ivory. On the ink signal band the ink-coloured
   series and the axis were all but invisible, so the second half of the
   argument disappeared. Invert the neutrals; brass still means changed state.
   -------------------------------------------------------------------------- */
.signal-band .rf-g-series-b,
.section.dark .rf-g-series-b,
.hero.dark .rf-g-series-b{stroke:rgba(244,239,229,.85)}
.signal-band .rf-g-grid line,
.section.dark .rf-g-grid line,
.hero.dark .rf-g-grid line{stroke:rgba(244,239,229,.16)}
.signal-band .rf-g-axis line,
.section.dark .rf-g-axis line,
.hero.dark .rf-g-axis line{stroke:rgba(244,239,229,.5);opacity:1}
.signal-band .rf-g-tick,
.section.dark .rf-g-tick,
.hero.dark .rf-g-tick{fill:rgba(244,239,229,.62)}
.signal-band .rf-g-axis-label,
.section.dark .rf-g-axis-label,
.hero.dark .rf-g-axis-label{fill:var(--brass-2)}
.signal-band .rf-g-legend-text,
.section.dark .rf-g-legend-text,
.hero.dark .rf-g-legend-text{fill:rgba(244,239,229,.72)}
.signal-band .rf-g-mark-note,
.section.dark .rf-g-mark-note,
.hero.dark .rf-g-mark-note{fill:rgba(244,239,229,.92)}
.signal-band .rf-g-mark-label,
.section.dark .rf-g-mark-label,
.hero.dark .rf-g-mark-label{fill:var(--brass-2)}
.signal-band .rf-g-mark-rule,
.section.dark .rf-g-mark-rule,
.hero.dark .rf-g-mark-rule{stroke:rgba(244,239,229,.45);opacity:1}
.signal-band .rf-g-mark-dot,
.section.dark .rf-g-mark-dot,
.hero.dark .rf-g-mark-dot{fill:var(--ink);stroke:rgba(244,239,229,.9)}
.signal-band .rf-graphic-caption,
.section.dark .rf-graphic-caption,
.hero.dark .rf-graphic-caption{color:rgba(244,239,229,.62)}

/* --------------------------------------------------------------------------
   I. Footer brand bar.
   The footer was a light utility strip. It is now the closing statement:
   ink ground, an oversized wordmark, and the slogan at display size in brass.
   The contact address moves off the footer; the legal line gets its own row.
   -------------------------------------------------------------------------- */
.footer-brandbar{background:var(--ink);border-top:0;padding:0;color:var(--paper)}
.footer-brandbar .footer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,3vw,48px);align-items:center;padding-top:clamp(34px,3.6vw,46px);padding-bottom:clamp(28px,3.2vw,40px)}
.footer-lockup{min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px}
.footer-brandbar .footer-brand-mark{display:inline-flex;color:var(--paper);font-size:clamp(24px,2.3vw,30px);line-height:1;letter-spacing:-.045em;padding:0;min-height:0}
.footer-brandbar .rf-wordmark .brand-ready{font-weight:900!important;font-family:var(--sans)!important}
.footer-brandbar .rf-wordmark .brand-front{font-weight:300!important;font-family:var(--sans)!important;color:rgba(244,239,229,.82)!important}
.footer-brandbar .rf-wordmark .brand-ready:after{bottom:-.2em;height:2px;width:.42em;background:var(--brass-2)}
.footer-brandbar .footer-brand-mark:hover .brand-front{color:var(--brass-2)}

.footer-statement{margin:0;font:500 clamp(17px,1.6vw,21px)/1.3 var(--serif);letter-spacing:-.01em;color:var(--brass-2)}

.footer-brandbar .footer-nav{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:flex-end;align-items:center}
.footer-brandbar .footer-nav a{color:rgba(244,239,229,.66);font:600 12px/1 var(--sans);letter-spacing:.02em;text-decoration:none;min-height:0;line-height:1;padding:0}
.footer-brandbar .footer-nav a:hover,
.footer-brandbar .footer-nav a:focus-visible{color:var(--brass-2)}

.footer-base{border-top:1px solid rgba(244,239,229,.14)}
.footer-base .wrap{padding:14px 0}
.footer-legal{display:block;font:600 10.5px/1.4 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:rgba(244,239,229,.42)}

/* Header wordmark, sharpened to match the footer treatment. */
.site-header .brand{font-size:clamp(23px,2.2vw,27px)}
.site-header .rf-wordmark .brand-ready{font-weight:900}
.site-header .rf-wordmark .brand-ready:after{height:3px;bottom:-5px;width:.42em}

@media(max-width:820px){
  /* The header wordmark measured 23px, a pixel under the minimum target. */
  .site-header .brand{display:inline-flex;align-items:center;min-height:44px}
  .footer-brandbar .footer-top{grid-template-columns:1fr;align-items:start;gap:22px}
  .footer-lockup{flex-direction:column;align-items:flex-start;gap:10px}
  .footer-brandbar .footer-nav{justify-content:flex-start;gap:0 22px}
  .footer-brandbar .footer-nav a{min-height:44px;line-height:44px}
}
@media(max-width:480px){
  .footer-brandbar .footer-brand-mark{font-size:26px}
  .footer-statement{font-size:17px}
}
@media print{
  .footer-brandbar{display:none!important}
}

/* --------------------------------------------------------------------------
   J. Chart key. One convention: directly beneath the plot, left aligned, above
   the caption. Inside the plot it competed with the data and could not scale
   its own type on a phone.
   -------------------------------------------------------------------------- */
.rf-graphic-key{list-style:none;display:flex;flex-wrap:wrap;gap:8px 26px;margin:16px 0 0;padding:0}
.rf-graphic-key li{display:flex;align-items:center;gap:9px;font:600 12.5px/1.3 var(--sans);color:var(--muted)}
.rf-key-swatch{flex:0 0 auto;width:22px;height:3px;background:var(--muted)}
.rf-key-a{background:var(--brass)}
.rf-key-b{background:var(--ink)}
.rf-graphic-key+.rf-graphic-caption{margin-top:10px}
.signal-band .rf-graphic-key li,.section.dark .rf-graphic-key li,.hero.dark .rf-graphic-key li{color:rgba(244,239,229,.72)}
.signal-band .rf-key-b,.section.dark .rf-key-b,.hero.dark .rf-key-b{background:rgba(244,239,229,.85)}
@media(max-width:560px){
  .rf-graphic-key{gap:6px 18px}
  .rf-graphic-key li{font-size:12px}
}

/* --------------------------------------------------------------------------
   K. The firm's own voice.
   Most of the site describes the reader's situation. A few lines are Readyfront
   speaking about itself, and they should read as a remark rather than a claim.
   Italic serif, a short brass rule above, and room around it.
   -------------------------------------------------------------------------- */
.rf-voice{position:relative;margin:30px 0 0;padding-top:22px;font:400 italic clamp(17px,1.7vw,20px)/1.55 var(--serif);color:#2b3232;max-width:52ch;letter-spacing:.002em}
.rf-voice:before{content:"";position:absolute;top:0;left:0;width:34px;height:2px;background:var(--brass)}
.section.dark .rf-voice,.hero.dark .rf-voice,.signal-band .rf-voice,.question .rf-voice{color:rgba(244,239,229,.88)}
.section.dark .rf-voice:before,.hero.dark .rf-voice:before,.signal-band .rf-voice:before,.question .rf-voice:before{background:var(--brass-2)}

/* Graphic captions are the same voice at a smaller size. */
.rf-graphic-caption{font-style:italic}

@media(max-width:560px){
  .rf-voice{margin-top:24px;padding-top:18px;font-size:16.5px}
}
.rf-voice-inline{font-style:italic;color:#2b3232}

/* --------------------------------------------------------------------------
   L. Cost grid. Five consequences of founder dependency, sized so the row does
   not become five thin columns on a laptop.
   -------------------------------------------------------------------------- */
.cost-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cost-item{padding:26px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.4)}
.cost-item b{display:block;margin-bottom:11px;font:500 19px/1.2 var(--serif);letter-spacing:-.02em;color:var(--brass-text)}
.cost-item p{margin:0;font-size:13.5px;line-height:1.6;color:#2b3232}
@media(max-width:1120px){
  .cost-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .cost-grid{grid-template-columns:repeat(2,1fr)}
  .cost-item{padding:20px 18px}
}
@media(max-width:430px){
  .cost-grid{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
   M. The method rail is five steps now. Measure was added between Build and
   Transfer, and the grid was still declared at four columns, which dropped the
   fifth step onto a row of its own.
   -------------------------------------------------------------------------- */
.rf-process-rail{grid-template-columns:repeat(5,1fr)}
@media(max-width:1120px){.rf-process-rail{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.rf-process-rail{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.rf-process-rail{grid-template-columns:1fr}}

/* ==========================================================================
   N. v4.22 — components from the approved mockup.
   ========================================================================== */



/* 1. Statement band, two columns */
.rf-statement-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(32px,5vw,86px);align-items:start}
.rf-statement-consequence{list-style:none;margin:0;padding:0;border-top:1px solid rgba(244,239,229,.2)}
.rf-statement-consequence li{padding:18px 0;border-bottom:1px solid rgba(244,239,229,.2);font:500 clamp(19px,1.9vw,24px)/1.25 var(--serif);color:var(--brass-2);letter-spacing:-.02em}
.rf-statement-consequence li span{display:block;margin-top:7px;font:400 13.5px/1.55 var(--sans);color:rgba(244,239,229,.66);letter-spacing:0}

/* 2. Recognition convergence */
.rf-converge{width:100%;height:auto;display:block;font-family:var(--sans);overflow:visible}
.rf-cv-row{fill:var(--paper-3);stroke:var(--line)}
.rf-cv-text{font-size:13px;fill:#2b3232}
.rf-cv-link{fill:none;stroke:var(--line);stroke-width:1.25}
.rf-cv-core{fill:rgba(184,139,57,.14);stroke:var(--brass);stroke-width:1.5}
.rf-cv-core-a{font-size:15px;font-weight:800;fill:var(--brass-text)}
.rf-cv-core-b{font-size:12.5px;fill:var(--muted)}

/* 3. Swimlane flow */
.rf-lane{width:100%;height:auto;display:block;font-family:var(--sans);overflow:visible}
.rf-lane-hd{font-size:11px;font-weight:800;letter-spacing:.12em;fill:var(--brass-text)}
.rf-lane-box{fill:var(--paper-3);stroke:var(--line)}
.rf-lane-box-jam{fill:rgba(184,139,57,.2);stroke:var(--brass);stroke-width:1.6}
.rf-lane-box-ok{fill:rgba(255,255,255,.7);stroke:var(--line)}
.rf-lane-t{font-size:13.5px;font-weight:700;fill:var(--ink)}
.rf-lane-s{font-size:11.5px;fill:var(--muted)}
.rf-lane-arrow{fill:none;stroke:var(--ink);stroke-width:1.25;opacity:.42;marker-end:url(#mkarrow)}
.rf-lane-queue{fill:var(--brass);opacity:.5}
.rf-lane-flag{font-size:11px;font-weight:800;letter-spacing:.08em;fill:#a4442c}
.rf-lane-band{fill:rgba(16,23,25,.032)}

/* 4. Leakage waterfall */
.rf-fall{width:100%;height:auto;display:block;font-family:var(--sans);overflow:visible}
.rf-fall-full{fill:var(--ink)}
.rf-fall-loss{fill:#c08a72}
.rf-fall-net{fill:var(--brass)}
.rf-fall-lbl{font-size:12px;font-weight:700;fill:#2b3232}
.rf-fall-val{font-size:12px;font-weight:800;fill:var(--muted)}
.rf-fall-cap{font-size:11px;font-weight:800;letter-spacing:.1em;fill:var(--brass-text)}
.rf-fall-conn{stroke:var(--line);stroke-width:1;stroke-dasharray:3 3}

/* 5. Direct-labelled comparison */
.rf-cmp{width:100%;height:auto;display:block;font-family:var(--sans);overflow:visible}
.rf-cmp-grid{stroke:var(--line);stroke-width:1}
.rf-cmp-base{fill:none;stroke:var(--ink);stroke-width:2.5;opacity:.75}
.rf-cmp-chg{fill:none;stroke:var(--brass);stroke-width:2.5}
.rf-cmp-lbl-base{font-size:13px;font-weight:700;fill:var(--ink)}
.rf-cmp-lbl-chg{font-size:13px;font-weight:700;fill:var(--brass-text)}
.rf-cmp-tick{font-size:11px;font-weight:600;fill:var(--muted)}
.rf-cmp-gap{stroke:var(--brass);stroke-width:1;stroke-dasharray:3 3}
.rf-cmp-gaplbl{font-size:11.5px;font-weight:800;fill:var(--brass-text)}
.rf-cmp-axis{font-size:11px;font-weight:800;letter-spacing:.1em;fill:var(--brass-text)}

/* 6. Model guidance */
.rf-howto{margin:0 0 22px;padding:14px 16px;border-left:2px solid var(--brass);background:rgba(184,139,57,.08);font-size:13.5px;line-height:1.6;color:#2b3232}
.rf-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;margin-left:7px;border:1px solid var(--brass);border-radius:50%;font:800 10px/1 var(--sans);color:var(--brass-text);cursor:help;vertical-align:middle}
.rf-tip:hover .rf-tip-body,.rf-tip:focus-visible .rf-tip-body{opacity:1;visibility:visible;transform:translateY(0)}
.rf-tip-body{position:absolute;bottom:calc(100% + 9px);left:50%;margin-left:-130px;width:260px;padding:12px 14px;background:var(--ink);color:rgba(244,239,229,.94);font:400 12.5px/1.55 var(--sans);text-align:left;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity 180ms ease,transform 180ms ease;z-index:20}
.rf-tip-body:after{content:"";position:absolute;top:100%;left:50%;margin-left:-6px;border:6px solid transparent;border-top-color:var(--ink)}
.rf-model-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0 0 22px;padding:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.rf-model-steps li{padding:14px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}
.rf-model-steps b{display:block;font:800 10.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text);margin-bottom:6px}

/* 7. Operating model, feature treatment */
.rf-model-feature{background:var(--ink);color:var(--paper);padding:clamp(44px,5vw,72px) 0}
.rf-model-feature .h2{color:var(--paper)}
.rf-model-feature .eyebrow{color:var(--brass-2)}
.rf-model-feature .lede{color:rgba(244,239,229,.8)}
.rf-mf-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,4vw,64px);align-items:center}
.rf-mf-stage{border:1px solid rgba(244,239,229,.2);background:rgba(244,239,229,.04);padding:clamp(22px,2.6vw,34px)}

/* 8. Compact leader */
.rf-leader-tight{display:grid;grid-template-columns:216px minmax(0,1fr);gap:clamp(26px,3.4vw,52px);align-items:start}
.rf-leader-tight-portrait{aspect-ratio:1/1;border:1px solid var(--line);background:var(--paper-2);display:grid;place-items:center;font:500 60px/1 var(--serif);color:var(--brass-text)}
.rf-leader-tight h2{margin:0 0 4px}
.rf-leader-role{margin:0 0 16px;font:800 11.5px/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--brass-text)}
.rf-leader-tight p{font-size:15.5px;line-height:1.62;margin:0 0 12px;max-width:66ch}
.rf-cred{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:22px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.rf-cred div{padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.rf-cred b{display:block;font:800 10.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text);margin-bottom:7px}
.rf-cred span{font-size:13px;line-height:1.55;color:#2b3232}

@media(max-width:900px){
  .rf-statement-grid,.rf-mf-grid,.rf-leader-tight{grid-template-columns:1fr}
  .rf-model-steps{grid-template-columns:1fr}
  .rf-cred{grid-template-columns:1fr}
  .rf-leader-tight-portrait{max-width:180px}
}

/* Colours the SVGs inherit for markers and endpoints. */
.rf-graphic-lanes{color:var(--ink)}
.rf-cmp-dot-base{fill:var(--ink)}
.rf-cmp-dot-chg{fill:var(--brass)}
.rf-mf-svg{width:100%;height:auto;font-family:var(--sans)}
.rf-mf-box{fill:rgba(244,239,229,.06);stroke:rgba(244,239,229,.3)}
.rf-mf-box-own{fill:rgba(184,139,57,.16);stroke:#d0aa63;stroke-width:1.5}
.rf-mf-hd{font-size:11px;font-weight:800;letter-spacing:.12em;fill:#d0aa63}
.rf-mf-item{font-size:16px;font-weight:700;fill:#f4efe5}
.rf-mf-arrow{fill:none;stroke:#d0aa63;stroke-width:2;marker-end:url(#rf-mf-arrow)}
.rf-mf-sub{font-size:11px;font-weight:800;letter-spacing:.1em;fill:rgba(244,239,229,.55)}
.rf-mf-list{font-size:13.5px;fill:rgba(244,239,229,.86)}
.rf-leader-mono{font:500 60px/1 var(--serif);color:var(--brass-text)}
.rf-leader-tight-portrait .leader-photo{width:100%;height:100%;object-fit:cover;display:block}
.rf-leader-foundation{margin:18px 0 0;font-size:12.5px;line-height:1.6;color:var(--muted)}
.rf-leader-tight .rf-voice{margin-top:22px}
.rf-leader-tight .link{display:inline-block;margin-top:18px}

/* The leadership section stacked an editorial intro, the card and four proof
   panels, each in its own full-width band. Tighten the vertical rhythm so the
   section reads as one block rather than three. */
.leader-section .leader-intro{margin-bottom:clamp(26px,3vw,40px)}
.leader-section .leader-intro .prose p{margin-bottom:12px}
.leader-section .rf-leader-tight{margin-bottom:clamp(26px,3vw,40px)}
.leader-partner-proof{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.leader-partner-proof article{padding:20px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.4)}
.leader-partner-proof span{display:block;font:800 10.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text);margin-bottom:8px}
.leader-partner-proof h3{margin:0 0 7px;font:500 17px/1.22 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.leader-partner-proof p{margin:0;font-size:13px;line-height:1.55;color:var(--muted)}
@media(max-width:1050px){.leader-partner-proof{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.leader-partner-proof{grid-template-columns:1fr}}

/* The portrait column previously held only the portrait, leaving a tall void
   beside three paragraphs of biography. It now carries the technical foundation
   and the profile link, so both columns end at roughly the same depth. */
.rf-leader-tight{grid-template-columns:260px minmax(0,1fr)}
.rf-leader-aside{min-width:0}
.rf-leader-kicker{margin:22px 0 10px;font:800 10.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
.rf-leader-foundation{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.rf-leader-foundation li{padding:8px 0;border-bottom:1px solid var(--line);font-size:12.5px;line-height:1.45;color:var(--muted)}
.rf-leader-link{display:inline-block;margin-top:18px}
@media(max-width:900px){
  .rf-leader-tight{grid-template-columns:1fr}
  .rf-leader-aside{display:grid;grid-template-columns:180px minmax(0,1fr);gap:26px;align-items:start}
  .rf-leader-kicker{margin-top:0}
}
@media(max-width:560px){
  .rf-leader-aside{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
   O. v4.24 — the hundred-dollar journey and the decision tree.
   Both replace graphics that assumed the reader could already read them.
   -------------------------------------------------------------------------- */
.rf-hd-cap{font-size:11px;font-weight:800;letter-spacing:.14em;fill:var(--brass-text)}
.rf-hd-title{font:500 19px/1 var(--serif);fill:var(--ink)}
.rf-hd-sub{font-size:11.5px;fill:var(--muted)}
.rf-hd-loss{fill:#c08a72;stroke:var(--paper);stroke-width:1}
.rf-hd-kept{fill:var(--ink)}
.rf-hd-kept-em{fill:var(--brass)}
.rf-hd-val{font-size:12px;font-weight:800;fill:#fff}
.rf-hd-keptv{font-size:14px;font-weight:800;fill:var(--paper)}
.rf-hd-tick{stroke:var(--line);stroke-width:1;stroke-dasharray:2 3}
.rf-hd-lbl{font-size:12.5px;font-weight:700;fill:#2b3232}
.rf-hd-gain{font:500 17px/1 var(--serif);fill:var(--brass-text)}

.rf-tr-hd{font-size:11px;font-weight:800;letter-spacing:.13em;fill:var(--brass-text)}
.rf-tr-node{fill:var(--paper-3);stroke:var(--line)}
.rf-tr-node-jam{fill:rgba(184,139,57,.18);stroke:var(--brass);stroke-width:1.6}
.rf-tr-t{font-size:14.5px;font-weight:700;fill:var(--ink)}
.rf-tr-t-jam{fill:var(--brass-text)}
.rf-tr-s{font-size:11.5px;fill:var(--muted)}
.rf-tr-queue{fill:var(--brass);opacity:.5}
.rf-tr-link{fill:none;stroke:var(--ink);stroke-width:1.25;opacity:.42}
.rf-tr-rule{fill:rgba(184,139,57,.16);stroke:var(--brass);stroke-width:1.6}
.rf-tr-rulet{font-size:13px;font-weight:800;fill:var(--brass-text)}
.rf-tr-rules{font-size:10.5px;fill:var(--muted)}
.rf-tr-leaf{fill:rgba(255,255,255,.6);stroke:var(--line)}
.rf-tr-leaf-em{fill:rgba(184,139,57,.14);stroke:var(--brass);stroke-width:1.5}
.rf-tr-lt{font-size:13.5px;font-weight:700;fill:var(--ink)}
.rf-tr-ls{font-size:11.5px;fill:var(--muted)}
.rf-tr-pct{font-size:11px;font-weight:800;fill:var(--brass-text)}
.rf-tr-note{font-size:12.5px;fill:var(--muted)}
@media(max-width:640px){
  .rf-hd-title{font-size:23px}.rf-hd-sub,.rf-hd-lbl{font-size:15px}.rf-hd-gain{font-size:20px}
  .rf-tr-t{font-size:17px}.rf-tr-s,.rf-tr-ls,.rf-tr-note{font-size:14px}.rf-tr-lt{font-size:16px}
}

/* --------------------------------------------------------------------------
   P. Labels sitting on plotted lines.
   Chart labels are painted above the curves but had no separation from them, so
   a label crossing a line became unreadable. Renaming "founder" to "business
   owner" made several labels long enough to reach the curve. A halo drawn with
   paint-order costs no extra markup and works on any background.
   -------------------------------------------------------------------------- */
.chart-label,.chart-note,.chart-tick,
.rf-tr-pct,.rf-tr-lt,.rf-tr-ls,.rf-tr-note,.rf-tr-t,.rf-tr-s,
.rf-hd-lbl,.rf-hd-val,.rf-cmp-lbl-base,.rf-cmp-lbl-chg,.rf-cmp-gaplbl,
.rf-g-mark-note,.rf-g-mark-label,.rf-g-gap-note,.rf-g-band-label,.rf-g-band-detail{
  paint-order:stroke fill;stroke:var(--halo,var(--paper));stroke-width:4px;stroke-linejoin:round}
.rf-hd-val,.rf-hd-keptv{--halo:transparent;stroke-width:0}
.hero.dark,.section.dark,.signal-band,.question,.rf-statement{--halo:#101719}
.impact-hero{--halo:#101719}
.rf-hd-chip{fill:rgba(255,255,255,.5);stroke:var(--line)}
.rf-hd-money{font:700 15px/1 var(--sans);fill:var(--brass-text)}
.rf-hd-what{font-size:13px;font-weight:700;fill:var(--ink)}
.rf-hd-where{font-size:12px;fill:var(--muted)}
.rf-hd-fixlbl{font-size:9.5px;font-weight:800;letter-spacing:.12em;fill:var(--brass-text)}
.rf-hd-fix{font-size:12.5px;fill:#2b3232}

/* --------------------------------------------------------------------------
   Q. Two-stage comparisons on a phone.
   The before/after graphics carry their argument in the difference between two
   states, which is exactly what shrinks to nothing on a narrow screen. Below
   900px each state is brought forward in turn: the one being read is scaled up
   and fully opaque, the other recedes. Tapping holds a state; the label says so.
   -------------------------------------------------------------------------- */
@media(max-width:900px){
  .rf-stagepair{position:relative}
  .rf-stagepair .rf-stage-a,.rf-stagepair .rf-stage-b{
    transform-origin:left center;transition:transform 620ms cubic-bezier(.22,.61,.36,1),opacity 620ms ease}
  .rf-stagepair.focus-a .rf-stage-a,.rf-stagepair.focus-b .rf-stage-b{transform:scale(1.06);opacity:1}
  .rf-stagepair.focus-a .rf-stage-b,.rf-stagepair.focus-b .rf-stage-a{transform:scale(.94);opacity:.42}
  .rf-stagehint{display:none}
}

@media(prefers-reduced-motion:reduce){
  .rf-stagepair .rf-stage-a,.rf-stagepair .rf-stage-b{transform:none!important;opacity:1!important;transition:none}
}

/* --------------------------------------------------------------------------
   R. Legal pages and consent, per the September 2026 package.
   -------------------------------------------------------------------------- */
.legal-prose{max-width:74ch}
.legal-prose h2{margin:38px 0 12px;font:500 clamp(21px,2.1vw,27px)/1.22 var(--serif);letter-spacing:-.02em}
.legal-prose h3{margin:26px 0 10px;font:700 14px/1.35 var(--sans);letter-spacing:.02em;color:var(--brass-text)}
.legal-prose p{margin:0 0 14px;font-size:15px;line-height:1.72;color:#2b3232}
.legal-prose>p:first-child{font-size:16.5px}
.legal-strong{font-weight:800;letter-spacing:.02em;color:var(--ink)}
.legal-meta{margin-top:14px;font-size:12.5px;color:var(--muted)}
.legal-callout{margin:24px 0;padding:20px 24px;border:1px solid var(--line);border-left:2px solid var(--brass);background:rgba(184,139,57,.07)}
.legal-callout b{display:block;margin-bottom:8px;font:800 10.5px/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--brass-text)}
.legal-callout p{margin:0;font-size:14.5px;line-height:1.68}
.legal-tablewrap{overflow-x:auto;margin:22px 0}
.legal-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px}
.legal-table th{text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--ink);font:800 10.5px/1.3 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--brass-text);vertical-align:bottom}
.legal-table td{padding:12px 14px 12px 0;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.6;color:#2b3232}
.legal-related{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 22px;align-items:baseline}
.legal-related .kicker{width:100%;margin:0 0 4px}
.legal-related a{font:700 13px/1.5 var(--sans);color:var(--brass-text);text-decoration:none;border-bottom:1px solid rgba(184,139,57,.45);min-height:44px;display:inline-flex;align-items:center}
.legal-related a:hover{color:var(--ink);border-bottom-color:var(--ink)}

.rf-notice{margin:0 0 18px;padding:16px 18px;border:1px solid var(--line);background:rgba(236,229,215,.42)}
.rf-notice .kicker{margin-bottom:8px}
.rf-notice p{margin:0;font-size:13px;line-height:1.68;color:#2b3232}
.rf-consent-sms{margin:0 0 18px;padding:14px 18px;border:1px solid var(--line);border-left:2px solid var(--brass);background:rgba(184,139,57,.07)}
.rf-consent-sms .checkbox-field label{font-size:13px;line-height:1.6}
.demo-legal-notice{margin:0 0 22px;padding:16px 18px;border:1px solid rgba(244,239,229,.24);background:rgba(244,239,229,.06)}
.demo-legal-notice b{display:block;margin-bottom:7px;font:800 10.5px/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--brass-2)}
.demo-legal-notice p{margin:0;font-size:13px;line-height:1.65;color:rgba(244,239,229,.82)}
@media(max-width:560px){
  .legal-prose p{font-size:15.5px}
  .legal-callout{padding:16px 18px}
}

/* --------------------------------------------------------------------------
   S. Diagram legibility on a phone.
   A graphic scaled to fit a 358px column renders 12px labels at about 5px. Below
   900px each diagram keeps a minimum legible width and scrolls, and any diagram
   can be opened full screen where it gets the whole viewport.
   -------------------------------------------------------------------------- */
.rf-graphic{position:relative}
.rf-graphic-scroll{overflow:visible}
.rf-graphic-scroll>svg{display:block}

/* Usage instructions removed: the Expand control is the affordance. */

.rf-graphic-expand{position:absolute;top:0;right:0;display:none;align-items:center;gap:6px;
  background:var(--paper);border:1px solid var(--line);color:var(--brass-text);
  font:700 11px/1 var(--sans);letter-spacing:.05em;padding:9px 12px;min-height:40px;cursor:pointer;z-index:2}
.rf-graphic-expand:hover,.rf-graphic-expand:focus-visible{border-color:var(--brass);color:var(--ink)}
.section.dark .rf-graphic-expand,.signal-band .rf-graphic-expand,.hero.dark .rf-graphic-expand{
  background:rgba(16,23,25,.9);border-color:rgba(244,239,229,.28);color:var(--brass-2)}
@media(max-width:900px){.rf-graphic-expand{display:inline-flex}}

html.rf-zoom-open{overflow:hidden}
.rf-zoom{position:fixed;inset:0;z-index:120;background:rgba(10,15,16,.96);display:flex;flex-direction:column}
.rf-zoom[hidden]{display:none}
.rf-zoom-bar{display:flex;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid rgba(244,239,229,.18)}
.rf-zoom-title{flex:1;min-width:0;font:700 12px/1.4 var(--sans);letter-spacing:.04em;color:rgba(244,239,229,.82)}
.rf-zoom-close{background:var(--brass);border:0;color:var(--ink);font:700 12px/1 var(--sans);padding:11px 16px;min-height:44px;cursor:pointer}
.rf-zoom-close:hover{background:var(--brass-2)}
.rf-zoom-stage{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:18px;background:var(--paper);display:flex;align-items:center}
.rf-zoom-fig{margin:auto}
.rf-zoom-stage svg{width:auto;height:auto;min-width:min(1500px,330vw);max-width:none;display:block}
.rf-zoom-hint{margin:0;padding:11px 18px;font:600 11.5px/1.4 var(--sans);color:rgba(244,239,229,.62);text-align:center}
@media(prefers-reduced-motion:reduce){.rf-zoom-stage{scroll-behavior:auto}}

/* Below 900px the canvas is still scaled, so the smallest labels need a larger
   design size to clear the 12px floor once scaled. Sized against each diagram's
   own viewBox rather than applied blanket, so boxes are not overflowed. */
@media(max-width:900px){
  .rf-graphic-tree .rf-tr-pct,.rf-graphic-tree .rf-tr-ls{font-size:15px}
  .rf-graphic-tree .rf-tr-lt,.rf-graphic-tree .rf-tr-t{font-size:17px}
  .rf-graphic-tree .rf-tr-s,.rf-graphic-tree .rf-tr-note{font-size:15px}
  .rf-graphic-tree .rf-tr-hd,.rf-graphic-tree .rf-tr-rules{font-size:13px}
  .rf-graphic-hundred .rf-hd-where,.rf-graphic-hundred .rf-hd-fix{font-size:16px}
  .rf-graphic-hundred .rf-hd-fixlbl{font-size:13px}
  .rf-graphic-hundred .rf-hd-what{font-size:16.5px}
  .rf-graphic-hundred .rf-hd-sub{font-size:15px}
  .rf-graphic-cmp .rf-cmp-tick{font-size:15px}
  .rf-graphic-cmp .rf-cmp-lbl-base,.rf-graphic-cmp .rf-cmp-lbl-chg{font-size:16px}
  .rf-graphic-cmp .rf-cmp-gaplbl,.rf-graphic-cmp .rf-cmp-axis{font-size:14px}
  .rf-graphic-converge .rf-cv-text{font-size:17px}
  .rf-graphic-converge .rf-cv-core-b{font-size:16px}
  .rf-graphic-chart .rf-g-tick{font-size:16px}
  .rf-graphic-chart .rf-g-legend-text,.rf-graphic-chart .rf-g-axis-label{font-size:14px}
  .rf-graphic-stack .rf-g-band-detail{font-size:16px}
  .rf-graphic-domains .rf-g-domain-detail{font-size:16px}
}

/* --------------------------------------------------------------------------
   T. Horizontal overflow found at 390px.
   Nothing on a phone should scroll sideways. Each of these was a fixed or
   intrinsic width escaping its column.
   -------------------------------------------------------------------------- */
.rf-graphic,.rf-graphic-svg,.rf-visual,.rf-visual svg{max-width:100%}
.rf-visual{overflow:hidden}
.rf-model,.rf-model-controls,.rf-model-readout{min-width:0;max-width:100%}
.rf-model-field,.rf-model-field label{min-width:0;max-width:100%}
.rf-model-field label{display:flex;flex-wrap:wrap;align-items:center;gap:4px}
.rf-tip{flex:0 0 auto}
.rf-tip-body{max-width:min(260px,84vw);margin-left:0;left:auto;right:0;transform:translateY(4px)}
.rf-tip:hover .rf-tip-body,.rf-tip:focus-visible .rf-tip-body{transform:translateY(0)}
.checkbox-field,.rf-consent,.choice{min-width:0;max-width:100%}
.checkbox-field label{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.signal-band .wrap,.signal-grid{min-width:0;max-width:100%}
.signal-grid>*{min-width:0}


/* --------------------------------------------------------------------------
   T. Nothing scrolls sideways on a phone.
   Legal tables become label-and-value rows instead of a 560px scroller.
   -------------------------------------------------------------------------- */
@media(max-width:620px){
  .legal-tablewrap{overflow:visible}
  .legal-table{min-width:0;display:block}
  .legal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .legal-table tbody,.legal-table tr,.legal-table td{display:block;width:auto}
  .legal-table tr{padding:14px 0;border-bottom:1px solid var(--line)}
  .legal-table td{border:0;padding:0 0 8px}
  .legal-table td:first-child{font-weight:700;color:var(--ink)}
  .legal-table td:before{content:attr(data-label);display:block;margin-bottom:4px;
    font:800 9.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-text)}
  .legal-table td:first-child:before{content:none}
  .tw-oppwrap{overflow:visible}
  table.tw-opp{min-width:0}
}

/* Wrapper classes that carry no visual weight still need a rule, so the
   shortcode-class check can distinguish "intentionally plain" from "stylesheet
   never shipped" — the exact confusion that caused the v4.28 incident. */
.rf-graphic-gap{display:block}
.rf-intake-full{display:block}
.rf-leader-tight-body{min-width:0}
.bk-form{display:block}
.bk-pcta{display:flex;flex-direction:column;justify-content:flex-start}

/* --------------------------------------------------------------------------
   v4.31 — footer, legal typography, partner workspace.
   -------------------------------------------------------------------------- */

/* The legal pages doubled the footer height on a phone. Two links that duplicate
   the primary navigation are dropped there; everything a visitor needs to reach
   only from the footer stays. */
@media(max-width:760px){ .footer-desk-only{display:none} }

/* Legal pages were set at body size for 7,000 words of statute-like prose, which
   read as shouting. Smaller type, tighter measure, more air between clauses. */
.legal-prose{font-size:14.5px;line-height:1.72;max-width:68ch}
.legal-prose>p:first-child{font-size:15.5px;line-height:1.7}
.legal-prose h2{margin:40px 0 10px;font:500 clamp(19px,1.9vw,24px)/1.2 var(--serif);letter-spacing:-.022em}
.legal-prose h2:first-child{margin-top:0}
.legal-prose h3{margin:24px 0 8px;font:700 12.5px/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--brass-text)}
.legal-prose p{margin:0 0 12px;color:#39423f}
.legal-strong{font-weight:700;font-size:13.5px;letter-spacing:.03em}
.legal-callout{margin:22px 0;padding:16px 20px}
.legal-callout p{font-size:13.5px;line-height:1.65}
.legal-table{font-size:12.8px}
.legal-table td{padding:10px 14px 10px 0;line-height:1.55}
.legal-body .page-hero h1,.page-legal h1{letter-spacing:-.035em}
.legal-meta{font-size:12px}
@media(max-width:620px){
  .legal-prose{font-size:14.5px;max-width:none}
  .legal-prose h2{font-size:19px;margin-top:32px}
}

/* Partner workspace: without the mast the tower bar is the header, so it needs
   the page's top edge rather than sitting under a stripe. */
.rf-partner-body .tw{padding-top:0}
.rf-partner-body .partner-shell>main{padding-top:0}

/* Version stamp and change history on the legal pages. */
.legal-version{margin:0 0 26px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.legal-version-line{margin:0;font:700 11px/1.5 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--brass-text)}
.legal-history{margin-top:10px}
.legal-history summary{cursor:pointer;font:700 11.5px/1.5 var(--sans);color:var(--muted);list-style:none}
.legal-history summary::-webkit-details-marker{display:none}
.legal-history summary:before{content:"+ ";color:var(--brass)}
.legal-history[open] summary:before{content:"– "}
.legal-history ol{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--line)}
.legal-history li{padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}
.legal-history li b{color:var(--brass-text);margin-right:10px}
.legal-history li span{color:var(--muted);font-size:12px}
.legal-history li p{margin:5px 0 0;color:#39423f;font-size:13px;line-height:1.6}
.legal-supplement-head{margin-top:48px!important;padding-top:26px;border-top:2px solid var(--ink)}
.legal-supplement-note{font-size:13.5px!important;color:var(--muted)!important;margin-bottom:26px!important}

/* --------------------------------------------------------------------------
   U. v4.33 — night Earth, robust markup, legal page structure.
   -------------------------------------------------------------------------- */

/* The consequence list is a description list now, so it cannot collapse into a
   run-on sentence if an editor rewrites the markup. */
.rf-statement-consequence{margin:0;padding:0;border-top:1px solid rgba(244,239,229,.2)}
.rf-statement-consequence dt{padding:18px 0 0;font:500 clamp(19px,1.9vw,24px)/1.25 var(--serif);
  color:var(--brass-2);letter-spacing:-.02em}
.rf-statement-consequence dd{margin:7px 0 0;padding:0 0 18px;border-bottom:1px solid rgba(244,239,229,.2);
  font:400 13.5px/1.55 var(--sans);color:rgba(244,239,229,.66);letter-spacing:0}
.rf-block{display:block}
.rf-lede-b{display:block;font-weight:700}

/* Legal pages: summary panel, contents, numbered sections. */
.legal-summary{margin:0 0 30px;padding:22px 26px;border:1px solid var(--line);border-left:2px solid var(--brass);
  background:rgba(184,139,57,.07)}
.legal-summary b{display:block;margin-bottom:9px;font:800 10px/1.3 var(--sans);letter-spacing:.15em;
  text-transform:uppercase;color:var(--brass-text)}
.legal-summary p{margin:0;font-size:14.5px;line-height:1.7;color:#26302f}
.legal-toc{margin:0 0 40px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.legal-toc-h{margin:0 0 12px;font:800 10px/1.3 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text)}
.legal-toc ol{list-style:none;margin:0;padding:0;columns:2;column-gap:40px}
.legal-toc li{break-inside:avoid;margin-bottom:4px}
.legal-toc a{display:flex;gap:10px;align-items:baseline;padding:5px 0;font-size:13px;line-height:1.45;
  color:#39423f;text-decoration:none;border-bottom:0}
.legal-toc a span{flex:0 0 auto;font:800 9.5px/1.6 var(--sans);letter-spacing:.08em;color:var(--brass-text)}
.legal-toc a:hover{color:var(--ink)}
.legal-toc a:hover span{color:var(--ink)}
.legal-prose h2{display:flex;gap:14px;align-items:baseline;scroll-margin-top:90px}
.legal-num{flex:0 0 auto;font:800 10px/1.6 var(--sans);letter-spacing:.1em;color:var(--brass);opacity:.75}
@media(max-width:760px){
  .legal-toc ol{columns:1}
  .legal-summary{padding:18px 20px}
  .legal-prose h2{gap:10px}
}

/* --------------------------------------------------------------------------
   V. Night Earth.
   Drawn, not photographed: real coastlines, city lights in the corridors they
   actually form, a terminator, and dawn on the limb facing the reader. Shipped
   as a separate SVG so it caches on its own and stays out of this stylesheet.
   Dark bands only, at 12 per cent. A night Earth needs darkness to read as
   night, and the paper sections are already carrying enough.
   -------------------------------------------------------------------------- */
.rf-statement,.cta-band,.rf-model-feature,.partner-demo-access,.question{position:relative;isolation:isolate}
.rf-statement:before,.cta-band:before,.rf-model-feature:before,.partner-demo-access:before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url(../img/night-earth-v433.svg) no-repeat;
  background-size:auto 175%;background-position:right -14% center;opacity:.12}
.rf-statement>.wrap,.cta-band>.wrap,.rf-model-feature>.wrap,
.rf-statement>.container,.cta-band>.container,.partner-demo-access>*{position:relative;z-index:1}
@media(max-width:760px){
  .rf-statement:before,.cta-band:before,.rf-model-feature:before,.partner-demo-access:before{
    background-size:auto 130%;background-position:right -48% center;opacity:.11}
}
@media print{.rf-statement:before,.cta-band:before,.rf-model-feature:before,.partner-demo-access:before{display:none}}
/* Where the source numbers its own clauses the theme adds none, so the contents
   column still aligns without a number to hang on. */
.legal-toc a{padding-left:0}
.legal-toc li{list-style:none}

/* The prose measure is 68ch, about 548px, and the tables carried a 560px floor,
   so they scrolled sideways inside their own column. Tables do not need to obey
   the reading measure: give them the full container and drop the floor. */
.legal-table{min-width:0}
.legal-tablewrap{overflow:visible;width:auto;max-width:none}
@media(min-width:900px){
  .legal-tablewrap{margin-left:0;margin-right:-22%}
}

/* ==========================================================================
   W. v4.34 — diagrams carry the page.
   Editorial figure treatment on every diagram; a stepped argument and a trace
   interaction layered on top, both of which do nothing until their script runs.
   ========================================================================== */

/* ---- B · editorial figure, the base treatment everywhere ---- */
.rf-fig-top{display:flex;align-items:baseline;gap:clamp(10px,1.4vw,18px);
  padding-bottom:11px;margin-bottom:22px;border-bottom:1px solid var(--ink)}
.rf-fig-n{flex:0 0 auto;font:800 9.5px/1.6 var(--sans);letter-spacing:.19em;
  text-transform:uppercase;color:var(--brass-text);white-space:nowrap}
.rf-fig-t{margin:0;font:400 clamp(16px,1.7vw,22px)/1.28 var(--serif);letter-spacing:-.024em;color:var(--ink)}
.rf-fig-foot{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(18px,2.4vw,36px);
  margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.rf-fig-read{margin:0;font-size:13.5px;line-height:1.7;color:#39423f}
.rf-fig-read b{color:var(--brass-text);font-weight:700}
.rf-fig-foot .rf-graphic-caption{margin:0;font-size:11.5px;line-height:1.6}
.section.dark .rf-fig-t,.signal-band .rf-fig-t,.hero.dark .rf-fig-t,.rf-model-feature .rf-fig-t{color:var(--paper)}
.section.dark .rf-fig-top,.signal-band .rf-fig-top,.hero.dark .rf-fig-top,.rf-model-feature .rf-fig-top{border-bottom-color:rgba(244,239,229,.4)}
.section.dark .rf-fig-read,.signal-band .rf-fig-read,.hero.dark .rf-fig-read,.rf-model-feature .rf-fig-read{color:rgba(244,239,229,.8)}
.section.dark .rf-fig-foot,.signal-band .rf-fig-foot,.hero.dark .rf-fig-foot,.rf-model-feature .rf-fig-foot{border-top-color:rgba(244,239,229,.2)}
@media(max-width:760px){
  .rf-fig-top{flex-direction:column;gap:6px;margin-bottom:16px}
  .rf-fig-foot{grid-template-columns:1fr;gap:12px}
  .rf-fig-t{font-size:17px}
  .rf-fig-read{font-size:14.5px}
}

/* ---- D · stepped argument ---- */
.rf-stepped-head{margin-bottom:clamp(20px,2.6vw,34px)}
.rf-stepped-grid{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  gap:clamp(26px,4vw,64px);align-items:center}
.rf-stepped-claims{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.rf-stepped-claims li{margin:0;padding:14px 0 14px 20px;border-left:1px solid transparent;margin-left:-1px}
.rf-stepped-label{display:block;font:800 9.5px/1.5 var(--sans);letter-spacing:.13em;
  text-transform:uppercase;color:var(--brass-text);margin-bottom:5px}
.rf-stepped-claim{display:block;font:400 16px/1.45 var(--serif);letter-spacing:-.015em;color:#26302f}
/* Only once the script has run do the items become controls. */
.rf-stepped.is-live .rf-stepped-claims li{padding:0}
.rf-stepped.is-live .rf-stepped-claims button{display:block;width:100%;text-align:left;background:none;
  border:0;border-left:1px solid transparent;margin-left:-1px;padding:14px 0 14px 20px;cursor:pointer;
  font:inherit;color:inherit;transition:border-color 260ms ease,opacity 260ms ease}
.rf-stepped.is-live .rf-stepped-claims button:hover{opacity:1}
.rf-stepped.is-live .rf-stepped-claims li{opacity:.55;transition:opacity 260ms ease}
.rf-stepped.is-live .rf-stepped-claims li.is-on{opacity:1}
.rf-stepped.is-live .rf-stepped-claims li.is-on button{border-left-color:var(--brass)}
.rf-stepped.is-live .rf-stepped-claims button:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
/* Dimming is driven by a data attribute the script sets, so it is inert without it. */
.rf-stepped-art .rf-graphic{margin:0}
.rf-stepped.is-live .rf-stepped-art [data-rf-layer] svg > g{transition:opacity 560ms ease}
.rf-stepped.is-live .rf-stepped-art[data-rf-layer="1"] svg > g:nth-of-type(n+3),
.rf-stepped.is-live .rf-stepped-art[data-rf-layer="2"] svg > g:nth-of-type(n+5){opacity:.12}

/* ---- E · trace on hover ---- */
[data-rf-trace] .rf-graphic-svg > g{transition:opacity 300ms ease}
[data-rf-trace].is-tracing .rf-graphic-svg > g{opacity:.15}
[data-rf-trace].is-tracing .rf-graphic-svg > g.is-lit{opacity:1}
.rf-trace-hint{display:none;margin:12px 0 0;font:700 10.5px/1.5 var(--sans);
  letter-spacing:.08em;color:var(--brass-text)}
[data-rf-trace].is-live .rf-trace-hint{display:block}

/* ---- C · diagram led ---- */
.rf-led-head{max-width:32ch;margin-bottom:10px}
.rf-led-grid{display:grid;grid-template-columns:minmax(150px,200px) minmax(0,1fr) minmax(150px,200px);
  gap:clamp(18px,2.6vw,32px);align-items:center;margin-top:20px}
.rf-led-note{margin:0;font-size:12.5px;line-height:1.62;color:var(--muted)}
.rf-led-note b{display:block;font:800 9.5px/1.5 var(--sans);letter-spacing:.13em;
  text-transform:uppercase;color:var(--brass-text);margin-bottom:6px}
.rf-led-note:before{content:"";display:block;width:26px;height:1px;background:var(--brass);margin-bottom:11px}
.rf-led-note.is-right{text-align:right}
.rf-led-note.is-right:before{margin-left:auto}

@media(max-width:900px){
  .rf-stepped-grid{grid-template-columns:1fr;gap:24px}
  .rf-led-grid{grid-template-columns:1fr;gap:20px}
  .rf-led-note.is-right{text-align:left}
  .rf-led-note.is-right:before{margin-left:0}
  .rf-stepped.is-live .rf-stepped-claims li{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .rf-stepped.is-live .rf-stepped-art svg > g,[data-rf-trace] .rf-graphic-svg > g{transition:none}
}
/* Inside a hero column the stepped block has no room for two columns, and the
   section already carries the headline, so it stacks and drops its own head. */
.hero-art .rf-stepped-grid,.page-hero .rf-stepped-grid{grid-template-columns:1fr;gap:20px}
.hero-art .rf-stepped-head,.page-hero .rf-stepped-head{display:none}
.hero-art .rf-stepped-claims,.page-hero .rf-stepped-claims{display:grid;
  grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid rgba(244,239,229,.22)}
.hero-art .rf-stepped.is-live .rf-stepped-claims button,
.page-hero .rf-stepped.is-live .rf-stepped-claims button{border-left:0;border-top:1px solid transparent;
  margin:-1px 0 0;padding:13px 14px 13px 0}
.hero-art .rf-stepped.is-live .rf-stepped-claims li.is-on button,
.page-hero .rf-stepped.is-live .rf-stepped-claims li.is-on button{border-top-color:var(--brass)}
.hero-art .rf-stepped-claim,.page-hero .rf-stepped-claim{font-size:14px;color:rgba(244,239,229,.86)}
@media(max-width:820px){
  .hero-art .rf-stepped-claims,.page-hero .rf-stepped-claims{grid-template-columns:1fr}
}

/* ==========================================================================
   X. v4.35 — the mark, and a footer that survives landscape.
   ========================================================================== */

/* Three paths in, one out. Colour is inherited, so one file serves the light
   header, the dark footer, the reversed lock screen and single-colour print. */
.rf-mark{flex:0 0 auto;width:1.55em;height:1.55em;display:block;overflow:visible}
.rf-mark path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke;
  stroke-linecap:butt;stroke-linejoin:miter}
.rf-mark-in{stroke:currentColor}
.rf-mark-out{stroke:var(--rf-mark-accent,var(--brass))}

.rf-logo{display:inline-flex;align-items:center;gap:.52em;text-decoration:none;color:var(--ink)}
.rf-logo:hover .rf-mark-out,.rf-logo:focus-visible .rf-mark-out{stroke:var(--ink)}
.rf-logo-text{display:flex;flex-direction:column;min-width:0}
.rf-logo-word{font:900 1em/1 var(--sans);letter-spacing:-.045em;white-space:nowrap}
.rf-logo-sub{margin-top:.38em;font:700 .3em/1 var(--sans);letter-spacing:.26em;
  text-transform:uppercase;color:var(--brass-text)}

/* Header and footer instances inherit their own size and colour. */
.site-header .rf-logo{font-size:clamp(19px,1.9vw,23px)}
.footer-brandbar .rf-logo{font-size:clamp(22px,2.2vw,28px);color:var(--paper)}
.footer-brandbar .rf-logo .brand-front{color:rgba(244,239,229,.82)}
.footer-brandbar{--rf-mark-accent:var(--brass-2)}
.footer-brandbar .rf-logo:hover .rf-mark-out{stroke:var(--paper)}
.rf-partner-body .rf-logo,.partner-mast .rf-logo{color:var(--paper);--rf-mark-accent:var(--brass-2)}
@media print{.rf-mark-out{stroke:currentColor}}

/* The footer packed a wordmark, a statement and eight links into two columns.
   On a phone in landscape, 844 wide and 390 tall, the statement ran into the
   navigation. The two-column arrangement now gives up earlier, and the
   navigation is allowed to wrap rather than demand its natural width. */
@media(max-width:1024px){
  .footer-brandbar .footer-top{grid-template-columns:1fr;align-items:start;gap:20px}
  .footer-brandbar .footer-nav{justify-content:flex-start}
}
@media(max-width:1180px){
  .footer-brandbar .footer-nav{flex-wrap:wrap;max-width:100%}
}
.footer-lockup{min-width:0;flex-wrap:wrap}
.footer-statement{min-width:0;max-width:100%}
@media(orientation:landscape) and (max-height:460px){
  .footer-brandbar .footer-top{padding-top:24px;padding-bottom:20px;gap:16px}
  .footer-brandbar .rf-logo{font-size:21px}
  .footer-statement{font-size:16px}
}
/* The wordmark carried its own brass tick under "Ready". With the mark beside it
   that is a second brass accent doing the same job, so it is dropped in the
   lockup and kept wherever the wordmark still stands alone. */
.rf-logo .rf-wordmark .brand-ready:after{display:none}
/* Partner surfaces: the lockup inherits the reversed palette. */
.partner-brand.rf-logo,.tw-mark.rf-logo{color:var(--paper);--rf-mark-accent:var(--brass-2);font-size:19px}
.tw-mark.rf-logo .rf-logo-word{font-size:19px}
/* ==========================================================================
   Leadership and Strategic Bench — v4.28
   Rebuilt on the site's own light template rather than as a dark slab. The
   previous build stacked five 659px cards on a phone, so the section ran
   3,901px. There is no portrait block per card now: a small chip, the name,
   one line, and a link. Nothing scrolls sideways at any width.
   ========================================================================== */
.bk{background:var(--paper);color:var(--ink);padding:clamp(52px,6vw,96px) 0}
.bk-w{width:min(var(--max),calc(100% - 2*var(--pad)));margin:auto}
.bk-meta{display:flex;align-items:center;gap:13px;margin-bottom:18px}
.bk-meta span{font:800 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--brass-text)}
.bk-meta i{display:block;width:40px;height:1px;background:var(--brass)}
.bk-title{margin:0;font:400 clamp(32px,4.6vw,58px)/1.03 var(--serif);letter-spacing:-.04em;color:var(--ink)}
.bk-title em{font-style:normal;color:var(--brass-text)}
.bk-sub{margin:14px 0 0;font:400 clamp(17px,1.8vw,22px)/1.4 var(--serif);color:#26302f}
.bk-lede{margin:14px 0 clamp(26px,3vw,40px);font-size:14.5px;line-height:1.7;color:var(--muted);max-width:66ch}

/* ---- cards ---- */
.bk-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;
  border-top:1px solid var(--ink);border-left:1px solid var(--line)}
.bk-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.42)}
.bk-card.is-f{background:rgba(184,139,57,.09)}
.bk-hit{display:flex;flex-direction:column;width:100%;height:100%;text-align:left;background:none;border:0;
  color:inherit;font:inherit;padding:18px 18px 16px;cursor:pointer;
  transition:background 220ms ease}
.bk-hit:hover,.bk-hit:focus-visible{background:rgba(184,139,57,.1);outline:none}
.bk-card.on .bk-hit{background:rgba(184,139,57,.16);box-shadow:inset 0 2px 0 var(--brass)}
.bk-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}
.bk-chip{flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);background:var(--paper-2);
  display:grid;place-items:center;overflow:hidden}
.bk-card.is-f .bk-chip{border-color:var(--brass)}
.bk-mark{font:400 17px/1 var(--serif);color:var(--brass-text);letter-spacing:-.02em}
.bk-photo{width:100%;height:100%;object-fit:cover;display:block}
.bk-badge{font:800 8.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  border:1px solid var(--line);padding:5px 7px;white-space:nowrap}
.bk-badge-f{background:var(--brass);border-color:var(--brass);color:var(--ink)}
.bk-name{display:block;font:400 18px/1.18 var(--serif);letter-spacing:-.025em;color:var(--ink);margin-bottom:5px}
.bk-role{display:block;font:800 8.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text);margin-bottom:11px}
.bk-line{display:block;font-size:12.5px;line-height:1.58;color:var(--muted)}
.bk-act{margin-top:auto;padding-top:16px;font:800 9.5px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--brass-text)}
.bk-act i{font-style:normal;display:inline-block;transition:transform 300ms cubic-bezier(.22,.61,.36,1)}
.bk-hit:hover .bk-act i{transform:translateX(4px)}

/* ---- panel ---- */
.bk-panels{border-left:1px solid var(--line);border-right:1px solid var(--line)}
.bk-panel{position:relative;border-bottom:1px solid var(--line);background:rgba(184,139,57,.07);padding:26px 28px}
.bk-x{position:absolute;top:8px;right:9px;background:none;border:0;color:var(--muted);font-size:22px;
  line-height:1;cursor:pointer;width:44px;height:44px}
.bk-x:hover{color:var(--ink)}
.bk-pgrid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr) minmax(210px,.75fr);
  gap:clamp(18px,2.4vw,40px);align-items:start}
.bk-pcol{min-width:0}
.bk-pn{margin:0 0 3px;font:400 21px/1.14 var(--serif);letter-spacing:-.025em;color:var(--ink);padding-right:36px}
.bk-pr{margin:0 0 12px;font:800 8.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text)}
.bk-pline{margin:0;font-size:13px;line-height:1.62;color:var(--muted);max-width:34ch}
.bk-k{margin:0 0 9px;font:800 9px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text)}
.bk-pl{list-style:none;margin:0;padding:0}
.bk-pl li{position:relative;padding:0 0 9px 15px;font-size:13px;line-height:1.62;color:#26302f}
.bk-pl li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:1px;background:var(--brass)}
.bk-quote{margin:0;padding-left:14px;border-left:1px solid var(--brass);font:400 italic 14.5px/1.5 var(--serif);color:var(--ink)}
.bk-foot{margin:14px 0 0;font:800 8.5px/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--muted)}
.bk-apply{width:100%;background:var(--ink);border:1px solid var(--ink);color:var(--paper);
  font:800 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:15px;cursor:pointer;min-height:48px}
.bk-apply:hover{background:var(--brass);border-color:var(--brass);color:var(--ink)}
.bk-apply i{font-style:normal;margin-left:5px}

/* ---- closing strip ---- */
.bk-strip{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;
  margin-top:clamp(30px,3.6vw,52px);padding-top:24px;border-top:1px solid var(--line)}
.bk-strip h3{margin:8px 0 0;font:400 clamp(20px,2.4vw,29px)/1.2 var(--serif);letter-spacing:-.03em;color:var(--ink)}
.bk-pair{display:flex;gap:32px;flex-wrap:wrap}
.bk-pair div{font:800 9.5px/1.6 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.bk-pair b{display:block;color:var(--brass-text)}

/* ---- responsive: rows, not tall cards ---- */
@media(max-width:1180px){.bk-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){
  .bk-grid{grid-template-columns:1fr;border-left:1px solid var(--line);border-right:1px solid var(--line)}
  .bk-hit{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:
    "chip name badge" "chip role role" "chip line line" ". act act";
    column-gap:14px;row-gap:0;align-items:center;padding:16px}
  .bk-top{display:contents}
  .bk-chip{grid-area:chip;align-self:start;margin-bottom:0}
  .bk-badge{grid-area:badge;justify-self:end}
  .bk-name{grid-area:name;margin-bottom:0;font-size:17px}
  .bk-role{grid-area:role;margin:4px 0 0}
  .bk-line{grid-area:line;margin-top:7px}
  .bk-act{grid-area:act;justify-self:start;padding-top:11px;margin-top:0}
  .bk-pgrid{grid-template-columns:1fr;gap:20px}
  .bk-panel{padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){.bk-hit,.bk-act i{transition:none}}

/* ---- apply modal, light template ---- */
.bk-modal{position:fixed;inset:0;z-index:110;display:flex;justify-content:flex-end}
.bk-modal[hidden]{display:none}
.bk-bg{position:absolute;inset:0;background:rgba(16,23,25,.55);backdrop-filter:blur(3px)}
.bk-box{position:relative;width:min(440px,100%);height:100%;overflow-y:auto;background:var(--paper);
  border-left:1px solid var(--line);padding:clamp(22px,3vw,34px);box-shadow:-24px 0 60px rgba(16,23,25,.18)}
.bk-box h3{margin:0 0 4px;font:400 24px/1.16 var(--serif);letter-spacing:-.03em;color:var(--ink);padding-right:44px}
.bk-mrole{margin:0 0 18px;font:800 9px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text)}
.bk-hint{display:flex;gap:11px;align-items:flex-start;margin:0 0 20px;padding:13px 15px;
  border-left:2px solid var(--brass);background:rgba(184,139,57,.09);font-size:13px;line-height:1.55;color:#26302f}
.bk-hint b{flex:0 0 20px;height:20px;border-radius:50%;background:var(--brass);color:var(--paper);
  display:grid;place-items:center;font:700 12px/1 var(--sans)}
.bk-f{margin-bottom:14px}
.bk-f label{display:block;margin-bottom:6px;font:800 10px/1.4 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.bk-f label em{font-style:normal;color:var(--brass-text)}
.bk-f input,.bk-f textarea{width:100%;background:none;border:0;border-bottom:1px solid var(--line);
  color:var(--ink);font:400 15px/1.5 var(--sans);padding:10px 0;min-height:44px;border-radius:0}
.bk-f input:focus,.bk-f textarea:focus{outline:none;border-bottom-color:var(--brass)}
.bk-f input[type=file]{border:1px dashed var(--brass);background:rgba(184,139,57,.07);padding:14px 12px;
  font-size:12.5px;color:var(--muted);cursor:pointer;min-height:54px}
.bk-f input[type=file]::file-selector-button{background:var(--ink);border:0;color:var(--paper);
  font:800 9.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;margin-right:11px;cursor:pointer}
.bk-fhelp{margin:6px 0 0;font-size:11px;color:var(--muted)}
.bk-con{display:flex;gap:10px;align-items:flex-start;margin:14px 0 16px;font-size:12px;line-height:1.55;color:var(--muted)}
.bk-con input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--brass);margin-top:1px}
.bk-send{width:100%;background:var(--ink);border:1px solid var(--ink);color:var(--paper);
  font:800 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:16px;cursor:pointer;min-height:50px}
.bk-send:hover{background:var(--brass);border-color:var(--brass);color:var(--ink)}
.bk-mnote{margin:11px 0 0;font-size:11px;line-height:1.55;color:var(--muted);text-align:center}
.bk-modal .rf-hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:560px){.bk-box{width:100%;border-left:0}}

/* With more roles than fit a row the bench scrolls horizontally rather than
   wrapping into ragged rows, so added roles stay reachable. */
@media(min-width:821px){
  .bk-grid.is-many{display:flex;overflow-x:auto;scroll-behavior:smooth;
    scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;border-left:1px solid var(--line)}
  .bk-grid.is-many .bk-card{flex:0 0 clamp(220px,19vw,272px);scroll-snap-align:start}
  .bk-grid.is-many::-webkit-scrollbar{height:3px}
  .bk-grid.is-many::-webkit-scrollbar-thumb{background:var(--brass)}
  .bk-more{display:flex;align-items:center;gap:10px;margin-top:12px}
  .bk-more button{width:34px;height:34px;border:1px solid var(--line);background:none;color:var(--brass-text);
    cursor:pointer;font-size:14px;line-height:1;display:grid;place-items:center}
  .bk-more button:hover{border-color:var(--brass);color:var(--ink)}
  .bk-more span{font:800 9.5px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
}
.bk-more{display:none}

/* ==========================================================================
   U. v4.28 — mobile diagram layouts.
   Wide diagrams render as HTML below 700px so they reflow vertically at full
   type size. Above that the SVG is used, and the SVG is always what the expand
   view shows.
   ========================================================================== */
/* The safe state is the `hidden` attribute, which needs no stylesheet. If this
   file is missing or stale the renditions stay hidden rather than dumping text
   into every page, which is exactly what a cached stylesheet caused in v4.28. */
@media(max-width:700px){
  .rf-m[hidden]{display:block;margin-top:4px}
  .rf-graphic-expand{position:static;display:inline-flex;margin-top:14px}
}
.rf-m-h{margin:22px 0 12px;font:800 10px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--brass-text)}
.rf-m-h:first-child{margin-top:0}
.rf-m-note{margin:14px 0 0;font-size:13.5px;line-height:1.6;color:var(--muted)}

.rf-m-step{position:relative;padding:14px 16px;border:1px solid var(--line);background:var(--paper-3);margin-bottom:10px}
.rf-m-step:not(:last-child):after{content:"";position:absolute;left:50%;bottom:-10px;width:1px;height:10px;background:var(--line)}
.rf-m-step b{display:block;font:700 15px/1.3 var(--sans);color:var(--ink)}
.rf-m-step span{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted)}
.rf-m-step.is-jam{background:rgba(184,139,57,.16);border-color:var(--brass)}
.rf-m-step.is-jam b{color:var(--brass-text)}
.rf-m-rule{padding:13px 16px;border:1px solid var(--brass);background:rgba(184,139,57,.14);
  font:700 14px/1.3 var(--sans);color:var(--brass-text);text-align:center;margin-bottom:10px}
.rf-m-branch{list-style:none;margin:0;padding:0}
.rf-m-branch li{position:relative;padding:13px 52px 13px 16px;border:1px solid var(--line);background:rgba(255,255,255,.55);margin-bottom:8px}
.rf-m-branch li.is-em{border-color:var(--brass);background:rgba(184,139,57,.13)}
.rf-m-branch b{display:block;font:700 14.5px/1.3 var(--sans);color:var(--ink)}
.rf-m-branch span{display:block;margin-top:3px;font-size:13px;line-height:1.5;color:var(--muted)}
.rf-m-branch i{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-style:normal;
  font:800 13px/1 var(--sans);color:var(--brass-text)}

.rf-m-band{padding:14px 16px;border:1px solid var(--line);background:var(--paper-3);margin-bottom:8px}
.rf-m-band b{display:block;font:700 15.5px/1.3 var(--sans);color:var(--ink)}
.rf-m-band span{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted)}
.rf-m-band.is-goal{background:rgba(184,139,57,.15);border-color:var(--brass)}
.rf-m-stop{margin:0 0 10px;padding:7px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);
  font:800 10.5px/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);text-align:center}

.rf-m-core{padding:14px 16px;border:1px solid var(--brass);background:rgba(184,139,57,.14);text-align:center;
  font:700 15px/1.3 var(--sans);color:var(--brass-text);margin-bottom:12px}
.rf-m-dom{padding:13px 16px;border:1px solid var(--line);background:var(--paper-3);margin-bottom:8px}
.rf-m-dom b{display:block;font:700 15px/1.3 var(--sans);color:var(--ink)}
.rf-m-dom span{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted)}

.rf-m-sym{list-style:none;margin:0 0 14px;padding:0;border-top:1px solid var(--line)}
.rf-m-sym li{position:relative;padding:12px 0 12px 18px;border-bottom:1px solid var(--line);
  font-size:14px;line-height:1.55;color:#2b3232}
.rf-m-sym li:before{content:"";position:absolute;left:0;top:19px;width:8px;height:1px;background:var(--brass)}
.rf-m-cause{padding:16px 18px;border:1px solid var(--brass);background:rgba(184,139,57,.14)}
.rf-m-cause b{display:block;font:800 10.5px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text);margin-bottom:7px}
.rf-m-cause span{font-size:14.5px;line-height:1.55;color:var(--ink)}

.rf-m-bar{display:flex;height:40px;margin-bottom:6px;border:1px solid var(--line)}
.rf-m-keep{display:grid;place-items:center;background:var(--ink);color:var(--paper);font:800 13px/1 var(--sans)}
.rf-m-keep.is-em{background:var(--brass);color:var(--ink)}
.rf-m-lose{display:grid;place-items:center;background:#c08a72;color:#fff;font:800 12px/1 var(--sans)}
.rf-m-cap{margin:0 0 16px;font-size:12.5px;color:var(--muted)}
.rf-m-fix{padding:13px 15px;border:1px solid var(--line);background:rgba(255,255,255,.55);margin-bottom:8px}
.rf-m-fix b{display:block;font:800 15px/1 var(--sans);color:var(--brass-text);margin-bottom:6px}
.rf-m-fixn{display:block;font:700 14px/1.35 var(--sans);color:var(--ink)}
.rf-m-fixw{display:block;margin-top:3px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.rf-m-fixr{display:block;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.5;color:#2b3232}

/* Dark sections invert the neutrals. */
.section.dark .rf-m-step,.signal-band .rf-m-step,.hero.dark .rf-m-step,
.section.dark .rf-m-band,.signal-band .rf-m-band,
.section.dark .rf-m-dom,.signal-band .rf-m-dom{background:rgba(244,239,229,.06);border-color:rgba(244,239,229,.2)}
.section.dark .rf-m-step b,.signal-band .rf-m-step b,
.section.dark .rf-m-band b,.signal-band .rf-m-band b,
.section.dark .rf-m-dom b,.signal-band .rf-m-dom b{color:var(--paper)}
.section.dark .rf-m-step span,.signal-band .rf-m-step span,
.section.dark .rf-m-band span,.signal-band .rf-m-band span,
.section.dark .rf-m-dom span,.signal-band .rf-m-dom span,
.section.dark .rf-m-note,.signal-band .rf-m-note{color:rgba(244,239,229,.7)}
.section.dark .rf-m-h,.signal-band .rf-m-h,.hero.dark .rf-m-h{color:var(--brass-2)}
