/* Rank Forge Marketing — sitewide legibility and contrast pass */
:root{
  --rf-ink:#17181a;
  --rf-navy:#192533;
  --rf-copy:#3d4650;
  --rf-muted:#5c6570;
  --rf-cream:#e7dfd3;
  --rf-paper:#f4efe6;
  --rf-line:#b8aea1;
  --rf-orange:#d24715;
  --rf-orange-dark:#a93610;
  --rf3-ink:#17181a;
  --rf3-navy:#192533;
  --rf3-navy-2:#243446;
  --rf3-copy:#3d4650;
  --rf3-muted:#5c6570;
  --rf3-paper:#f4efe6;
  --rf3-cream:#e7dfd3;
  --rf3-warm:#d7cab9;
  --rf3-line:rgba(23,24,26,.25);
  --rf3-orange:#d24715;
  --rf3-orange-dark:#a93610;
}

html{font-size:100%;scroll-padding-top:112px;}
body{background:#e9e3d9;color:var(--rf-ink);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;}
main{background:var(--rf-paper);}
main p,main li,main dd{line-height:1.68;}
main p{max-width:68ch;}
main h1,main h2,main h3{font-kerning:normal;text-rendering:optimizeLegibility;}
main h1{letter-spacing:-.04em!important;line-height:1!important;}
main h2{letter-spacing:-.03em!important;line-height:1.06!important;}
main h3{letter-spacing:-.018em!important;line-height:1.18!important;}
small,figcaption{font-size:13px!important;line-height:1.55!important;}

/* Darken the legacy inline surfaces so older pages belong to the same system. */
main section[style*="background:#F5F4F0"],
main section[style*="background: #F5F4F0"],
main section[style*="background:#f5f4f0"]{background:var(--rf-cream)!important;}
main section[style*="background:#FCFBF9"],
main section[style*="background: #FCFBF9"],
main section[style*="background:#fcfbf9"]{background:var(--rf-paper)!important;}
main section[style*="background:#EFE9DE"],
main section[style*="background: #EFE9DE"]{background:var(--rf3-warm)!important;}
main [style*="background:#FCFBF9"],
main [style*="background: #FCFBF9"]{background:#f8f5ef!important;}
main [style*="background:#F6F2EA"],
main [style*="background: #F6F2EA"]{background:#f5f0e7!important;}

/* Replace low-contrast gray declarations still present in static markup. */
main [style*="color:#797B80"],main [style*="color: #797B80"],
main [style*="color:#68727E"],main [style*="color: #68727E"],
main [style*="color:#5C6673"],main [style*="color: #5C6673"],
main [style*="color:#565A5F"],main [style*="color: #565A5F"]{color:var(--rf-muted)!important;}
main [style*="color:#4C4E52"],main [style*="color: #4C4E52"],
main [style*="color:#46515E"],main [style*="color: #46515E"],
main [style*="color:#3C3E42"],main [style*="color: #3C3E42"]{color:var(--rf-copy)!important;}
main [style*="color:#B84420"],main [style*="color: #B84420"]{color:var(--rf-orange-dark)!important;}
main [style*="color:#F26522"],main [style*="color: #F26522"]{color:var(--rf-orange-dark)!important;}
main [style*="font-size:11px"],main [style*="font-size: 11px"]{font-size:12px!important;}
main [style*="font-size:clamp(11px"],main [style*="font-size: clamp(11px"]{
  font-size:12px!important;
  letter-spacing:.12em!important;
  line-height:1.45!important;
}

/* Keep reading text comfortably sized without inflating captions or evidence notes. */
main p[style*="font-size:14px"],main li[style*="font-size:14px"],
main p[style*="font-size:15px"],main li[style*="font-size:15px"],
main p[style*="font-size:15.5px"],main li[style*="font-size:15.5px"]{font-size:16px!important;}
.rf3-lede,.rf3-hero-copy>p,.rf3-audit-copy p,.rf3-founder-copy p,
.rf3-case-two p,.rf3-case-two li,.rf3-case-outcome p{font-size:18px!important;line-height:1.68!important;}
.rf3-project-copy p,.rf3-service-row p,.rf3-work-index-card p,
.rf3-process-steps p,.rf3-faq details p{font-size:16px!important;line-height:1.65!important;}
.rf3-report>p,.rf3-report-footer,.rf3-case-outcome small{font-size:12px!important;line-height:1.55!important;}
.rf3-project-index,.rf3-project-copy span{font-size:12px!important;line-height:1.4!important;}
.rf3-findings em{font-size:12px!important;letter-spacing:.05em!important;}
.rf3-principles span{font-size:13px!important;line-height:1.5!important;}
.rf3-workboard::before{font-size:11px!important;}
.rf3-ledger span{font-size:13px!important;color:#d9e0e8!important;}
.rf3-ledger small{font-size:12px!important;color:#d9e0e8!important;}
.rf3-audit-facts span{font-size:13px!important;line-height:1.45!important;}
.rf3-focus-choices label{font-size:13px!important;line-height:1.35!important;}
.rf3-form-note{font-size:12px!important;line-height:1.5!important;}
.rf3-process-steps>div>span{font-size:12px!important;}
.rf3-focus-choices input{
  width:1px!important;
  height:1px!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

/* Stronger typographic hierarchy with less compressed display text. */
.rf3-title{line-height:1.01!important;letter-spacing:-.04em!important;}
.rf3-hero h1,.rf3-audit-page-hero h1,.rf3-case-hero h1,.rf3-work-index-hero h1{line-height:.98!important;letter-spacing:-.044em!important;}
.rf3-kicker,.rf-kicker{color:var(--rf-orange-dark)!important;font-size:13px!important;letter-spacing:.09em!important;line-height:1.4!important;}
.rf3-case-meta dt{font-size:12px!important;color:var(--rf-muted)!important;letter-spacing:.08em!important;}
.rf3-case-meta dd{font-size:14px!important;}
.rf3-annotation b,.rf3-decision-list span{font-size:12px!important;}
.rf3-section-nav a{font-size:12px!important;color:var(--rf-copy)!important;}
.rf3-section-nav a:hover,.rf3-section-nav a.is-current{color:var(--rf-orange-dark)!important;}
.rfn-link,.rfnav-menu>a,.rfnav-dd>summary{font-size:15px!important;font-weight:650!important;color:#26303a!important;}
.rfn-link[href="/case-studies"],.rfnav-menu>a[href="/case-studies"]{color:var(--rf-orange-dark)!important;}

/* Surfaces and dividers need to be visible without relying on shadows. */
.rf3-work,.rf3-faq,.rf3-process,.rf3-case-media,.rf3-work-index{background:#f7f3eb!important;}
.rf3-hero,.rf3-audit-preview,.rf3-case-decisions,.rf3-case-hero{background:var(--rf-paper)!important;}
.rf3-services,.rf3-founder,.rf3-case-brief{background:var(--rf-cream)!important;}
.rf3-final,.rf3-next-project{background:var(--rf3-warm)!important;}
/* Named dark sections must outrank the legacy homepage odd/even surface rule. */
body.rf-page-home main>section.rf3-proofbar,
body.rf-page-home main>section.rf3-testimonials{
  background:var(--rf3-navy)!important;
  color:#fff!important;
}
.rf3-project,.rf3-report,.rf3-audit-form,.rf3-quote,
.rf3-case-two article,.rf3-work-index-placeholder{border-color:rgba(23,24,26,.28)!important;}
.rf3-report,.rf3-audit-form{background:#fbfaf7!important;}
.rf3-service-list,.rf3-service-row,.rf3-faq-list,.rf3-faq details,
.rf3-case-meta,.rf3-decision-list,.rf3-decision-list div{border-color:var(--rf3-line)!important;}
.rf3-proofbar p,.rf3-proofbar small,
.rf3-testimonials .rf3-section-head p,.rf3-quote figcaption span,
.rf3-case-outcome p,.rf3-case-outcome small{color:#d9e0e8!important;}
.rf3-proofbar .rf3-kicker,.rf3-testimonials .rf3-kicker,
.rf3-case-outcome .rf3-kicker,.rf3-work-index-hero .rf3-kicker,
main section[style*="background:#1E2A3A"] [style*="color:#F26522"],
main section[style*="background: #1E2A3A"] [style*="color: #F26522"]{color:#f69a72!important;}

/* Controls, links, and focus states remain obvious in every section. */
.rf3-button,.ax-pill,.rfn-cta,.rfnav-cta,button[type="submit"]{background:var(--rf-orange)!important;color:#fff!important;}
.rf3-button:hover,.ax-pill:hover,.rfn-cta:hover,.rfnav-cta:hover,button[type="submit"]:hover{background:var(--rf-orange-dark)!important;}
.rf3-button--ghost{background:transparent!important;color:var(--rf-ink)!important;border-color:#6f675e!important;}
.rf3-button--ghost:hover{background:#fbfaf7!important;}
.rf3-text-link,.rf-text-link{color:var(--rf-ink)!important;text-decoration-thickness:1.5px!important;text-underline-offset:5px!important;}
main a:not([class]):not([style]){text-underline-offset:4px;text-decoration-thickness:1.25px;}
input,select,textarea{background:#fbfaf7!important;color:var(--rf-ink)!important;border-color:#857d73!important;}
input::placeholder,textarea::placeholder{color:#626b74!important;opacity:1;}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--rf-orange-dark)!important;
  outline-offset:3px!important;
}

/* Footer links were visually quiet on several templates. */
footer{font-size:16px;}
footer a{color:#35404b!important;}
footer a:hover{color:var(--rf-orange-dark)!important;}
footer [style*="color:#4B5765"],footer [style*="color: #4B5765"],
footer [style*="color:#5C6673"],footer [style*="color: #5C6673"]{color:#46515d!important;}
footer [style*="color:#A9A497"],footer [style*="color: #A9A497"]{color:#626a72!important;}

/* Avoid repeating the same audit action while its in-page counterpart is visible. */
body.rf-page-home.rf-hero-cta-visible .rfn-mobbar{
  transform:translateY(120%)!important;
  pointer-events:none!important;
}

@media(max-width:760px){
  body{font-size:16px;}
  main h1{letter-spacing:-.035em!important;}
  .rf3-hero h1,.rf3-audit-page-hero h1,.rf3-case-hero h1{line-height:1!important;}
  .rf3-lede,.rf3-hero-copy>p,.rf3-audit-copy p,.rf3-founder-copy p,
  .rf3-case-two p,.rf3-case-two li,.rf3-case-outcome p{font-size:17px!important;}
  .rf3-kicker,.rf-kicker{font-size:12px!important;}
  .rf3-focus-choices label{font-size:12px!important;}
  .rf3-proofbar small{font-size:12px!important;}
}

@media(prefers-contrast:more){
  :root{--rf-copy:#27313a;--rf-muted:#3f4953;--rf-line:#82786c;--rf3-copy:#27313a;--rf3-muted:#3f4953;--rf3-line:rgba(23,24,26,.45);}
  .rf3-button--ghost{border-width:2px!important;}
}
