/* Open typography, a single training loop, and three sources of reward. */
.reinforcement{--rl-paper:#f0ece0;--rl-soft:#acc3bf;--rl-gold:#e8c58b;color:var(--rl-paper)}
.reinforcement .rl-eyebrow{position:absolute;top:92px;left:110px;color:var(--rl-soft);font-size:23px}
.reinforcement [data-rl-from]{opacity:0;visibility:hidden;transform:translate3d(0,18px,0);transition:opacity .55s ease,transform .8s cubic-bezier(.16,1,.3,1),visibility .55s}
.reinforcement [data-rl-from].rl-visible{opacity:1;visibility:visible;transform:none}
.reinforcement:not(.current) [data-rl-from]{visibility:hidden}
.reinforcement.rl-snap [data-rl-from]{transition:none!important}
.rl-heading{position:absolute;left:110px;top:183px;right:100px}
.rl-kicker{font-size:25px;letter-spacing:.05em;color:var(--rl-soft);margin-bottom:20px}
.reinforcement .rl-heading h2{font-size:82px;line-height:1.1;font-weight:500;letter-spacing:-.035em}
.rl-heading h2 em{color:var(--rl-gold);font-style:normal}
.rl-objective{position:absolute;left:110px;top:359px;display:flex;align-items:baseline;gap:27px}
.rl-objective>span{font-size:23px;color:var(--rl-soft);letter-spacing:.12em;text-transform:uppercase}
.rl-objective p{font-size:32px;color:var(--rl-gold)}
.rl-example{position:absolute;left:110px;top:463px;width:1110px;height:260px}
.rl-prompt{font-size:35px;line-height:1.2;color:var(--rl-paper);margin-bottom:37px}
.rl-prompt::before{content:'The prompt';font:500 20px var(--sans);text-transform:uppercase;letter-spacing:.11em;color:var(--rl-soft);margin-right:27px;display:inline-block;vertical-align:middle}
.rl-example-response{position:absolute;top:89px;left:0;right:0}
.rl-mini-label{font-size:20px;letter-spacing:.045em;color:var(--rl-soft);margin-bottom:15px}
.rl-example-response blockquote{margin:0;font:400 45px/1.26 var(--serif);letter-spacing:-.022em}
.rl-example-after blockquote{color:var(--rl-gold);font-size:43px;line-height:1.24}
.rl-evaluation{position:absolute;left:1365px;right:110px;top:553px;padding-left:29px;border-left:1px solid #e8c58b77}
.rl-score-label{font-size:22px;color:var(--rl-gold);letter-spacing:.08em;text-transform:uppercase}
.rl-evaluation p{font:400 34px/1.3 var(--serif);margin-top:17px;color:var(--rl-paper);letter-spacing:-.02em}
.rl-evaluation small{display:block;font-size:21px;line-height:1.4;color:var(--rl-soft);margin-top:18px}
.rl-training-loop{position:absolute;left:110px;right:110px;top:798px;display:grid;grid-template-columns:repeat(4,1fr);column-gap:46px}
.rl-loop-stop{position:relative;padding-top:21px;border-top:1px solid #d3ded34a}
.rl-stop-number{display:block;position:absolute;right:8px;top:25px;font:400 24px var(--serif);color:#e8c58b80}
.rl-loop-stop h3{font:500 38px/1.1 var(--serif);letter-spacing:-.025em;color:var(--rl-gold);margin:0 0 14px}
.rl-loop-stop p{font-size:25px;line-height:1.25;color:var(--rl-soft)}
.rl-loop-stop:not(:nth-child(4))::after{content:'→';position:absolute;right:-35px;top:37px;font-size:28px;color:#acc3bf90}
.rl-return{position:absolute;left:0;top:107px;width:100%;height:86px;fill:none;stroke:#e8c58b65;stroke-width:1.35}
.rl-source{position:absolute;left:110px;bottom:34px;display:flex;gap:27px;align-items:center;max-width:1450px;font-size:19px;line-height:1.3;color:var(--rl-soft)}
.rl-source a{color:var(--rl-soft);text-decoration:none;border-bottom:1px solid #acc3bf60;pointer-events:auto}
.rl-source a:hover{color:var(--rl-gold);border-color:var(--rl-gold)}
.rl-source a:focus-visible{outline:2px solid var(--rl-gold);outline-offset:5px}
.rl-source>span{font-size:18px;color:#9aafaa}
.rl-sources .rl-heading h2{font-size:76px}
.rl-reward-sources{position:absolute;left:110px;right:110px;top:377px;display:flex;flex-direction:column;gap:20px}
.rl-reward-row{display:grid;grid-template-columns:70px 470px 555px 1fr;column-gap:32px;align-items:start;min-height:147px;padding-top:26px;border-top:1px solid #c1d0c13f}
.rl-row-number{font:400 29px var(--serif);color:#e8c58ba6;line-height:1.35}
.rl-row-title h3{font:500 46px/1.15 var(--serif);letter-spacing:-.027em;margin:0;color:var(--rl-paper)}
.rl-row-title p{font-size:23px;color:var(--rl-gold);margin-top:13px}
.rl-row-description{font-size:28px;line-height:1.4;color:var(--rl-soft);padding-top:7px}
.rl-row-example{font:400 31px/1.4 var(--serif);color:var(--rl-gold);padding-left:28px;margin-top:4px;border-left:1px solid #e8c58b50;letter-spacing:-.02em}
.rl-reward-caution{position:absolute;left:212px;top:905px;font:400 35px/1.2 var(--serif);letter-spacing:-.02em;color:var(--rl-gold)}
.rl-reward-byline{position:absolute;left:212px;top:964px;font-size:23px;color:var(--rl-soft)}
.reduce-motion .reinforcement *, .reinforcement.rl-snap *{transition:none!important;animation:none!important}
@media(prefers-reduced-motion:reduce){.reinforcement *{transition:none!important;animation:none!important}}
