/* Scoped case-study styles. Montserrat is licensed under SIL OFL. */
@font-face{font-family:Montserrat;src:url('/assets/fonts/montserrat/Montserrat.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
.rb-main{font-family:Montserrat,var(--sans);padding-bottom:80px}
.rb-main h1,.rb-main h2,.rb-main h3{font-family:Montserrat,var(--sans);text-wrap:balance;color:var(--ink)}
.rb-main p{margin:0 0 20px}.rb-main a:not(.rb-image-link){text-underline-offset:4px}.rb-main a:not(.rb-image-link):hover{text-decoration:underline}
.rb-case .icon-btn{width:44px;height:44px;flex-shrink:0}.rb-case .nav a{min-height:44px;display:inline-flex;align-items:center;padding:7px 8px}
.rb-case .top .btn,.rb-case .brand{min-height:44px}.rb-case footer{color:var(--ink-2)}.rb-case footer a{display:inline-flex;align-items:center;min-height:44px}
.rb-case .mnav .wrap{display:block;height:auto}.rb-case .mnav{max-height:calc(100dvh - 64px);overflow-y:auto}
.rb-hero{padding-top:36px}.rb-hero .crumb{display:inline-flex;align-items:center;min-height:44px;color:var(--ink-2);margin-bottom:28px}
.rb-kicker{font-size:11px;line-height:1.6;font-weight:650;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-2)}
.rb-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:end}
.rb-hero h1{font-size:clamp(44px,6.4vw,80px);line-height:1.03;letter-spacing:-.055em;font-weight:800;margin:0}.rb-hero h1 span{color:var(--ink-2)}
.rb-lede{font-size:clamp(18px,1.8vw,22px);line-height:1.6;letter-spacing:-.025em;max-width:36ch;color:var(--ink-2)}
.rb-status{font-size:12px;line-height:1.8;color:var(--ink-2);margin:24px 0 0!important}
.rb-byline{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:12px;line-height:1.7;color:var(--ink-2);padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:40px 0 0!important}
.rb-section{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding-top:80px}
.rb-main h2{font-size:clamp(28px,2.9vw,36px);line-height:1.2;letter-spacing:-.04em;font-weight:750;margin:0}
.rb-intro{font-size:17px;line-height:1.8;color:var(--ink-2);max-width:65ch}.rb-section-body{min-width:0}
.rb-quotes{margin-top:28px}.rb-quote{margin:0;padding:24px 0;border-top:1px solid var(--line)}
.rb-quote blockquote{margin:0 0 12px;font-size:24px;line-height:1.4;letter-spacing:-.035em;font-weight:650;color:var(--ink)}
.rb-quote figcaption,.rb-note{font-size:13px;line-height:1.8;color:var(--ink-2)}.rb-quote figcaption a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.rb-note{border-top:1px solid var(--line);padding-top:20px;margin-bottom:0!important}
.rb-screenshot{margin:28px 0 0}.rb-image-link{display:block;border:1px solid var(--line-2);border-radius:10px;overflow:hidden}
.rb-screenshot img{display:block;width:100%;height:auto;max-width:100%;margin:0}
.rb-screenshot figcaption{font-size:12px;line-height:1.7;color:var(--ink-2);padding-top:12px}
.rb-screenshot figcaption>span{display:block}.rb-screenshot figcaption a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.rb-next{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}
.rb-next h3{font-size:19px;line-height:1.4;letter-spacing:-.025em;margin:0 0 12px;font-weight:700}.rb-next p{font-size:15px;line-height:1.8;color:var(--ink-2);margin:0}
.rb-notes{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink-2)}
.rb-notes summary{min-height:56px;cursor:pointer;padding:16px 4px;font-size:14px;line-height:1.7;font-weight:650;color:var(--ink)}
.rb-notes>div{padding:8px 4px 4px;font-size:13px;line-height:1.9}.rb-notes a{text-decoration:underline}.rb-back{display:inline-flex;align-items:center;min-height:48px;font-size:14px;font-weight:650;margin-top:28px}
@media(max-width:1120px){.rb-case .nav{display:none}.rb-case .menu-btn{display:grid}.rb-case .top .btn{display:none}.rb-section{grid-template-columns:220px minmax(0,1fr);gap:40px}.rb-hero-grid{gap:40px}}
@media(max-width:820px){.rb-hero{padding-top:20px}.rb-hero .crumb{margin-bottom:24px}.rb-hero-grid{grid-template-columns:1fr;gap:24px}.rb-hero h1{font-size:clamp(44px,9vw,70px)}.rb-lede{max-width:45ch}.rb-status{margin-top:16px!important}.rb-byline{margin-top:28px!important}.rb-section{grid-template-columns:1fr;gap:24px;padding-top:56px}.rb-main h2{max-width:20ch}.rb-section-heading .rb-kicker{margin-bottom:12px}.rb-next{gap:24px}.rb-main{padding-bottom:56px}}
@media(max-width:480px){.rb-byline{display:grid;gap:6px}.rb-intro{font-size:16px;line-height:1.75}.rb-main h2{font-size:30px}.rb-quote{padding:20px 0}.rb-quote blockquote{font-size:22px}.rb-next{grid-template-columns:1fr;gap:28px}.rb-next p{font-size:15px}.rb-screenshot{margin-top:24px}.rb-main{padding-bottom:40px}}
@media(max-width:350px){.rb-hero h1{font-size:40px}.rb-case .brand{font-size:13px;gap:6px}.rb-case .top .wrap{gap:8px}.rb-main h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.rb-case *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
