/* ==========================
   RB Why Choose Us v2.0.1 (own file: rb-why-choose.css)
   Rising line of reasons; a glowing dot climbs to the top point on a loop.
   Every value below is a fallback; the widget's Style tab overrides it.
========================== */
.rbwc{
  --rbwc-rise:44px;
  --rbwc-gap:16px;
  --rbwc-stem:34px;
  --rbwc-node-align:center;
  --rbwc-pt:18px;
  --rbwc-pt-top:26px;
  --rbwc-dot:14px;
  --rbwc-accent:#F59A00;
  --rbwc-dot-color:#FFB43A;
  --rbwc-pt-bg:#040917;
  --rbwc-pt-ring:rgba(245,154,0,.45);
  --rbwc-line-base:rgba(255,255,255,.14);
  --rbwc-line-from:rgba(245,154,0,.35);
  --rbwc-line-to:#F59A00;
  --rbwc-line-w:2px;
  --rbwc-stem-color:rgba(255,255,255,.16);
  --rbwc-lift:4px;
  --rbwc-card-lit:rgba(245,154,0,.35);
  --rbwc-hi-glow:rgba(245,154,0,.28);
  --rbwc-glow:rgba(245,154,0,.16);
  --rbwc-stack-gap:16px;
  --rbwc-indent:8px;
  position:relative;
  width:100%;
  overflow:hidden;
  isolation:isolate;
  background-color:#040917;
  color:#FFFFFF;
}
.rbwc *{box-sizing:border-box}
.rbwc.has-glow::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(55% 55% at 88% 38%,var(--rbwc-glow),transparent 70%),
    radial-gradient(45% 45% at 6% 100%,rgba(79,103,255,.08),transparent 70%);
}
.rbwc.has-grid::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%);
  mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%);
}
.rbwc__inner{position:relative;max-width:1320px;margin:0 auto;padding:96px 24px}
.rbwc__header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:start;gap:56px;margin-bottom:40px}
.rbwc__heading{margin:0;max-width:13ch;color:#FFFFFF;font-size:clamp(44px,6vw,88px);font-weight:800;line-height:.98;letter-spacing:-.045em}
.rbwc__accent{color:#F59A00}
.rbwc__intro{margin:6px 0 0;max-width:480px;justify-self:end;color:#A7B3C6;font-size:18px;line-height:1.6}

.rbwc__stage{position:relative;padding-top:36px}
.rbwc__svg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.rbwc__svg path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.rbwc__line-base{stroke:var(--rbwc-line-base);stroke-width:var(--rbwc-line-w)}
.rbwc__line-prog{stroke-width:var(--rbwc-line-w);transition:opacity .6s ease}
/* soft glow without a blur filter (a blur would be re-rendered every frame) */
.rbwc__line-glow{stroke-width:calc(var(--rbwc-line-w) * 4);opacity:.16;transition:opacity .6s ease}
.rbwc__grad-from{stop-color:var(--rbwc-line-from)}
.rbwc__grad-to{stop-color:var(--rbwc-line-to)}
.rbwc.is-resetting .rbwc__line-prog,.rbwc.is-resetting .rbwc__line-glow{opacity:0}
.rbwc__dot{
  position:absolute;left:0;top:0;z-index:3;pointer-events:none;
  width:var(--rbwc-dot);height:var(--rbwc-dot);
  margin:calc(var(--rbwc-dot) / -2) 0 0 calc(var(--rbwc-dot) / -2);
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#FFFFFF 0 18%,var(--rbwc-dot-color) 45%);
  box-shadow:0 0 0 5px rgba(245,154,0,.2),0 0 24px 6px rgba(245,154,0,.55);
  opacity:0;
  transition:opacity .45s ease;
  will-change:transform;
}
.rbwc.is-running .rbwc__dot{opacity:1}
.rbwc.is-resetting .rbwc__dot,.rbwc.is-peak .rbwc__dot{opacity:0}

.rbwc .rbwc__steps{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:repeat(var(--n),minmax(0,1fr));
  column-gap:var(--rbwc-gap);
  align-items:start;
  margin:0;padding:0;list-style:none;
}
.rbwc .rbwc__step{
  display:flex;flex-direction:column;min-width:0;margin:0;padding:0;
  padding-top:calc((var(--n) - 1 - var(--i)) * var(--rbwc-rise));
}
.rbwc .rbwc__step::marker{content:none}
.rbwc__node{display:flex;flex-direction:column;align-items:var(--rbwc-node-align);padding:0 20px}
.rbwc__point{
  position:relative;flex:none;
  display:flex;align-items:center;justify-content:center;
  width:var(--rbwc-pt);height:var(--rbwc-pt);
  margin:calc((var(--rbwc-pt-top) - var(--rbwc-pt)) / 2);
  border:2px solid var(--rbwc-pt-ring);
  border-radius:50%;
  background-color:var(--rbwc-pt-bg);
  box-shadow:0 0 0 4px var(--rbwc-pt-bg);
  transition:border-color .4s ease,box-shadow .4s ease;
}
.rbwc__point::before{content:"";width:6px;height:6px;border-radius:50%;background-color:transparent;transition:background-color .4s ease,transform .4s ease;transform:scale(.6)}
.rbwc__step.is-lit .rbwc__point{border-color:var(--rbwc-accent);box-shadow:0 0 0 4px var(--rbwc-pt-bg),0 0 18px 2px rgba(245,154,0,.45)}
.rbwc__step.is-lit .rbwc__point::before{background-color:var(--rbwc-accent);transform:scale(1)}
.rbwc__step.is-top .rbwc__point{
  width:var(--rbwc-pt-top);height:var(--rbwc-pt-top);margin:0;
  border-color:var(--rbwc-accent);
  background-color:var(--rbwc-accent);
  box-shadow:0 0 0 5px rgba(245,154,0,.18),0 0 28px 6px rgba(245,154,0,.45);
}
.rbwc__step.is-top .rbwc__point::before{width:8px;height:8px;background-color:#FFF4DE;transform:scale(1)}
.rbwc.has-pulse .rbwc__step.is-top .rbwc__point::before{animation:rbwc-blink 1.6s ease-in-out infinite}
.rbwc.has-pulse .rbwc__step.is-top .rbwc__point::after{
  content:"";position:absolute;inset:-2px;border-radius:50%;
  border:2px solid var(--rbwc-accent);
  animation:rbwc-ring 1.6s cubic-bezier(.2,.7,.3,1) infinite;
}
.rbwc.is-peak .rbwc__step.is-top .rbwc__point{box-shadow:0 0 0 7px rgba(245,154,0,.25),0 0 40px 12px rgba(245,154,0,.6)}
@keyframes rbwc-ring{0%{transform:scale(1);opacity:.75}100%{transform:scale(2.6);opacity:0}}
@keyframes rbwc-blink{0%,100%{opacity:1}50%{opacity:.25}}
.rbwc__plabel{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);color:#C3CCDA;font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap}
.rbwc__plabel--card{display:none;position:static;transform:none}
.rbwc__stem{flex:none;width:var(--rbwc-pt-top);height:var(--rbwc-stem);margin-top:6px;background:linear-gradient(var(--rbwc-stem-color) 55%,transparent 0) center top / 1px 7px repeat-y}

.rbwc__card{
  position:relative;
  min-height:178px;
  padding:22px 20px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  background-color:rgba(255,255,255,.035);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .5s ease,box-shadow .5s ease,background-color .5s ease;
}
.rbwc__step:hover .rbwc__card{transform:translateY(calc(-1 * var(--rbwc-lift)))}
.rbwc[data-light="1"] .rbwc__step.is-lit .rbwc__card{border-color:var(--rbwc-card-lit)}
.rbwc .rbwc__step.is-highlight .rbwc__card{
  border-color:#F59A00;
  background-color:rgba(245,154,0,.07);
  box-shadow:0 0 0 1px rgba(245,154,0,.12),0 22px 60px -18px var(--rbwc-hi-glow);
}
.rbwc.is-peak .rbwc__step.is-highlight .rbwc__card{box-shadow:0 0 0 1px rgba(245,154,0,.3),0 24px 70px -14px var(--rbwc-hi-glow),0 0 40px -10px var(--rbwc-hi-glow)}
.rbwc__card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rbwc__num{color:#F59A00;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.04em}
.rbwc__title{margin:14px 0 0;color:#FFFFFF;font-size:18px;font-weight:700;line-height:1.25;letter-spacing:-.02em}
.rbwc__desc{margin:10px 0 0;color:#9AA7BB;font-size:13px;line-height:1.55}

/* Stacked (small screens): one card per row, the line runs down and ends at the highest point. */
.rbwc.is-stacked .rbwc__stage{padding-top:0}
.rbwc.is-stacked .rbwc__steps{display:flex;flex-direction:column;gap:var(--rbwc-stack-gap)}
.rbwc.is-stacked .rbwc__step{
  flex-direction:row;align-items:flex-start;gap:14px;padding-top:0;
  margin-left:calc(var(--i) * var(--rbwc-indent));
}
.rbwc.is-stacked .rbwc__node{flex:none;flex-direction:row;align-items:center;justify-content:center;width:var(--rbwc-pt-top);height:var(--rbwc-pt-top);margin-top:16px;padding:0}
.rbwc.is-stacked .rbwc__point{margin:0}
.rbwc.is-stacked .rbwc__stem,.rbwc.is-stacked .rbwc__point .rbwc__plabel{display:none}
.rbwc.is-stacked .rbwc__plabel--card{display:inline}
.rbwc.is-stacked .rbwc__card{flex:1;min-width:0}

/* Same stacked layout without JS (e.g. scripts delayed by a cache/optimisation plugin). */
@media(max-width:1024px){
  .rbwc:not(.is-js) .rbwc__stage{padding-top:0}
  .rbwc:not(.is-js) .rbwc__steps{display:flex;flex-direction:column;gap:var(--rbwc-stack-gap)}
  .rbwc:not(.is-js) .rbwc__step{
    flex-direction:row;align-items:flex-start;gap:14px;padding-top:0;
    margin-left:calc(var(--i) * var(--rbwc-indent));
  }
  .rbwc:not(.is-js) .rbwc__node{flex:none;flex-direction:row;align-items:center;justify-content:center;width:var(--rbwc-pt-top);height:var(--rbwc-pt-top);margin-top:16px;padding:0}
  .rbwc:not(.is-js) .rbwc__point{margin:0}
  .rbwc:not(.is-js) .rbwc__stem,.rbwc:not(.is-js) .rbwc__point .rbwc__plabel{display:none}
  .rbwc:not(.is-js) .rbwc__plabel--card{display:inline}
  .rbwc:not(.is-js) .rbwc__card{flex:1;min-width:0}
}
@media(max-width:1024px){
  .rbwc__header{grid-template-columns:minmax(0,1fr);gap:20px}
  .rbwc__intro{justify-self:start;margin:0}
}
@media(max-width:767px){
  .rbwc__inner{padding:64px 16px}
  .rbwc__heading{font-size:clamp(38px,11vw,56px)}
  .rbwc__intro{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  .rbwc__dot{display:none}
  .rbwc .rbwc__step.is-top .rbwc__point::before,.rbwc .rbwc__step.is-top .rbwc__point::after{animation:none!important}
  .rbwc__card{transition:none}
}
