/* Application Pack template (Rio). Built from the approved mockup's CSS, scoped to .rio-ap.
   Source: data/core-pages/jde-pack/wp-build/scope_css.py in Rio's repo. Do not edit by hand; rebuild instead. */
#primary.rio-ap{display:block;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-align:start}
#primary.rio-ap :where(h1,h2,h3,h4,h5,h6){font-family:inherit;font-weight:700;line-height:inherit;color:inherit;margin:0;padding:0;letter-spacing:normal;text-transform:none}
#primary.rio-ap :where(p){margin:1em 0;padding:0;font-size:inherit;line-height:inherit;color:inherit}
#primary.rio-ap :where(ul,ol){margin:1em 0;padding-left:40px}
#primary.rio-ap :where(.btn){text-align:start;line-height:inherit;vertical-align:baseline}
#primary.rio-ap :where(li){margin:0;padding:0}
#primary.rio-ap :where(dl,dd,figure,blockquote){margin:0;padding:0}
#primary.rio-ap :where(th,td){border:0;font-size:inherit;line-height:inherit}
#primary.rio-ap :where(a){color:inherit;text-decoration:none}
#primary.rio-ap :where(img,svg){max-width:100%;vertical-align:middle;border:0}
#primary.rio-ap :where(img){width:auto;height:auto}
#primary.rio-ap :where(button){font-family:inherit;text-transform:none}
#primary.rio-ap :where(table){border-collapse:collapse}
#primary.rio-ap :where(section){display:block;margin:0}
#primary.rio-ap{--bg:#0B0B0D;            
    --panel:#1A1A1A;         
    --panel-2:#141416;
    --line:#393939;          
    --line-soft:rgba(255,255,255,.07);

    --red:#D93C1C;           
    --red-hot:#D93C1C;       
    --orange:#F7941D;        
    --picton:#16A1DA;        
    --yinmin:#2F5077;

    --white:#ffffff;
    --ink:#EDEDEE;           
    --fg:#ffffff;            
    --muted:#B3B4B7;         
    --antique:#FEF1DE;

    --s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:32px;--s6:48px;--s7:64px;--s8:96px;
    --maxw:1200px;
    --nav-h:72px;
    --r:14px;
    --ease:cubic-bezier(.22,.61,.36,1);
    --font:"Open Sans","Segoe UI",system-ui,-apple-system,sans-serif;}
#primary.rio-ap *{box-sizing:border-box}
#primary.rio-ap{scroll-behavior:smooth}
#primary.rio-ap{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
#primary.rio-ap a{color:inherit;text-decoration:none}
#primary.rio-ap img{max-width:100%;display:block}
#primary.rio-ap :focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:6px}
#primary.rio-ap .wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-inline:var(--s4)}
#primary.rio-ap .eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin:0 0 var(--s4)}
#primary.rio-ap .h2{margin:0 0 var(--s4);font-weight:600;letter-spacing:-.02em;line-height:1.08;color:var(--fg);font-size:clamp(28px,3.6vw,44px)}
#primary.rio-ap .btn{font-family:inherit;font-weight:600;font-size:15px;border:none;cursor:pointer;white-space:nowrap;border-radius:9px;padding:12px 22px;transition:transform .15s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease)}
#primary.rio-ap .btn-primary{color:#180a04;background:linear-gradient(180deg,var(--orange),#e07d0a);box-shadow:0 8px 26px -10px rgba(247,148,29,.75)}
#primary.rio-ap .btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 32px -10px rgba(247,148,29,.9)}
#primary.rio-ap .btn-ghost{color:var(--fg);background-color:transparent;border:1px solid rgba(255,255,255,.8);transition:background-color .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease)}
#primary.rio-ap .btn-ghost:hover, #primary.rio-ap .btn-ghost:focus-visible{background-color:var(--fg);color:#000;border-color:var(--fg)}
@keyframes breathe{0%,100%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes twinkle{0%,100%{opacity:.12}50%{opacity:.6}}
@keyframes drift{0%{transform:translate(0,0);opacity:.35}50%{transform:translate(10px,-14px);opacity:.9}100%{transform:translate(0,0);opacity:.35}}
@keyframes logoscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
#primary.rio-ap .eyebrow-red{color:var(--red-hot)}
@media (prefers-reduced-motion:reduce){
  #primary.rio-ap *{animation:none !important}
}
@keyframes qlaFoundSettle{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.33,0,.2,1)}
    22%{transform:translateY(-16px);animation-timing-function:ease-in-out}
    40%{transform:translateY(-16px);animation-timing-function:cubic-bezier(.6,.04,.98,.34)}
    58%{transform:translateY(0);animation-timing-function:cubic-bezier(.16,.85,.4,1)}
    66%{transform:translateY(-4px);animation-timing-function:ease-in-out}
    74%{transform:translateY(0)}
    100%{transform:translateY(0)}}
@keyframes qlaRiskDrop{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.4,0,.3,1)}22%{transform:translateY(10px);animation-timing-function:cubic-bezier(.4,0,.6,1)}46%{transform:translateY(0)}100%{transform:translateY(0)}}
@keyframes qlaSpeedDart{0%{transform:translateX(0);animation-timing-function:cubic-bezier(.3,0,.3,1)}18%{transform:translateX(13px);animation-timing-function:cubic-bezier(.3,0,.5,1)}44%{transform:translateX(0)}100%{transform:translateX(0)}}
@keyframes qlaSpeedStreak{0%{transform:translateX(0);opacity:.9}18%{transform:translateX(14px);opacity:.35}44%{transform:translateX(0);opacity:.9}100%{transform:translateX(0);opacity:.9}}
@keyframes qlaRocketLift{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.3,0,.3,1)}32%{transform:translateY(-13px);animation-timing-function:cubic-bezier(.5,0,.9,.4)}56%{transform:translateY(0);animation-timing-function:cubic-bezier(.2,.8,.4,1)}64%{transform:translateY(-3px)}72%{transform:translateY(0)}100%{transform:translateY(0)}}
@keyframes qlaRayFlare{0%{transform:scale(1);opacity:.9}32%{transform:scale(1.2);opacity:1}60%{transform:scale(1);opacity:.9}100%{transform:scale(1);opacity:.9}}
@keyframes barP1{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.86)}}
@keyframes barP2{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.12)}}
@keyframes barP3{0%,100%{transform:scaleY(.93)}50%{transform:scaleY(1.08)}}
@keyframes barP4{0%,100%{transform:scaleY(1.04)}50%{transform:scaleY(.88)}}
#primary.rio-ap a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
@keyframes hnblink{0%,50%{opacity:1}50.01%,100%{opacity:0}}
#primary.rio-ap{padding:0}
#primary.rio-ap .ch-hero{position:relative;background-color:#0B0B0D;padding:clamp(72px,8.5vw,124px) 0 clamp(118px,10.5vw,156px);overflow:hidden}
#primary.rio-ap .ch-hero .art{position:absolute;inset:0;background-repeat:no-repeat;background-size:cover;background-position:right center;display:none}
#primary.rio-ap .ch-hero .wrap{position:relative;z-index:1}
#primary.rio-ap .ch-hero .copy{max-width:640px}
#primary.rio-ap .ch-eb{display:inline-block;color:#F7941D;font-weight:600;font-size:16px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}
@media (max-width:640px){
  #primary.rio-ap .ch-eb{font-size:13px}
}
#primary.rio-ap .ch-h1{font-weight:600;font-size:clamp(36px,4.2vw,58px);line-height:1.04;letter-spacing:-.02em;color:#fff;margin:0;text-wrap:balance}
#primary.rio-ap .acc{background:linear-gradient(92deg,#D93C1C,#F7941D);-webkit-background-clip:text;background-clip:text;color:transparent}
#primary.rio-ap .ch-sub{color:#B9BABD;font-size:17px;line-height:1.6;max-width:600px;margin:22px 0 0}
#primary.rio-ap .ch-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
#primary.rio-ap .seam{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:90px;display:block;z-index:1}
@media (min-width:1101px) and (max-height:940px){
  #primary.rio-ap .ch-hero{padding-top:clamp(36px,7vh,96px);padding-bottom:clamp(100px,15vh,150px)}
  #primary.rio-ap .ch-h1{font-size:clamp(34px,min(4.2vw,6.6vh),58px)}
  #primary.rio-ap .ch-eb{margin-bottom:12px}
  #primary.rio-ap .ch-sub{font-size:16px;line-height:1.55;margin-top:16px}
  #primary.rio-ap .ch-btns{margin-top:24px}
}
#primary.rio-ap .cp{padding:clamp(56px,7vw,96px) 0}
#primary.rio-ap .cp .head{max-width:820px;margin:0 auto clamp(28px,4vw,48px);text-align:center}
#primary.rio-ap .cp .head p{font-size:17px;line-height:1.6;margin:14px auto 0}
@media (max-width:700px){
  #primary.rio-ap section a:not([class]):not(p *):not(li *):not(blockquote *):not(td *){display:inline-flex;align-items:center;min-height:44px}
  #primary.rio-ap [role=group] button, #primary.rio-ap #libTabs button{min-height:44px}
  #primary.rio-ap details summary{padding-top:10px!important;padding-bottom:10px!important;min-height:44px;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:14px}
  #primary.rio-ap details summary::after{float:none!important;flex:none}
  #primary.rio-ap .faq details, #primary.rio-ap details{padding-top:6px!important;padding-bottom:6px!important}
}
#primary.rio-ap .ch-hero .wrap{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:clamp(56px,6vw,96px);align-items:center;max-width:1460px}
#primary.rio-ap .ch-hero .copy{max-width:500px}
@media (min-width:1101px){
  #primary.rio-ap .ch-hero .wrap{max-width:none;padding-left:max(24px,calc((100vw - 1192px) / 2));padding-right:max(24px,calc((100vw - 1460px) / 2))}
  #primary.rio-ap .pack-art svg{max-height:calc(100vh - 250px)}
}
#primary.rio-ap .pack-art{position:relative;isolation:isolate;min-width:0;--glow:233,33,38;margin-right:clamp(-96px,-5.5vw,0px)}
#primary.rio-ap .pack-art::before{content:"";position:absolute;inset:-22% -16%;z-index:-1;background:radial-gradient(60% 65% at 50% 47%,rgba(var(--glow),.45),rgba(var(--glow),.18) 48%,rgba(var(--glow),0) 72%);filter:blur(46px);pointer-events:none}
#primary.rio-ap .pack-art svg{width:100%;height:auto;display:block}
@media (max-width:1100px){
  #primary.rio-ap .ch-hero .wrap{grid-template-columns:1fr}
  #primary.rio-ap .pack-art{margin-top:8px;margin-right:0}
}
#primary.rio-ap .jd4{background:#1B1B1F}
#primary.rio-ap .jl1{background:#FFFFFF;color:#141416}
#primary.rio-ap .jl2{background:#F7F7F8;color:#141416}
#primary.rio-ap .jd4{color:#C9CACE}
#primary.rio-ap .jd4 .h2{color:#fff}
#primary.rio-ap .jl1 .h2, #primary.rio-ap .jl2 .h2{color:#141416}
#primary.rio-ap section.jl1+section.jl1, #primary.rio-ap section.jl2+section.jl2{padding-top:0!important}
#primary.rio-ap .jl1 .head p, #primary.rio-ap .jl2 .head p{color:#4a4b50}
#primary.rio-ap .lede{max-width:880px;margin:0 auto;text-align:center}
#primary.rio-ap .lede p{font-size:17px;line-height:1.7}
#primary.rio-ap .ch-btns .btn{padding-left:18px;padding-right:18px}
#primary.rio-ap .wave{display:block;width:100%;height:90px;background:#1B1B1F}
#primary.rio-ap .jd4+.wave{background:#1B1B1F}
#primary.rio-ap .faq{max-width:860px;margin:0 auto}
#primary.rio-ap .faq details{border-bottom:1px solid #E6E6E6;padding:16px 0}
#primary.rio-ap .faq summary{cursor:pointer;font-weight:600;font-size:17px;color:#141416;list-style:none}
#primary.rio-ap .faq summary::-webkit-details-marker{display:none}
#primary.rio-ap .faq summary::after{content:"+";float:right;color:#D93C1C;font-weight:700}
#primary.rio-ap .faq details[open] summary::after{content:"\2212"}
#primary.rio-ap .faq p{margin:10px 0 0;font-size:15.5px;line-height:1.65;color:#4a4b50}
#primary.rio-ap .jdcta{position:relative;overflow:hidden;max-width:1080px;margin:0 auto;border-radius:22px;padding:56px 48px 60px;display:grid;grid-template-columns:1.14fr 1fr;gap:36px;align-items:center;background:linear-gradient(135deg,#FFF3E4,#FFE9D8);border:1px solid #F6D2AE}
#primary.rio-ap .jdcta .ctx{position:relative;z-index:2}
#primary.rio-ap .jdcta .h2{color:#141416}
#primary.rio-ap .jdcta p{font-size:17px;line-height:1.6;color:#3a3b40;margin:14px 0 26px;max-width:460px}
#primary.rio-ap .jdcta .btns{display:flex;gap:14px;flex-wrap:wrap}
#primary.rio-ap .cvis{position:relative;z-index:1;min-height:270px}
#primary.rio-ap .cring{position:absolute;width:400px;height:400px;right:-70px;top:50%;margin-top:-210px;opacity:.9}
#primary.rio-ap .cshot{position:relative;margin:14px 0 0 10px;background:#fff;border-radius:12px;padding:7px;box-shadow:0 24px 50px rgba(120,50,10,.18),0 0 0 1px rgba(230,69,37,.12)}
#primary.rio-ap .cshot img{display:block;width:100%;border-radius:7px}
#primary.rio-ap .cchips{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:-22px 0 0 10px}
#primary.rio-ap .cchips span{background:#141416;color:#fff;font-size:12.5px;font-weight:600;padding:7px 12px 7px 24px;border-radius:999px;position:relative;box-shadow:0 8px 18px rgba(0,0,0,.18)}
#primary.rio-ap .cchips span::before{content:"";position:absolute;left:11px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:#F7941D}
#primary.rio-ap .cbar{position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,#E64525,#F7941D);z-index:3}
@media (max-width:900px){
  #primary.rio-ap .jdcta{grid-template-columns:1fr;padding:40px 26px 56px}
  #primary.rio-ap .cvis{min-height:0}
  #primary.rio-ap .cring{width:300px;height:300px;right:-90px;margin-top:-150px}
  #primary.rio-ap .cchips{margin-left:0}
}
#primary.rio-ap .btn-ghost-dark{border:1.5px solid #141416;color:#141416;border-radius:10px;padding:12px 22px;font-weight:600;display:inline-block}
@media (max-width:640px){
  #primary.rio-ap .jdcta{padding:32px 22px 56px}
}
@keyframes astro-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
@keyframes seg-glint{0%{background-position:100% 0}33%,100%{background-position:0 0}}
@keyframes step-x{0%{left:6%;opacity:0}10%{opacity:1}90%{opacity:1}100%{left:94%;opacity:0}}
#primary.rio-ap .t4.gb{display:inline-flex;background:#141416;border-radius:50%;padding:6px}
@keyframes node-glow{0%,100%{box-shadow:inset 0 0 0 1.5px rgba(247,148,29,.7),0 0 30px rgba(230,69,37,.25)}50%{box-shadow:inset 0 0 0 1.5px rgba(247,148,29,.95),0 0 64px rgba(230,69,37,.5)}}
@keyframes pz-l{0%{left:calc(50% - 118px);opacity:0}20%{opacity:1}80%{opacity:1}100%{left:calc(50% - 58px);opacity:0}}
@keyframes pz-r{0%{right:calc(50% - 118px);opacity:0}20%{opacity:1}80%{opacity:1}100%{right:calc(50% - 58px);opacity:0}}
@keyframes arw-x{0%{left:-6px;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:calc(100% - 6px);opacity:0}}
@keyframes cpm-dot{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@keyframes cpm-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes cpm-bar{from{width:0}to{width:var(--w)}}
@keyframes cpm-caret{50%{opacity:0}}
#primary.rio-ap .art-a{background-image:url(img/hub-honeycomb-resources.svg);background-size:auto 100%;background-position:right center}
@media (max-width:1180px){
  #primary.rio-ap.rio-ap .ch-hero{padding-bottom:calc(52vw + 60px)}
  #primary.rio-ap .ch-hero .art-a{top:auto;height:56vw;bottom:30px;background-image:linear-gradient(180deg,#0B0B0D 0%,rgba(11,11,13,0) 28%),url(img/hub-honeycomb-resources.svg);background-size:100% 100%,135% auto;background-position:0 0,100% 50%}
}
@media (max-width:640px){
  #primary.rio-ap .ch-hero .art-a{background-size:100% 100%,180% auto;background-position:0 0,96% 50%}
}
@media (min-width:1181px) and (max-width:1699px){
  #primary.rio-ap.rio-ap .ch-hero .wrap{padding-left:max(24px,calc((100vw - 1130px) / 2));padding-right:max(24px,calc((100vw - 1130px) / 2));
      grid-template-columns:minmax(0,min(660px,48vw)) minmax(0,1fr)}
  #primary.rio-ap.rio-ap .ch-hero .copy{max-width:min(600px,42vw)}
  #primary.rio-ap.rio-ap .ch-hero .ch-h1{font-size:clamp(40px,min(4.3vw,7.4vh),78px)}
  #primary.rio-ap.rio-ap .ch-hero .ch-sub{font-size:clamp(16px,1.05vw,20px);max-width:min(560px,40vw)}
  #primary.rio-ap .ch-hero .art-a{background-image:url(img/hub-honeycomb-resources-crop.svg);background-size:contain;background-position:center center;
      top:clamp(4px,1vh,20px);bottom:clamp(86px,7.6vw,128px);width:auto;
      left:calc(max(24px,(100vw - 1130px) / 2) + min(650px,45vw));right:auto;width:min(54vw,1150px);background-position:left center}
  #primary.rio-ap.rio-ap .ch-hero{min-height:min(calc(100vh - 72px),42vw);display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
}
@media (max-width:1180px){
  #primary.rio-ap.rio-ap .ch-hero .art-a{background-image:linear-gradient(180deg,#0B0B0D 0%,rgba(11,11,13,0) 22%),url(img/hub-honeycomb-resources-crop.svg);
    background-size:100% 100%,contain;background-position:0 0,center center;background-repeat:no-repeat}
}
@media (min-width:1101px){
  #primary.rio-ap .ch-hero .wrap{padding-right:max(24px,calc((100vw - 1192px) / 2))}
}
#primary.rio-ap .pack-art.rs-art{position:relative;max-width:520px;width:100%;height:min(400px,calc(100vh - 250px));min-height:330px;margin:0 0 0 auto!important;--glow:247,148,29}
#primary.rio-ap .rs-cv{position:absolute;top:0;width:56%;aspect-ratio:16/9;border-radius:14px;background:#0B0B0D center/cover no-repeat;border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 50px rgba(0,0,0,.5)}
#primary.rio-ap .rs-cv.a{left:0;transform:rotate(-5deg)}
#primary.rio-ap .rs-cv.b{right:0;top:18px;transform:rotate(5deg)}
#primary.rio-ap .rs-front{position:absolute;left:50%;bottom:0;width:72%;transform:translateX(-50%);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 2px #F7941D}
#primary.rio-ap .rs-front .im{aspect-ratio:16/8;background:#0B0B0D center/cover no-repeat}
#primary.rio-ap .rs-front .bd{padding:14px 18px 16px}
#primary.rio-ap .rs-front small{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#D93C1C}
#primary.rio-ap .rs-front b{display:block;color:#141416;font-size:16px;line-height:1.3;margin:4px 0 10px}
#primary.rio-ap .rs-front .go{display:inline-block;font-size:13px;font-weight:700;color:#180A04;background:linear-gradient(180deg,#F7941D,#E07D0A);border-radius:9px;padding:7px 14px}
#primary.rio-ap #tools{padding-top:clamp(28px,4.2vw,60px)}
#primary.rio-ap .rs-tools{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;margin-top:56px}
#primary.rio-ap .rs-tools .t4{display:inline-flex;margin-bottom:12px}
#primary.rio-ap .rs-tools small{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#F7941D}
#primary.rio-ap .rs-tools h3{color:#fff;font-size:18px;margin:6px 0 8px}
#primary.rio-ap .rs-tools p{font-size:14.5px;line-height:1.55;margin:0 0 6px;color:#C9CACE}
#primary.rio-ap .rs-tools a{color:#F7941D;font-weight:600;font-size:15px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}
#primary.rio-ap .rs-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:clamp(36px,4vw,52px) 0 26px}
#primary.rio-ap .rs-tabs button, #primary.rio-ap #libTabs button{font:inherit;font-size:14px;font-weight:600;border:1px solid #D6D6DA;background:#fff;color:#141416;border-radius:999px;padding:0 16px;min-height:44px;cursor:pointer}
#primary.rio-ap .rs-tabs button[aria-pressed="true"], #primary.rio-ap #libTabs button[aria-pressed="true"]{background:#141416;color:#fff;border-color:#141416}
#primary.rio-ap .rs-pane{display:none}
#primary.rio-ap .rs-pane.on{display:block}
#primary.rio-ap .rs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#primary.rio-ap .rs-c{display:flex;flex-direction:column;background:#fff;border:1px solid #E6E6E6;border-radius:16px;overflow:hidden;color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s}
#primary.rio-ap .rs-c:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(20,20,22,.10)}
#primary.rio-ap .rs-c .im{aspect-ratio:16/9;background:#141416 center/cover no-repeat}
#primary.rio-ap .rs-c .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
#primary.rio-ap .rs-c small{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#D93C1C}
#primary.rio-ap .rs-c h3{margin:0;font-size:16.5px;line-height:1.35;color:#141416}
#primary.rio-ap .rs-c .go{color:#D93C1C;font-weight:600;font-size:14.5px;margin-top:auto}
#primary.rio-ap #libTabs{display:flex;flex-wrap:wrap;gap:8px;margin:clamp(32px,3.6vw,44px) 0 20px}
#primary.rio-ap .rs-lib{list-style:none;padding:0;margin:0;border-top:1px solid #E6E6E6}
#primary.rio-ap .rs-lib li{display:grid;grid-template-columns:160px minmax(0,1fr) 70px;gap:16px;align-items:center;min-height:48px;padding:6px 4px;border-bottom:1px solid #E6E6E6}
#primary.rio-ap .rs-lib li[hidden]{display:none}
#primary.rio-ap .rs-lib .t{font-size:12.5px;font-weight:700;color:#6b6c72;text-transform:uppercase;letter-spacing:.06em}
#primary.rio-ap .rs-lib a{color:#141416;font-size:15.5px;font-weight:600;text-decoration:none}
#primary.rio-ap .rs-lib a:hover{color:#D93C1C}
#primary.rio-ap .rs-lib .d{font-size:13.5px;color:#6b6c72;text-align:right}
#primary.rio-ap #libMore{display:block;margin:22px auto 0;font:inherit;font-weight:600;border:1px solid #C9C9C9;background:#fff;border-radius:9px;padding:0 22px;min-height:44px;cursor:pointer}
@media (max-width:1100px){
  #primary.rio-ap .rs-tools{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1000px){
  #primary.rio-ap .rs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #primary.rio-ap .pack-art.rs-art{margin:0 auto!important}
}
@media (max-width:640px){
  #primary.rio-ap .rs-grid, #primary.rio-ap .rs-tools{grid-template-columns:minmax(0,1fr)}
  #primary.rio-ap .rs-lib li{grid-template-columns:minmax(0,1fr);gap:2px;padding:10px 4px}
  #primary.rio-ap .rs-lib .d{text-align:left}
}
#primary.rio-ap.rio-ap .art-a{display:block}
#primary.rio-ap.rio-ap .pack-art.rs-art{display:none}
#primary.rio-ap.rio-ap .ch-hero .copy{max-width:600px}
#primary.rio-ap.rio-ap .ch-hero .ch-sub{max-width:560px}

#primary.rio-ap .ch-hero .wrap > *{min-width:0}
#primary.rio-ap :where(.icx, .t4) svg{max-width:none}
#primary.rio-ap :where(.cm-ctr, .su-ctr) .btn{text-align:center}
#primary.rio-ap .cvis svg{max-width:none}
#primary.rio-ap .cm-lv .t4 svg{vertical-align:baseline}
#primary.rio-ap .im > img.im-pic{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
#primary.rio-ap .rs-c .im{position:relative;overflow:hidden}
@media (min-width:1700px){#primary.rio-ap.rio-ap .ch-hero .art-a{background-image:url(img/hub-honeycomb-resources-crop.svg);background-size:contain;background-repeat:no-repeat;background-position:left center;top:2vh;bottom:clamp(110px,12vh,190px);left:calc(50% + 94px);right:auto;width:min(calc(50% - 118px),900px)}}
@media (min-width:2200px){#primary.rio-ap.rio-ap .ch-hero .art-a{left:calc(50% + 184px);width:min(calc(50% - 208px),1100px)}}

/* Site fit: hero aligned to the site nav's container (see scope_css.py) */
@media (min-width:1101px){
  #primary.rio-ap.rio-ap .ch-hero .wrap{max-width:var(--maxw);margin-left:auto;margin-right:auto;padding-left:var(--s4);padding-right:var(--s4)}
  #primary.rio-ap.rio-ap .pack-art{margin-right:0}
}
/* Monitors (David 2026-10-27): the hero fills the first screen under the 72px site header, less 32px so the whole wave
   shows while "What's inside" stays below the fold, and is drawn 5% larger (10% read as overdone). Only the
   hero zooms; the copy stays aligned to the nav's left edge and the art runs wider to the right. Inside a zoomed box,
   px values are multiplied by the zoom and % values are not: left = 50% - 576/Z, right = 50% + 576/Z - 1152. */
@media (min-width:1600px){
  #primary.rio-ap.rio-ap .ch-hero{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 72px - 32px)}
  /* (David 2026-10-28) Hero padding follows the screen height, not its width: the width-based 124px/156px made 5-line
     headlines (Vista, Spectrum, OneStream, Salesforce) overflow screens taller than 940px and hid the wave. Bottom
     padding keeps the copy clear of the rising wave. Buttons stay on one row (they run a few px into the gap). */
  #primary.rio-ap.rio-ap .ch-hero{padding-top:clamp(28px,6vh,96px);padding-bottom:clamp(104px,13vh,156px)}
  #primary.rio-ap.rio-ap .ch-btns{flex-wrap:nowrap}
  #primary.rio-ap.rio-ap .ch-hero .wrap{zoom:1.05;max-width:none;width:auto;margin:0;padding-left:calc(50% - 548.57px);padding-right:calc(50% - 603.43px)}
}
@media (min-width:2200px){
  #primary.rio-ap.rio-ap .ch-hero .wrap{zoom:1.2;padding-left:calc(50% - 480px);padding-right:calc(50% - 672px)}
}

/* ===== Sprint A: anti-vibe-coded style pass (Rio, 2026-11-08; David: "Yes, start it"). Style only, no content changes.
   Appended to every Rio page stylesheet by scope_css.py. Rules: Shared\anti-vibe-coded-reference.md. Grey for labels:
   #6A6B70 on light sections, #9A9BA0 on dark (both pass WCAG AA). Orange stays on eyebrows, buttons and the selected state. */

/* ---- A1. Pack module explorer (all six packs): the cleanup David approved on the Foundation Pack explorer ---- */
#primary.rio-ap.rio-ap .mx-nav{border:0;border-radius:0;background:none;padding:0;border-top:1px solid #E6E6E9}
#primary.rio-ap.rio-ap .mx-nav small{padding:16px 14px 6px}
#primary.rio-ap.rio-ap .mx-nav button{border-radius:0;border-bottom:1px solid #F0F0F2;padding:10px 12px 10px 14px;color:#3A3B40}
#primary.rio-ap.rio-ap .mx-nav button:hover{background:#F7F7F8;color:#141416}
#primary.rio-ap.rio-ap .mx-nav button.on{background:#F4F4F6;color:#141416;box-shadow:inset 2px 0 0 #F7941D}
#primary.rio-ap.rio-ap .mx-nav button.on span{color:#6A6B70}
#primary.rio-ap.rio-ap .mx-tabs{gap:4px;border-bottom:1px solid #E6E6E9}
#primary.rio-ap.rio-ap .mx-tabs button{border:0;border-radius:0;background:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 14px;color:#6A6B70}
#primary.rio-ap.rio-ap .mx-tabs button:hover{color:#141416}
#primary.rio-ap.rio-ap .mx-tabs button.on{background:none;color:#141416;border-bottom-color:#F7941D}
#primary.rio-ap.rio-ap .mx-text h5{color:#6A6B70}
#primary.rio-ap.rio-ap .mx-at .rels{gap:2px 16px}
#primary.rio-ap.rio-ap .mx-rel{background:none;border-radius:0;padding:4px 0;min-height:32px;color:#141416;text-decoration:underline;text-decoration-color:#C9CACE;text-underline-offset:3px}
#primary.rio-ap.rio-ap .mx-rel:hover{background:none;text-decoration-color:#141416}

/* ---- A2. Hub filters and tabs: underline tabs instead of pills ---- */
#primary.rio-ap.rio-ap :is(.rs-tabs, #libTabs, #hubTabs, .lc-filt){gap:4px;border-bottom:1px solid #E6E6E9}
#primary.rio-ap.rio-ap :is(.rs-tabs, #libTabs, #hubTabs, .lc-filt) button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 14px;color:#6A6B70}
#primary.rio-ap.rio-ap :is(.rs-tabs, #libTabs, #hubTabs, .lc-filt) button:hover{color:#141416}
#primary.rio-ap.rio-ap :is(.rs-tabs, #libTabs, #hubTabs, .lc-filt) button[aria-pressed="true"]{background:none;color:#141416;border-bottom-color:#F7941D}
#primary.rio-ap.rio-ap #evTabs{gap:4px;border-bottom:1px solid rgba(255,255,255,.14)}
#primary.rio-ap.rio-ap #evTabs button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 14px;color:#9A9BA0}
#primary.rio-ap.rio-ap #evTabs button:hover{color:#fff}
#primary.rio-ap.rio-ap #evTabs button[aria-pressed="true"]{background:none;color:#fff;border-bottom-color:#F7941D}
#primary.rio-ap.rio-ap .hq-tabs{gap:4px;border-bottom:1px solid rgba(255,255,255,.14)}
#primary.rio-ap.rio-ap .hq-tabs button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 16px;color:#9A9BA0;box-shadow:none}
#primary.rio-ap.rio-ap .hq-tabs button:is(.on, [aria-selected="true"], [aria-pressed="true"]){background:none;color:#fff;border-bottom-color:#F7941D;box-shadow:none}
#primary.rio-ap.rio-ap .lg-jump a{background:none;border:0;border-radius:0;padding:4px 0;color:#141416;text-decoration:underline;text-decoration-color:#C9CACE;text-underline-offset:3px}
#primary.rio-ap.rio-ap .lg-jump a:hover{background:none;text-decoration-color:#141416}
#primary.rio-ap.rio-ap .lc-chips{gap:6px 16px}
#primary.rio-ap.rio-ap .lc-chips a{background:none;border:0;border-radius:0;padding:2px 0;color:#E4E4E7;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px}
#primary.rio-ap.rio-ap .lc-chips a:hover{background:none;color:#fff;text-decoration-color:#fff}

/* ---- A3. Labels grey, not orange (light sections) ---- */
#primary.rio-ap.rio-ap :is(.rs-c .bd > small, .wb-c .bd > small, .wb-feat .bd > small, .rs.rsp .rb > small, .tl4 .st4 > small, .hq-steps .s3 > small, .lc-th .n){color:#6A6B70}
/* (dark sections) */
#primary.rio-ap.rio-ap :is(.rs-tools > div > small, .hq-pc > small, .hq-ai3 > div > small, .ev-bd > small, .nw-k, .nw-arch a > i, .cm-lv .k, .ct-info b, .aa-dims .n, .dm-dims .n, .ct p.meta b){color:#9A9BA0}
#primary.rio-ap.rio-ap .ev-dt b{color:#C9CACE}
#primary.rio-ap.rio-ap .rgrp .rh h3{color:#fff}

/* ---- A4. No pill labels over the closing CTA screenshot ---- */
#primary.rio-ap.rio-ap .cchips{display:none}

/* ---- A5. No glow halos ---- */
#primary.rio-ap.rio-ap :is(.rd-form, .ct-form) .fcard{box-shadow:0 24px 60px rgba(0,0,0,.45)}
#primary.rio-ap.rio-ap .nw-feat{border-color:rgba(255,255,255,.12);box-shadow:none}

/* ---- A6. Customer logos without a box around each ---- */
#primary.rio-ap.rio-ap :is(.rd-logos, .ct-logos) .lt{border:0;border-radius:0;background:none;padding:12px 8px}

/* Wave seam (David 2026-11-09, About and Foundation Pack: "random line" under the wave). The wave's CSS background is the
   section above; on scaled displays its bottom pixel row blended that dark color into the next section as a grey line. The
   wave's top shape (the next section's color) now runs past the bottom edge, and the SVG draws outside its box. */
#primary.rio-ap .wave,.ch-hero .seam{overflow:visible}

/* Photo captions (David 2026-11-09, About: "weird black marks on our About page photos"). The site's Customizer Additional CSS
   hides every caption with `figure figcaption{height:0;overflow:hidden}` (meant for blog images), which left only each caption's
   dark padding as a thin bar. Rio's pages show their captions at full height; the site-wide rule is untouched. */
#primary.rio-ap figure figcaption{height:auto}
/* Pack "How it fits": the white Application Pack box stands off the grey ground a little more (David 2026-11-09) */
#primary.rio-ap .stackj .lay.top{box-shadow:0 24px 56px rgba(20,20,22,.18),0 6px 16px rgba(20,20,22,.08),0 0 0 1px rgba(20,20,22,.05)}
/* The mockups call a content section "cp"; the theme also has a ".cp{cursor:pointer}" helper, so every section showed the
   link hand with nothing to click (David 2026-11-10). Sections get the normal cursor; links, buttons and tabs keep their own. */
#primary.rio-ap .cp{cursor:auto}
/* Live-count card rows in centered sections (David 2026-11-10, Careers open roles): one or two cards keep the three-column card
   width and sit centered under the heading; three or more fill the row as before. Same rule as the Webinars upcoming row. Add any
   new live-count grid to this list. */
@media (min-width:1001px){#primary.rio-ap :is(.cr-roles):not(.cr-one):not(:has(> :nth-child(3))){grid-template-columns:repeat(auto-fit,calc((100% - 36px) / 3));justify-content:center}}
/* NO BROWN (David 2026-11-11: "Keep it warm: red and orange accents over the darker black, not brown"). A warm tint under about
   35% opacity spread over a dark area reads as brown. Red and orange stay as lines, borders, text, the hero glow and small glow
   points; large dark areas stay neutral black or charcoal. Rule written into Shared/design-system.md. */
#primary.rio-ap.rio-ap :is(.apo-core,.fcore,.db-core){background:#1A1A1D}
#primary.rio-ap.rio-ap .pya .c4.hl{background:#17171A}
#primary.rio-ap.rio-ap .ta-band.b3{background:#1B1B1F}
.page-template-page-customers-rio #primary.rio-ap.rio-ap .art-a{background:none}   /* Rio 2026-11-12: Customers only (its faint orange wash); site-wide it erased the hero art on Foundation Pack, Blog, Events, News, Resources, Webinars and About */
#primary.rio-ap.rio-ap .tenant{background:transparent}
#primary.rio-ap.rio-ap .cta::before{background:none}
#primary.rio-ap.rio-ap #qla-tool .hero{background:#141414}
#primary.rio-ap.rio-ap #qla-tool .hero::before{background:none}
#primary.rio-ap.rio-ap .gap .q{background:linear-gradient(#1A1A1D,#1A1A1D) padding-box,linear-gradient(90deg,#E64525,#F7941D) border-box}
#primary.rio-ap.rio-ap .ph{background:repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 10px,transparent 10px 20px),#17171A}
/* selected states and chips: a neutral lift instead of an orange tint (the orange border or text marks the state) */
#primary.rio-ap.rio-ap :is(.ai-tabs button.on,.ltabs button.on,.clist button.on,.hq-tabs button[aria-pressed="true"],.ar-tabs button[aria-pressed="true"],.lplat span.on,.ta-ms span.on,.apw-hot,.ar-sc .nx span,.pya .cp2.mv,.mchips span,.db-core .mc span,.ds-bvb td.q,.lyr:hover,#qla-tool .dim-nav-item.active,#qla-tool .foundation-gate-warning){background:rgba(255,255,255,.06)}
#primary.rio-ap.rio-ap .apw-rail .apw-s[aria-selected="true"] b{background:rgba(255,255,255,.08)!important}
#primary.rio-ap.rio-ap .ar-val em{background:rgba(255,255,255,.06)}
/* Pack hero art 15% larger (Carter's flag, David 2026-11-13: "lean on the smaller 15% increase for now"). The art grows into
   the right margin so the copy column keeps its width; only on wide screens, smaller screens unchanged. */
@media (min-width:1100px){.page-template-page-application-pack #primary.rio-ap .ch-hero .pack-art{width:115%;max-width:none}}

/* Rio: closing CTA scenes (2026-11-09). Built by cta_scene.py; edit there. 1em = 1/48 of the scene width (1/36 on a phone). */
#primary.rio-ap .cvis:has(.qs){min-height:0}
#primary.rio-ap .qs{position:relative;container-type:inline-size;width:calc(100% + 34px);margin:6px -34px 82px 0;font-family:inherit;color:#1A1A1A;line-height:1.3;text-align:left}
#primary.rio-ap .qs *{box-sizing:border-box}
#primary.rio-ap .qs-win{display:grid;grid-template-columns:10em 1fr;font-size:calc(100cqw / 48);background:#fff;border-radius:1.2em;overflow:hidden;box-shadow:0 2.6em 5em rgba(120,50,10,.20),0 0 0 1px rgba(26,26,26,.07);transform:perspective(160em) rotateY(-5deg) rotateX(2deg);transform-origin:60% 50%}
#primary.rio-ap .qs-rail{display:flex;flex-direction:column;gap:.9em;padding:1.6em 1.2em 1.3em;background:#FAFAF8;border-right:1px solid rgba(26,26,26,.08)}
#primary.rio-ap .qs-mark{width:3.6em;height:3.6em;display:block;margin:0 auto .2em}
#primary.rio-ap .qs-title{display:block;font-size:1.65em;font-weight:800;line-height:1.1;text-align:center;letter-spacing:-.01em}
#primary.rio-ap .qs-sl{display:block;font-size:1em}
#primary.rio-ap .qs-sl>span{display:block;font-weight:600;color:#3F3F42;margin-bottom:.3em}
#primary.rio-ap .qs-sl i{display:block;font-style:normal;color:#2F5077;border:1px solid rgba(26,26,26,.18);border-radius:.4em;padding:.35em .6em;background:#fff;position:relative}
#primary.rio-ap .qs-sl i::after{content:"";position:absolute;right:.7em;top:50%;width:.45em;height:.45em;border:solid #2F5077;border-width:0 .14em .14em 0;transform:translateY(-70%) rotate(45deg)}
#primary.rio-ap .qs-ref{display:block;margin-top:auto;font-size:.9em;color:#5C5D60;line-height:1.35}
#primary.rio-ap .qs-word{display:block;width:100%;height:auto}
#primary.rio-ap .qs-main{display:flex;flex-direction:column;gap:1.2em;padding:1.5em 1.5em 1.4em;background:#F2F0EC}
#primary.rio-ap .qs-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.9em}
#primary.rio-ap .qs-k{display:block;background:#fff;border-radius:.8em;padding:.9em 1em;box-shadow:0 .1em .4em rgba(26,26,26,.06)}
#primary.rio-ap .qs-kl{display:block;font-size:1em;color:#5C5D60;font-weight:600}
#primary.rio-ap .qs-kf{display:flex;align-items:baseline;gap:.4em;margin:.25em 0 .2em;flex-wrap:wrap}
#primary.rio-ap .qs-kf b{font-size:2.15em;font-weight:800;letter-spacing:-.02em;line-height:1.05;color:#1A1A1A}
#primary.rio-ap .qs-kc{display:block;font-size:.95em;color:#5C5D60;font-weight:600}
#primary.rio-ap .qs-kc.good{color:#11753A}
#primary.rio-ap .qs-kc.bad{color:#B4302A}
#primary.rio-ap .qs-v{display:inline-flex;align-items:center;gap:.3em;font-size:.82em;font-weight:700;color:#11753A;background:#E7F5EC;border-radius:99em;padding:.18em .6em .18em .5em;white-space:nowrap;line-height:1.2}
#primary.rio-ap .qs-v::before{content:"";width:.5em;height:.28em;border:solid currentColor;border-width:0 0 .14em .14em;transform:rotate(-45deg) translate(.05em,-.08em)}
#primary.rio-ap .qs-chart{display:block;background:#fff;border-radius:.8em;padding:1em 1.2em .8em;box-shadow:0 .1em .4em rgba(26,26,26,.06)}
#primary.rio-ap .qs-ct{display:block;font-size:1.05em;font-weight:700;margin-bottom:.6em}
#primary.rio-ap .qs-plot{position:relative;display:flex;align-items:stretch;gap:.9em;height:12.3em;background:linear-gradient(#EEE7DC,#EEE7DC) 0 calc(10.6em - var(--z) * 9em) / 100% 1px no-repeat}
#primary.rio-ap .qs-col{position:relative;flex:1;display:block}
#primary.rio-ap .qs-bar{position:absolute;left:8%;right:8%;bottom:calc(1.7em + var(--z) * 9em);height:calc(var(--h) * 9em);background:#2F5077;border-radius:.3em .3em 0 0;transform-origin:bottom;transition:transform .7s cubic-bezier(.2,.8,.2,1) calc(var(--d) * 70ms)}
#primary.rio-ap .qs-col.neg .qs-bar{bottom:auto;top:calc(10.6em - var(--z) * 9em);border-radius:0 0 .3em .3em;transform-origin:top}
#primary.rio-ap .qs-col.hot .qs-bar{background:#D24A43;box-shadow:0 0 0 .25em rgba(210,74,67,.18)}
#primary.rio-ap .qs-bar em{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);margin-bottom:.25em;font-style:normal;font-size:.9em;font-weight:600;color:#3F3F42;white-space:nowrap;transition:opacity .4s calc(var(--d) * 70ms + .5s)}
#primary.rio-ap .qs-col.neg .qs-bar em{bottom:auto;top:100%;margin:.25em 0 0}
#primary.rio-ap .qs-lab{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:.9em;color:#5C5D60;white-space:nowrap}
#primary.rio-ap .qs-tip{position:absolute;z-index:3;right:50%;bottom:calc(1.7em + var(--z) * 9em + var(--h) * 9em + .7em);display:grid;grid-template-columns:auto auto;gap:.15em .9em;font-size:.95em;background:#fff;border-radius:.5em;padding:.6em .8em;box-shadow:0 .6em 1.6em rgba(26,26,26,.18),0 0 0 1px rgba(26,26,26,.08);white-space:nowrap;transition:opacity .4s 1.2s,transform .4s 1.2s}
#primary.rio-ap .qs-col.neg .qs-tip{bottom:auto;right:auto;left:72%;top:calc(10.6em - var(--z) * 9em + var(--h) * 4.5em - 2.2em)}
#primary.rio-ap .qs-col.neg.tl .qs-tip{left:auto;right:72%}
#primary.rio-ap .qs-col.hot .qs-bar em{display:none}
#primary.rio-ap .qs-tip span{color:#5C5D60}
#primary.rio-ap .qs-tip b{color:#1A1A1A;font-weight:700}
#primary.rio-ap .qs-ai{position:absolute;z-index:4;left:-5%;bottom:-74px;width:58%;display:block;font-size:calc(100cqw / 50);background:#fff;border-radius:1.1em;padding:1.1em 1.2em 1em;box-shadow:0 1.8em 3.6em rgba(26,26,26,.22),0 0 0 1px rgba(26,26,26,.07);transition:opacity .5s 1.6s,transform .6s cubic-bezier(.2,.8,.2,1) 1.6s}
#primary.rio-ap .qs-aih{display:flex;align-items:center;gap:.5em;font-size:1em;margin-bottom:.7em}
#primary.rio-ap .qs-aih img{width:1.6em;height:1.6em;display:block}
#primary.rio-ap .qs-aih b{font-weight:700}
#primary.rio-ap .qs-q{display:block;margin-left:auto;width:fit-content;max-width:88%;background:#EAF0F6;color:#1A1A1A;border-radius:.9em .9em .2em .9em;padding:.5em .8em;font-size:1em}
#primary.rio-ap .qs-a{display:block;position:relative;margin:.7em 0 .7em;font-size:1.05em;line-height:1.45;color:#1A1A1A}
#primary.rio-ap .qs-a b{font-weight:700}
#primary.rio-ap .qs-dots{position:absolute;left:0;top:.3em;display:none;gap:.3em}
#primary.rio-ap .qs-dots i{width:.5em;height:.5em;border-radius:50%;background:#898B8E;animation:qsdot 1s infinite}
#primary.rio-ap .qs-dots i:nth-child(2){animation-delay:.15s}
#primary.rio-ap .qs-dots i:nth-child(3){animation-delay:.3s}
#primary.rio-ap .qs-work{display:flex;align-items:center;gap:.6em;flex-wrap:wrap;padding-top:.6em;border-top:1px solid rgba(26,26,26,.10);font-size:.9em;color:#5C5D60}
@keyframes qsdot{0%,80%,100%{opacity:.3}40%{opacity:1}}
/* Animation: the script adds qs-pre (start state) then qs-in when the scene scrolls into view. No script: finished state. */
#primary.rio-ap .qs.qs-pre .qs-bar{transform:scaleY(0)}
#primary.rio-ap .qs.qs-pre .qs-bar em{opacity:0}
#primary.rio-ap .qs.qs-pre .qs-tip{opacity:0;transform:translateY(.6em)}
#primary.rio-ap .qs.qs-pre .qs-ai{opacity:0;transform:translateY(2em)}
#primary.rio-ap .qs.qs-pre .qs-txt,#primary.rio-ap .qs.qs-pre .qs-work{opacity:0}
#primary.rio-ap .qs.qs-in .qs-bar{transform:none}
#primary.rio-ap .qs.qs-in .qs-bar em,#primary.rio-ap .qs.qs-in .qs-tip{opacity:1;transform:none}
#primary.rio-ap .qs.qs-in .qs-ai{opacity:1;transform:none}
#primary.rio-ap .qs.qs-in .qs-dots{display:flex;animation:qshide 0s 3s forwards}
#primary.rio-ap .qs.qs-in .qs-txt,#primary.rio-ap .qs.qs-in .qs-work{opacity:1;transition:opacity .5s 3s}
@keyframes qshide{to{visibility:hidden}}
@media (max-width:700px){
  #primary.rio-ap .qs{width:100%;margin:8px 0 0}
  #primary.rio-ap .qs-win{grid-template-columns:1fr;transform:none;font-size:calc(100cqw / 36)}
  #primary.rio-ap .qs-rail{flex-direction:row;align-items:center;gap:.6em;padding:.8em 1.1em;border-right:0;border-bottom:1px solid rgba(26,26,26,.08)}
  #primary.rio-ap .qs-mark{width:2.2em;height:2.2em;margin:0}
  #primary.rio-ap .qs-title{font-size:1.3em;text-align:left}
  #primary.rio-ap .qs-sl,#primary.rio-ap .qs-ref{display:none}
  #primary.rio-ap .qs-word{width:8.5em;margin-left:auto}
  #primary.rio-ap .qs-main{padding:1em}
  #primary.rio-ap .qs-kpis{gap:.6em}
  #primary.rio-ap .qs-k{padding:.7em .7em}
  #primary.rio-ap .qs-kf b{font-size:1.8em}
  #primary.rio-ap .qs-ai{position:relative;left:auto;bottom:auto;width:92%;margin:-1.4em 0 0 4%;font-size:calc(100cqw / 30)}
}
@media (prefers-reduced-motion:reduce){#primary.rio-ap .qs *{transition:none!important;animation:none!important}#primary.rio-ap .qs-dots{display:none!important}}
