/* Shared navigation structure, with each site's own visual language. */
body[data-rf-site] { --rf-language-height: 40px; }
body[data-rf-site="oversight"] { --rf-language-height: 42.5px; }
.rf-language { display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; box-sizing: border-box; height: var(--rf-language-height); font: 500 13px/1.4 Inter, system-ui, sans-serif; margin-left: 20px; color: inherit; }
body .rf-language a { display: inline-flex; align-items: center; justify-content: center; flex: none; box-sizing: border-box; width: calc(var(--rf-language-height) - 8px); height: calc(var(--rf-language-height) - 8px); border-radius: 50%; padding: 0; color: inherit; text-decoration: none; }
body .rf-language a[aria-current] { text-decoration: underline; text-underline-offset: 5px; }
body .rf-language a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .rf-language { gap: 0; padding: 3px; border: 1px solid #444; border-radius: 30px; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .rf-language > span { display: none; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .rf-language a { color: #b5b6b6; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .rf-language a[aria-current] { background: #f7f8f8; color: #08090a; text-decoration: none; }
body[data-rf-site="asset"] .rf-language { margin-left: 0; }
@media (hover: hover) {
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .rf-language a:not([aria-current]):hover { background: #303234; color: #fff; }
}
@media (max-width: 767px) {
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header .header-1-layout-3 { width: auto; flex-shrink: 0; flex-wrap: nowrap; align-items: center; align-self: center; }
}
@media (max-width: 1024px) {
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header .header-1-layout-3 { margin-top: 0; align-self: center; align-items: center; }
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header .header-1-icon > .widget-content { display: flex; padding-top: 0; }
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header .header-1-layout-4 { --width: 55px; }
  body[data-rf-site] #dialog-navigation .rf-language { align-self: flex-start; margin: 20px 0 24px; }
}
body[data-rf-site] #dialog-navigation .rf-menu-actions:not([hidden]) { display: flex; gap: 20px; margin-top: 20px; flex-wrap: wrap; }
body[data-rf-site] #dialog-navigation .rf-menu-actions > .component { display: block !important; width: auto; margin: 0; }
body[data-rf-site] #dialog-navigation .header-1-button .button { background: #2d2d2d; color: #f7f8f8; border: 1px solid #424242; }
body[data-rf-site] #dialog-navigation .header-1-button-2 .button { background: #e6e6e6; color: #08090a; border: 1px solid transparent; }
.rf-media-language { margin: 0; padding: 24px max(24px,calc((100% - 1200px) / 2)); font: 13px/1.6 system-ui,sans-serif; color: inherit; }
html[lang="de"] :is(.prod-copy, .dna-cell, .oversight-footer nav, .main-footer nav) { min-width: 0; overflow-wrap: break-word; }
html[lang="de"] :is(h1, h2, h3, .heading) { overflow-wrap: anywhere; hyphens: auto; }
html[lang="de"] :is(.scope-imprint, .scope-privacy-policy) .text-widget { overflow-wrap: anywhere; hyphens: auto; }
@media(max-width: 1000px) {
  .rf-language { margin-left: 12px; }
  .rf-navigation .rf-language { align-self: flex-start; margin-left: 0; }
}
/* Type scale from the Agency / Asset reference, without changing their layouts. */
body:is([data-rf-site="agency"], [data-rf-site="asset"]) {
  --type-text-font-size: 16px; --type-text-line-height: 25.6px;
  --type-body-font-size: 16px; --type-body-line-height: 25.6px;
  --type-lead-font-size: 18px; --type-lead-line-height: 28.8px;
  --type-section-font-size: 46px; --type-section-line-height: 51.52px;
  --type-dialog-font-size: 21px; --type-dialog-line-height: 27.3px;
  --type-label-font-size: 15px; --type-label-line-height: 22.5px;
  --type-hero-font-size: 52px; --type-hero-line-height: 56.16px;
}
body[data-rf-site="agency"] .product-page h2,
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-home :is(h2.heading, .problem-heading-2 .heading, .solution-heading-2 .heading, .faqs-heading .heading) { font-size: var(--type-section-font-size); line-height: var(--type-section-line-height); }
body[data-rf-site="agency"] .product-page .hero h1 { font-size: 76px; line-height: 1.04; }
body[data-rf-site="agency"] .product-page .sub-hero h1,
body[data-rf-site="asset"] .scope-home .hero-heading .heading { font-size: var(--type-hero-font-size); line-height: var(--type-hero-line-height); }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-home .text-widget:not(.riskflow-copy, .riskflow-copy-2, .riskflow-copy-3, .challenge-copy-2, .feature-library-copy-4, .feature-library-copy-5) { font-size: 16px; line-height: 1.6; }
body[data-rf-site="asset"] .scope-home .hero-copy { font-size: var(--type-lead-font-size); line-height: var(--type-lead-line-height); }
/* One anchor offset for the shared Agency/Asset header, measured by site.js. */
html:has(body:is([data-rf-site="agency"], [data-rf-site="asset"])) { scroll-padding-top: 0; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) #content [id] { scroll-margin-top: var(--header-height, 80px); }
body[data-rf-site="agency"] #content :is(#product-asset, #product-cases, #product-oversight) { scroll-margin-top: calc(var(--header-height, 80px) + 20px); }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header .header-1-logo { flex-shrink: 0; }
body[data-rf-site] header :is(.header-1-logo a, .wordmark, .rf-brand) { position: relative; }
body[data-rf-site] header :is(.header-1-logo a, .wordmark, .rf-brand)::before { content: ""; position: absolute; inset: -10px -8px; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header [data-open-dialog="navigation"] { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-header [data-open-dialog="navigation"] svg { width: 23px; height: 16px; }
body[data-rf-site="asset"] .scope-header .header-1-logo img { width: calc(130px * 1383.598 / 1869.164); }
body[data-rf-site="asset"] .scope-home .hero-layout-7 { --margin-top: -10px; }
body[data-rf-site="asset"] .scope-home :is(.howitworks-heading, .data-ownership-heading, .integrations-heading) .heading { font-size: var(--type-label-font-size); line-height: var(--type-label-line-height); }
body[data-rf-site="asset"] :is(#howitworks, #features) { --type-dialog-font-size: 35px; --type-dialog-line-height: 40px; }
body[data-rf-site="asset"] .scope-home .data-ownership-heading-2 .heading { font-size: var(--type-section-font-size); line-height: var(--type-section-line-height); }
body[data-rf-site="asset"] .scope-home .integrations-layout-3 { --padding-top: 100px; --padding-bottom: 100px; }
body[data-rf-site="asset"] .integrations-image img { mask-image: linear-gradient(to right, #000 92%, transparent 100%); }
@media (min-width: 768px) {
  body[data-rf-site="asset"] .scope-home .integrations-layout-5 { position: relative; align-self: stretch; }
  body[data-rf-site="asset"] .integrations-image { position: absolute; inset: 0; height: 100%; }
  body[data-rf-site="asset"] .integrations-image > .widget-content { margin: 0; height: 100%; }
  body[data-rf-site="asset"] .scope-home .integrations-image img { width: auto; max-width: none; height: 100%; }
}
body[data-rf-site="asset"] .scope-home .challenge-layout-3 { flex-wrap: nowrap; }
body[data-rf-site="asset"] .scope-home .asset-cta { display: block; padding: 100px 15px; background: linear-gradient(173deg, var(--color-surface), var(--color-background)); }
body[data-rf-site="asset"] .asset-cta > .layout-inner { display: block; padding: 0; }
body[data-rf-site="asset"] .asset-cta .faqs-layout-17 { padding: 0; }
body[data-rf-site="asset"] .scope-footer .footer-1-logo img { width: calc(210px * 1383.598 / 1869.164); }
@media (max-width: 1024px) {
  body[data-rf-site="asset"] .scope-footer .footer-1-logo img { width: calc(180px * 1383.598 / 1869.164); }
}
body:is([data-rf-site="agency"], [data-rf-site="asset"]) .accordion-title-text { font-size: 16px; line-height: 24px; }
body[data-rf-site="agency"] .product-page .dna h3 { font-size: 19px; line-height: 1.3; }
body[data-rf-site="agency"] .product-page .dna p { font-size: 14.5px; line-height: 1.6; }
body[data-rf-site="agency"] #dna > .wrap > .label { font-size: 24px; line-height: 32px; font-weight: 600; color: var(--color-primary); }
body[data-rf-site="agency"] .product-page .dna { border: 0; column-gap: 50px; overflow: hidden; }
body[data-rf-site="agency"] .product-page .dna-cell { position: relative; border: 0; padding-left: 0; padding-right: 0; }
body[data-rf-site="agency"] .dna-cell::before { content: ''; position: absolute; top: 0; bottom: 0; right: -26px; width: 2px; background: #1a1c1f; }
body[data-rf-site="agency"] .dna-cell::after { content: ''; position: absolute; bottom: 0; left: 0; right: -50px; height: 2px; background: #1a1c1f; }
@media (min-width: 1025px) {
  body[data-rf-site="agency"] .dna-cell:nth-child(4n)::before,
  body[data-rf-site="agency"] .dna-cell:nth-last-child(-n+4)::after { content: none; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  body[data-rf-site="agency"] .dna-cell:nth-child(2n)::before,
  body[data-rf-site="agency"] .dna-cell:nth-last-child(-n+2)::after { content: none; }
}
@media (max-width: 767px) {
  body[data-rf-site="agency"] .dna-cell::before,
  body[data-rf-site="agency"] .dna-cell:last-child::after { content: none; }
}
body[data-rf-site="agency"] .product-page .offer2 .card h3 { font-size: 34px; line-height: 1.3; }
body[data-rf-site="agency"] .product-page .prod-claim { font-size: 21px; line-height: 1.4; }
body[data-rf-site="agency"] .product-page .desk-steps { font-size: 14px; line-height: 1.5; }
body[data-rf-site="agency"] .product-page .desk-steps b { font-size: 15px; }
body[data-rf-site="agency"] .product-page .statement .big { font-size: 34px; line-height: 1.3; }
body[data-rf-site="agency"] .product-page section:has(> .statement) { background: #1f2021; }
body[data-rf-site="agency"] .product-page .statement,
body[data-rf-site="agency"] .product-page .cta > .wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; align-items: center; text-align: left; }
body[data-rf-site="agency"] .product-page .cta > .wrap > h2 { margin: 0; }
body[data-rf-site="agency"] .product-page .statement .big { margin: 0; font-weight: 600; }
body[data-rf-site="agency"] .product-page .cta .button { margin-top: 32px; }
body[data-rf-site="agency"] .product-page .cta .hero-actions { margin-top: 32px; }
body[data-rf-site="agency"] .product-page .cta .hero-actions .button { margin-top: 0; }
body[data-rf-site] .scope-contact .contact-layout-15 { --display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); --gap: 36px 40px; --row-gap: 36px; --column-gap: 40px; }
body[data-rf-site] .scope-contact :is(.contact-layout-16, .contact-layout-19, .contact-layout-17, .contact-layout-20) { --width: 100%; --margin-top: 0px; --margin-right: 0px; --margin-bottom: 0px; --margin-left: 0px; }
body[data-rf-site] .scope-contact :is(.contact-layout-18, .contact-layout-21) { --justify-content: flex-start; }
body[data-rf-site] .scope-contact :is(.contact-layout-17, .contact-layout-20) { --display: grid; grid-template-columns: 125px minmax(0, 1fr); align-content: center; --align-items: start; }
body[data-rf-site] .scope-contact :is(.contact-image-1, .contact-image-2) img { display: block; }
@media (max-width: 1024px) {
  body[data-rf-site] .scope-contact .contact-layout-15 { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  body[data-rf-site] .scope-contact :is(.contact-layout-17, .contact-layout-20) { grid-template-columns: 1fr; align-content: start; }
}
/* Product contact pages keep the shared form, with their own light product palette. */
body[data-rf-site="cases"] .scope-contact { --contact-accent: #506246; --contact-surface: #f4f4ed; --contact-paper: #fdfcf9; --contact-border: #dfe3d9; }
body[data-rf-site="oversight"] .scope-contact { --contact-accent: #00749e; --contact-surface: #eef6f9; --contact-paper: #f6f6f6; --contact-border: #dedede; }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact {
  color-scheme: light; --color-primary: #1c2024; --color-secondary: #fff; --color-text: #52616a;
  --color-surface: var(--contact-surface); --color-background: var(--contact-paper);
  --type-text-font-size: 16px; --type-body-font-size: 16px;
  background: var(--contact-paper); color: var(--color-text);
}
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact .component:is(.contact-layout-17, .contact-layout-20) { background: #fff; border-color: var(--contact-border); }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) #contact-form .site-field-group :is(input.site-field, textarea.site-field, select) { background: #fff; color: #1c2024; border-color: var(--contact-border); }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact :is(input, textarea)::placeholder { color: #606b75; opacity: 1; }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact :is(.contact-delivery-note p, #contact-status) { color: #606b75; }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact .contact-form-1 .button[type="submit"],
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact .contact-button-1 .button { background: var(--contact-accent); color: #fff; border-color: var(--contact-accent); }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) #contact-copy { color: #1c2024; background: #fff; border-color: var(--contact-border); }
body:is([data-rf-site="cases"], [data-rf-site="oversight"]) .scope-contact :is(input, select, textarea, button, a):focus-visible { outline: 2px solid var(--contact-accent); outline-offset: 3px; }
/* Oversight pairs DINish headings with Spectral body text on its landing page. */
body[data-rf-site="oversight"] .scope-contact {
  --color-text: #1c2024; --color-surface: #fcfcfc;
  --font-family: "DINish", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --type-text-font-family: "Spectral", Georgia, serif; --type-body-font-family: "Spectral", Georgia, serif;
  font: 300 16px/1.6 "Spectral", Georgia, serif;
}
body[data-rf-site="oversight"] .scope-contact .component.text-widget { font: 300 16px/1.6 "Spectral", Georgia, serif; letter-spacing: normal; color: #1c2024; }
body[data-rf-site="oversight"] .scope-contact .component .heading { font-family: var(--font-family); font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
body[data-rf-site="oversight"] .scope-contact .contact-heading-1 .heading { font-size: clamp(2.5rem,7vw,4.5rem); font-weight: 400; letter-spacing: -.04em; text-wrap: balance; }
body[data-rf-site="oversight"] .scope-contact .contact-heading-2 .heading { font-size: clamp(1.35rem,2.2vw,1.75rem); }
body[data-rf-site="oversight"] .scope-contact :is(.contact-heading-4,.contact-heading-6) .heading { font-size: 22px; }
body[data-rf-site="oversight"] .scope-contact :is(.contact-heading-3,.contact-heading-5) .heading { font-size: 13px; color: var(--contact-accent); }
body[data-rf-site="oversight"] .scope-contact .component.contact-layout-1 { background: #f6f6f6; }
body[data-rf-site="oversight"] .scope-contact .component.contact-layout-9 { background: #fcfcfc; }
body[data-rf-site="oversight"] .scope-contact .component.contact-layout-2 { --margin-top: 100px; }
body[data-rf-site="oversight"] .scope-contact .component.contact-layout-3 { --width: 100%; }
body[data-rf-site="oversight"] .scope-contact .component.contact-layout-5 { --margin-top: 0px; }
body[data-rf-site="oversight"] .scope-contact .component:is(.contact-layout-17,.contact-layout-20) { --border-radius: 20px; border-color: #e8e8e8; background: #fcfcfc; }
body[data-rf-site="oversight"] #contact-form .site-field-group :is(input.site-field,textarea.site-field,select) { font: 400 16px/1.5 var(--font-family); border-radius: 8px; padding: 12px 16px; }
body[data-rf-site="oversight"] .scope-contact .component .button { font: 500 15px/1.4 var(--font-family); border-radius: 4px; letter-spacing: normal; }
body[data-rf-site="oversight"] .scope-contact .contact-links-1 .list-text { font: 500 15px/1.4 var(--font-family); color: var(--contact-accent); }
body[data-rf-site="oversight"] .scope-contact .contact-links-1 svg { fill: var(--contact-accent); }
body[data-rf-site="oversight"] .scope-contact :is(.contact-delivery-note p,#contact-status) { font: 300 14px/1.6 "Spectral", Georgia, serif; color: #606b75; }
body[data-rf-site="oversight"] .scope-contact .site-field-type-html { font: 300 16px/1.6 "Spectral", Georgia, serif; }
@media(max-width: 560px) {
  body[data-rf-site="oversight"] .scope-contact .component.contact-layout-2 { --margin-top: 48px; }
}
/* Cases contact uses the same typography and flat surfaces as its home page. */
body[data-rf-site="cases"] .scope-contact {
  --color-text: var(--body); --color-primary: var(--ink);
  --type-text-font-family: var(--font-family); --type-small-font-family: var(--font-family);
  --type-lead-font-family: var(--font-family); --type-body-font-family: var(--font-family);
  font: 400 var(--text-size)/1.7 var(--font-family);
}
body[data-rf-site="cases"] .scope-contact .component.text-widget { font: 400 var(--text-size)/1.7 var(--font-family); letter-spacing: normal; color: var(--body); }
body[data-rf-site="cases"] .scope-contact .component .heading { font-family: var(--font-family); font-weight: var(--font-weight-heading); letter-spacing: -.02em; }
body[data-rf-site="cases"] .scope-contact .contact-heading-1 { text-align: center; }
body[data-rf-site="cases"] .scope-contact .contact-heading-1 .heading { font-size: clamp(42px,2.6vw,72px); line-height: 1.12; letter-spacing: -.04em; max-width: 24ch; margin-inline: auto; text-wrap: balance; }
body[data-rf-site="cases"] .scope-contact .contact-heading-2 .heading { font-size: var(--heading-size); line-height: 1.15; text-wrap: balance; }
body[data-rf-site="cases"] .scope-contact :is(.contact-heading-4, .contact-heading-6) .heading { font-size: 22px; line-height: 1.25; }
body[data-rf-site="cases"] .scope-contact :is(.contact-heading-3, .contact-heading-5) .heading { font-size: 13px; line-height: 1.5; letter-spacing: .08em; text-transform: uppercase; color: var(--green); }
body[data-rf-site="cases"] .scope-contact .component.contact-layout-1 { background: var(--paper); }
body[data-rf-site="cases"] .scope-contact .component.contact-layout-9 { background: #fff; }
body[data-rf-site="cases"] .scope-contact .component.contact-layout-2 { --margin-top: 72px; }
body[data-rf-site="cases"] .scope-contact .component.contact-layout-3 { --width: 100%; }
body[data-rf-site="cases"] .scope-contact .component.contact-layout-5 { --margin-top: 0px; }
body[data-rf-site="cases"] .scope-contact .component:is(.contact-layout-17, .contact-layout-20) { background: var(--paper); --border-radius: var(--radius); border-color: var(--line); }
body[data-rf-site="cases"] #contact-form .site-field-group :is(input.site-field, textarea.site-field, select) { font: 400 16px/1.5 var(--font-family); padding: 12px 16px; border-radius: var(--radius); color: var(--ink); }
body[data-rf-site="cases"] .scope-contact :is(input, textarea)::placeholder { color: var(--body); }
body[data-rf-site="cases"] .scope-contact :is(.contact-delivery-note p, #contact-status) { font: 400 var(--small-size)/1.7 var(--font-family); color: var(--secondary-ink); }
body[data-rf-site="cases"] .scope-contact .site-field-type-html { font: 400 var(--text-size)/1.7 var(--font-family); }
body[data-rf-site="cases"] .scope-contact .component .button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border-radius: var(--radius); font: 500 14px/1.4 var(--font-family); letter-spacing: normal; }
body[data-rf-site="cases"] .scope-contact .contact-links-1 .list-text { font: 500 14px/1.4 var(--font-family); color: var(--green); }
body[data-rf-site="cases"] .scope-contact .contact-links-1 svg { fill: var(--green); }
body[data-rf-site="cases"] .scope-contact .component .button:not(#contact-copy):hover { background: #3d4e35; color: #fff; border-color: #3d4e35; }
body[data-rf-site="cases"] #contact-copy:hover { background: var(--soft-green); color: var(--ink); border-color: var(--green); }
@media(max-width: 560px) {
  body[data-rf-site="cases"] .scope-contact .contact-heading-1 .heading { font-size: clamp(32px,9.2vw,43px); }
  body[data-rf-site="cases"] .scope-contact .component.contact-layout-2 { --margin-top: 40px; }
}
body[data-rf-site="agency"] #services .offer2 .card { border-color: color-mix(in srgb, var(--color-accent) 45%, transparent); }
@media (max-width: 980px) {
  body[data-rf-site="agency"] .product-page .hero h1 { font-size: 46px; }
  body[data-rf-site="agency"] .product-page .statement,
  body[data-rf-site="agency"] .product-page .cta > .wrap { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 640px) {
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) {
    --type-section-font-size: 32px; --type-section-line-height: 35.84px;
    --type-hero-font-size: 34px; --type-hero-line-height: 36.72px;
    --type-lead-font-size: 17px; --type-lead-line-height: 27.2px;
  }
  body[data-rf-site="agency"] .product-page .hero h1 { font-size: 40px; }
  body[data-rf-site="agency"] .product-page .offer2 .card h3 { font-size: 28px; }
  body[data-rf-site="agency"] .product-page .prod-claim { font-size: 19px; }
  body[data-rf-site="agency"] .product-page .statement .big { font-size: 24px; }
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .accordion-title-text { font-size: 15px; }
}
body[data-rf-site] { padding-top: 0; overflow-x: clip; }
body[data-rf-site="agency"], body[data-rf-site="asset"] { padding-top: var(--header-height, 80px); }
@media (min-width: 1025px) {
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-footer .footer-1-layout-8 { --margin-top: -1.5px; }
  body:is([data-rf-site="agency"], [data-rf-site="asset"]) .scope-footer .footer-1-layout-8 .heading-widget > .widget-content { margin-top: 0; }
}
body[data-rf-site="agency"] .hero .circuit { opacity: .8; background: radial-gradient(ellipse at 70% 40%, transparent, var(--color-background) 75%), repeating-linear-gradient(90deg, transparent 0 46px, rgb(255 255 255 / 10%) 46px 47px), repeating-linear-gradient(0deg, transparent 0 46px, rgb(255 255 255 / 10%) 46px 47px); }
body[data-rf-site="agency"] .hero .accent { color: var(--color-accent); }
body[data-rf-site="agency"] .hero-row { align-items: flex-end; }
body[data-rf-site="agency"] .hero .marquee { gap: 10px; border-top: 0; }
body[data-rf-site="agency"] .hero .marquee > span { padding: 8px 14px; border: 1px solid #343638; border-radius: 999px; color: #d5d6d7; font-size: 14px; line-height: 1.5; }
body[data-rf-site="agency"] .hero .btn-link { display: inline-flex; align-items: center; gap: 8px; color: var(--color-primary); font-size: 15px; font-weight: 500; line-height: 22px; text-decoration: none; }
body[data-rf-site="agency"] .hero .btn-link svg { width: 14px; height: 14px; fill: currentColor; }
body[data-rf-site="agency"] .prod-name { --logo-height: 36px; }
body[data-rf-site="agency"] .prod-name img { display: block; width: auto; height: var(--logo-height); max-width: 100%; object-fit: contain; object-position: left; }
/* Match the shared symbol, allowing Oversight's g descender below it. */
body[data-rf-site="agency"] #product-oversight .prod-name img { height: calc(var(--logo-height) * 329.453 / 284.912); }
body[data-rf-site="agency"] :is(#products, .product-page > .cta) { background: linear-gradient(173deg, var(--color-surface), var(--color-background)); }
body[data-rf-site="agency"] :is(#products, #dna, #services) .split h2,
body[data-rf-site="agency"] :is(#products, #dna, #services) .split > .lead { margin-bottom: 0; }
body[data-rf-site="agency"] .prod-shot.teardown img { mix-blend-mode: normal; }
body[data-rf-site="agency"] .prod-shot .cap-light { color: var(--color-primary); }
body[data-rf-site="agency"] .ipad-demo .ipad-screen { width: 100%; }
body[data-rf-site="agency"] .ipad-demo .ipad-screen > img { display: block; width: 100%; height: auto; }
body[data-rf-site="agency"] .ipad-demo video { border: 0; border-radius: 0; }
body[data-rf-site="agency"] .ipad-demo figcaption,
body[data-rf-site="agency"] #products .prod-shot .cap { color: var(--color-primary); font-size: 14px; font-style: normal; line-height: 20px; letter-spacing: 0; }
body[data-rf-site="agency"] #products :is(.chev, .desk-steps) { margin: 24px 0 0; }
body[data-rf-site="agency"] #products :is(.chev > li, .desk-steps > div) { position: relative; margin: 0; padding: 18px 0 18px 42px; border: 0; border-radius: 0; background: transparent; font-size: 15px; line-height: 24px; }
body[data-rf-site="agency"] #products :is(.chev, .desk-steps) b { display: block; margin-bottom: 0; font-size: 16px; line-height: 20px; }
body[data-rf-site="agency"] #products .chev > li::before,
body[data-rf-site="agency"] #products .step-number { position: absolute; left: 0; top: 18px; color: var(--color-accent); font-size: 15px; font-weight: 500; line-height: 24px; font-variant-numeric: tabular-nums; }
body[data-rf-site="agency"] #product-asset .chev > li { padding-left: 28px; }
body[data-rf-site="agency"] #product-asset .chev > li::before { content: none; }
body[data-rf-site="agency"] #product-asset .chev b { position: relative; }
body[data-rf-site="agency"] #product-asset .chev b::before { content: ''; position: absolute; left: -26px; top: 50%; width: 10px; height: 10px; border-top: 2px solid var(--color-accent); border-right: 2px solid var(--color-accent); transform: translateY(-50%) rotate(45deg); }
body[data-rf-site="agency"] #products .desk-steps { width: 80%; }
body[data-rf-site="agency"] #products .desk-steps > div { padding-left: 32px; }
body[data-rf-site="agency"] #products .step-number { font-weight: 700; line-height: 20px; }
body[data-rf-site="agency"] #products .hero-actions { margin-top: 48px; column-gap: 36px; row-gap: 24px; }
body[data-rf-site="agency"] #product-cases .autopath .ap { box-sizing: border-box; width: 100%; padding: 8px 16px; border-radius: 12px; background: rgb(255 255 255 / 8%); }
body[data-rf-site="agency"] #product-cases .autopath svg { display: block; }
body[data-rf-site="agency"] #product-cases .autopath .hw { font-size: 14px; }
body[data-rf-site="agency"] .btn-link { text-decoration-style: dotted; }
@media (max-width: 767px) {
  body[data-rf-site="agency"] .prod-name { --logo-height: 28.8px; }
  body[data-rf-site="agency"] #products .desk-steps { width: 100%; }
}
/* Override the imported 25px gap so pointer travel stays inside the menu. */
[data-rf-site] .scope-header .component.header-1-nav-menu .navigation-desktop > .navigation-list > li > .navigation-dropdown { margin-top: 0 !important; }
body[data-rf-site="agency"] .scope-header .component.header-1-nav-menu .navigation-desktop > .navigation-list > li:last-child > .navigation-link { padding-right: 0; }
body[data-rf-site] #dialog-navigation .modal-content { height: 100dvh; }
body[data-rf-site] #dialog-navigation .modal-close { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; top: 10px; right: 15px; z-index: 10000; color: #f7f8f8; }
body[data-rf-site] #dialog-navigation .modal-close svg { fill: currentColor; width: 22px; height: 22px; }
.rf-header::before, .rf-header::after { content: none; }
.rf-header, .rf-footer, .rf-product-link { box-sizing: border-box; font: 15px/1.5 Inter, system-ui, sans-serif; }
.rf-header { --rf-bg: #151515; --rf-fg: #f5f5f5; --rf-border: #ffffff26; --rf-accent: #e32955; position: sticky; top: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; gap: 30px; width: 100%; padding: 22px max(24px, calc((100vw - 1200px) / 2)); color: var(--rf-fg); }
.rf-header:not(.site-header) { background: var(--rf-bg); border-bottom: 1px solid var(--rf-border); }
[data-rf-site="cases"] .rf-header { --rf-bg: #fdfcf9; --rf-fg: #1c2024; --rf-border: #dfe3d9; --rf-accent: #506246; }
[data-rf-site="oversight"] .rf-header { --rf-bg: #fff; --rf-fg: #1c2024; --rf-border: #dedede; --rf-accent: #00749e; line-height: 24px; background: #fff; border-bottom: 1px solid #dfe3d9; box-shadow: none; }
body[data-rf-site="oversight"] .rf-header { font-family: "DINish", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
[data-rf-site="oversight"] { color-scheme: light; }
html:has(body[data-rf-site="oversight"]) { scroll-padding-top: var(--rf-anchor-offset, 88px); }
@media(prefers-reduced-motion: no-preference) {
  html:has(body[data-rf-site="oversight"]) { scroll-behavior: smooth; }
}
[data-rf-site="oversight"] .rf-dropdown > summary { display: flex; align-items: center; gap: 8px; }
[data-rf-site="oversight"] .rf-dropdown > summary::after { content: ''; width: 7px; height: 7px; margin: -4px 0 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
[data-rf-site="oversight"] .rf-header .rf-login { opacity: 1; font: inherit; padding: 10px 18px; border: 1px solid var(--color-border); border-radius: var(--radius-button); background: var(--color-surface-raised); color: var(--color-text); cursor: not-allowed; }
[data-rf-site="oversight"] .landing-demo { margin-top: 80px; }
.oversight-footer { display: grid; grid-template-columns: minmax(0,2fr) repeat(4,minmax(0,1fr)); gap: 48px 24px; padding: 64px max(24px,calc((100% - 1200px) / 2)) 0; background: #fcfcfc; border-top: 1px solid #dedede; color: #1c2024; }
.oversight-footer .footer-brand img { display: block; max-width: 100%; height: auto; }
.oversight-footer .footer-brand p { margin: 24px 0 0; line-height: 1.7; color: #606b75; }
.oversight-footer nav { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.oversight-footer h2 { font-size: 15px; margin: 0 0 4px; }
.oversight-footer a { color: inherit; text-decoration: none; }
.oversight-footer a:hover { text-decoration: underline; }
.oversight-footer nav:last-of-type a { color: #000; }
.oversight-footer nav a[href^="mailto:"] { margin-top: 24px; font-weight: 600; }
.oversight-footer .footer-bottom { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 14px 0 16px; border-top: 0; font-size: 13px; color: #1c2024; background: #f0f0f0; box-shadow: 0 0 0 100vmax #f0f0f0; clip-path: inset(0 -100vmax); }
.oversight-footer .footer-bottom a:first-of-type { font-weight: 600; }
.oversight-footer .footer-bottom a:last-child { margin-left: auto; }
@media(max-width: 1000px) {
  .oversight-footer { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .oversight-footer .footer-brand { grid-column: 1 / -1; }
}
@media(max-width: 600px) {
  .oversight-footer { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 16px; }
  .oversight-footer .footer-bottom a:last-child { margin-left: 0; }
  [data-rf-site="oversight"] .landing-demo { margin-top: 48px; }
}
.rf-header a, .rf-header summary { color: inherit; text-decoration: none; }
.rf-brand { flex: 0 0 auto; display: flex; }
.rf-brand img { display: block; width: 170px; height: 38px; object-fit: contain; object-position: left center; }
.rf-header .rf-navigation { display: flex; align-items: center; gap: 24px; margin: 0; font: inherit; }
.rf-header .rf-navigation a:nth-child(n) { display: block; }
.rf-navigation > a, .rf-dropdown > summary { white-space: nowrap; padding: 8px 0; }
.rf-dropdown { position: relative; margin: 0; padding: 0; border: 0; }
.rf-dropdown > summary { cursor: pointer; list-style: none; font: inherit; background: none; }
.rf-dropdown > summary::-webkit-details-marker { display: none; }
.rf-dropdown > summary::after { content: '⌄'; margin-left: 8px; }
.rf-dropdown-panel { position: absolute; top: 100%; left: -18px; width: 230px; padding: 12px; max-height: 65vh; overflow-y: auto; border: 1px solid var(--rf-border); border-radius: 8px; background: var(--rf-bg); box-shadow: 0 16px 35px #0002; }
.rf-dropdown-panel a { display: block; padding: 9px 12px; border-radius: 4px; }
.rf-dropdown-panel a:hover, .rf-dropdown-panel a:focus-visible { background: var(--rf-border); }
.rf-header a:focus-visible, .rf-header summary:focus-visible, .rf-menu-toggle:focus-visible { outline: 2px solid var(--rf-accent); outline-offset: 5px; }
.rf-header a.rf-cta, .rf-product-link a.rf-cta { padding: 10px 18px; border-radius: 5px; background: var(--rf-accent, #e32955); color: white; text-decoration: none; }
.rf-login { font-size: 12px; opacity: .6; white-space: nowrap; }
.rf-menu-toggle { display: none; }
.rf-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px; padding: 38px max(24px, calc((100vw - 1200px) / 2)); background: #151515; color: #eee; border-top: 1px solid #ffffff26; }
.rf-footer a { color: inherit; text-decoration: none; }
.rf-footer nav { display: flex; flex-wrap: wrap; gap: 24px; }
.rf-footer .rf-review { font-size: 12px; color: #aaa; }
[data-rf-site="cases"] .rf-footer, [data-rf-site="oversight"] .rf-footer { background: transparent; color: #1c2024; border-color: #dedede; }
.rf-product-link { padding: 48px 24px; display: flex; justify-content: center; align-items: center; gap: 24px; flex-wrap: wrap; background: #202024; color: white; }
.rf-hub { margin: 0; background: #101113; color: #f4f4f6; font: 16px/1.6 system-ui, sans-serif; }
.rf-hub * { box-sizing: border-box; }
.rf-hub main { max-width: 1240px; margin: auto; padding: 72px 28px; }
.rf-hub h1 { font-size: clamp(40px, 6vw, 76px); line-height: 1.08; letter-spacing: -.045em; margin: 30px 0; }
.rf-eyebrow { color: #a1a7b2; font-size: 12px; letter-spacing: .15em; }
.rf-sites { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 46px 0 30px; }
.rf-site-card { display: flex; flex-direction: column; align-items: flex-start; padding: 30px; border: 1px solid #34363d; border-radius: 12px; color: inherit; text-decoration: none; background: #141518; transition: border-color .15s, background .15s; }
.rf-site-card:hover, .rf-site-card:focus-visible { border-color: #e32955; background: #22242a; }
.rf-site-card-agency { background: #303234; }
.rf-site-card-agency:hover, .rf-site-card-agency:focus-visible { background: #303234; }
.rf-site-card > span { color: #a1a7b2; font-size: 12px; }
.rf-card-logo { width: min(100%, calc(46px * 2096.1 / 329.453)); height: 46px; margin: 32px 0 16px; }
.rf-site-card img { display: block; height: auto; }
.rf-site-card p { flex: 1; color: #c3c5cc; }
.rf-site-card strong { font-size: 14px; margin-top: 16px; }
.rf-hub main > a { color: #f4f4f6; }
@media(max-width: 1024px) {
  .rf-header { padding: 18px 24px; flex-wrap: wrap; gap: 0; }
  .rf-menu-toggle { display: block; color: inherit; background: transparent; border: 1px solid var(--rf-border); border-radius: 5px; padding: 8px 14px; font: inherit; cursor: pointer; }
  .rf-header .rf-navigation { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 6px; max-height: calc(100dvh - 100px); overflow-y: auto; padding-top: 20px; }
  .rf-header .rf-navigation.rf-open { display: flex; }
  .rf-dropdown-panel { position: static; width: auto; box-shadow: none; max-height: none; }
  .rf-login { padding: 8px 0; }
  .rf-footer { flex-direction: column; align-items: flex-start; }
}
@media(max-width: 600px) { .rf-sites { grid-template-columns: 1fr; } .rf-hub main { padding: 40px 20px; } }
/* Cases keeps its original header grid, typography and scroll treatment. */
[data-rf-site="cases"] #main > section:not(.hero) { padding-block: 150px; }
@media(min-width: 701px) {
  [data-rf-site="cases"] #main > #community { padding-bottom: 100px; }
}
@media(min-width: 1800px) {
  [data-rf-site="cases"] .community-layout .intelligence-copy { align-self: start; top: 0; }
  [data-rf-site="cases"] .community-features article:nth-child(2) { top: 0; }
}
@media(max-width: 700px) {
  [data-rf-site="cases"] #main > section:not(.hero) { padding-block: 64px; }
}
html:has(body[data-rf-site="cases"]) { scroll-padding-top: var(--rf-anchor-offset, 81px); }
[data-rf-site="cases"] #main [id] { scroll-margin-top: 0; }
[data-rf-site="cases"] #our-dna::before { border-top: 0; }
[data-rf-site="cases"] .security-section::after { border-bottom: 0; }
[data-rf-site="cases"] .rf-header { display: block; padding: 0; background: none; border-bottom: 1px solid transparent; font: inherit; box-shadow: none; backdrop-filter: none; transition: none; }
[data-rf-site="cases"] .rf-header.is-scrolled { background: #fff; border-bottom-color: var(--line); box-shadow: 0 4px 16px #1c20240a; transition: background-color .45s ease, border-color .45s ease, box-shadow .45s ease; }
[data-rf-site="cases"] .header-inner { gap: clamp(24px,2vw,48px); }
@media(min-width: 1600px) {
  [data-rf-site="cases"] .header-inner.wrap { width: 100%; padding-inline: 40px; margin-inline: 0; }
}
@media(min-width: 1025px) {
  [data-rf-site="cases"] .rf-header .rf-login { margin-left: 20px; }
}
@media(prefers-reduced-motion: reduce) {
  [data-rf-site="cases"] .rf-header { transition: none; }
}
[data-rf-site="cases"] .rf-header .rf-navigation { margin-left: auto; gap: 20px; color: var(--ink); font-size: 16px; line-height: 1.5; font-weight: var(--font-weight-medium); }
[data-rf-site="cases"] .rf-header .rf-navigation > a { padding: 12px 0; }
[data-rf-site="cases"] .rf-header .rf-menu-toggle:is(:hover, :focus) { background: var(--rf-border); color: var(--ink); }
[data-rf-site="cases"] .rf-dropdown > summary { display: flex; align-items: center; gap: 8px; }
[data-rf-site="cases"] .rf-dropdown > summary::after { content: ''; width: 7px; height: 7px; margin: -4px 0 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
[data-rf-site="cases"] .rf-header .header-cta { color: #fff; background: var(--green); display: inline-flex; }
[data-rf-site="cases"] .rf-header .rf-login { opacity: 1; background: var(--soft-green); color: var(--ink); cursor: not-allowed; }
[data-rf-site="cases"] .rf-header .rf-header-actions :is(.rf-login, .header-cta) { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; height: 40px; min-height: 40px; padding: 0 16px; font-size: 15px; line-height: 20px; font-weight: 500; }
[data-rf-site="cases"] .wordmark { flex-shrink: 0; }
[data-rf-site="cases"] .site-header .wordmark { --rf-logo-scale: .9; }
[data-rf-site="cases"] :is(.site-header, .footer-brand) .wordmark img { width: calc(210px * 1451.682 / 1869.164 * var(--rf-logo-scale, 1)); }
[data-rf-site="cases"] .main-footer { grid-template-columns: minmax(0,2fr) repeat(4,minmax(0,1fr)); }
@font-face { font-family: "RF Footer Inter"; src: url('/websites/shared/assets/fonts/inter-18pt-regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: "RF Footer Inter"; src: url('/websites/shared/assets/fonts/inter-18pt-semibold.woff2') format('woff2'); font-weight: 600; font-display: swap; }
[data-rf-site="cases"] nav[aria-label="Footer support"] { gap: 0; font-family: "RF Footer Inter", sans-serif; }
[data-rf-site="cases"] nav[aria-label="Footer support"] h2 { margin: 0 0 16px; font: 600 15px/22px "RF Footer Inter", sans-serif; color: inherit; }
[data-rf-site="cases"] nav[aria-label="Footer support"] > a { font-size: 13px; line-height: 15px; }
[data-rf-site="cases"] nav[aria-label="Footer support"] > a[href^="mailto:"] { margin-top: 48px; font-weight: 600; line-height: 26px; color: inherit; }
[data-rf-site="asset"] .rf-footer-bottom, [data-rf-site="agency"] .rf-footer-bottom { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 14px calc(max(0px, (100% - 1140px) / 2) + 15px) 16px; border-top: 1px solid #333; background: #000; color: #b9b9ba; font-size: 13px; }
:is([data-rf-site="asset"], [data-rf-site="agency"]) .rf-footer-bottom a { color: inherit; text-decoration: none; }
:is([data-rf-site="asset"], [data-rf-site="agency"]) .rf-footer-bottom > a:first-of-type { font-weight: 600; }
:is([data-rf-site="asset"], [data-rf-site="agency"]) .rf-footer-bottom > a:last-child { margin-left: auto; }
@media(max-width: 1024px) {
  [data-rf-site="cases"] :is(.site-header, .footer-brand) .wordmark img { width: calc(180px * 1451.682 / 1869.164 * var(--rf-logo-scale, 1)); }
}
@media(max-width: 700px) {
  [data-rf-site="cases"] .main-footer { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is([data-rf-site="asset"], [data-rf-site="agency"]) .rf-footer-bottom > a:last-child { margin-left: 0; }
}
[data-rf-site="cases"] .rf-header a:hover { color: var(--green); }
[data-rf-site="cases"] .rf-header .header-cta:hover { color: #fff; background: #3d4e35; }
@media(max-width: 1024px) {
  [data-rf-site="cases"] .header-inner { height: auto; min-height: 72px; flex-wrap: wrap; padding-block: 12px; width: calc(100% - 32px); max-width: none; margin-inline: 16px; gap: 12px 20px; }
  [data-rf-site="cases"] .rf-menu-toggle { margin-left: auto; min-height: 44px; }
  [data-rf-site="cases"] .rf-header .rf-navigation { margin: 0; gap: 6px; }
}
/* The light headers share the pill shape and keep their own foreground palette. */
body .rf-header .rf-language { margin-left: 0; gap: 0; padding: 3px; border: 1px solid var(--rf-border); border-radius: 30px; }
body[data-rf-site="cases"] .rf-header .rf-language { --rf-fg: #516146; border-color: var(--rf-fg); }
body[data-rf-site="oversight"] .rf-header .rf-language { --rf-fg: #00749e; border-color: var(--rf-fg); font-family: inherit; }
body .rf-header .rf-language > span { display: none; }
body .rf-header .rf-navigation .rf-language a { display: inline-flex; color: var(--rf-fg); }
body .rf-header .rf-language a[aria-current] { background: var(--rf-fg); color: var(--rf-bg); text-decoration: none; }
.rf-header-actions { display: contents; }
@media(max-width: 1024px) {
  .rf-header-actions { display: flex; align-items: center; gap: 20px; margin-left: auto; margin-right: 20px; }
  [data-rf-site="cases"] .rf-header-actions { margin-right: 0; }
  body .rf-header .rf-menu-toggle { margin-left: 0; }
  body .rf-header .rf-language { align-self: flex-start; margin: 14px 0 20px; }
}
@media(max-width: 767px) {
  body .rf-header .rf-menu-toggle { margin-left: auto; }
  .rf-header-actions { margin: 14px 0 0; flex-wrap: wrap; }
}
