/* Every selector is scoped to this section. No external libraries required. */
.rsiTrustX{--rsiTrustX-accent:#d9b86d;box-sizing:border-box;background:#050505;color:#fff;font-family:Arial,Helvetica,sans-serif;padding:52px 24px 38px;isolation:isolate;overflow:hidden}
.rsiTrustX *,.rsiTrustX *::before,.rsiTrustX *::after{box-sizing:border-box}
.rsiTrustX__wrap{width:100%;max-width:1120px;margin:0 auto}
.rsiTrustX__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;gap:0}
.rsiTrustX__stat{position:relative;text-align:center;padding:8px 16px 22px}
.rsiTrustX__stat+.rsiTrustX__stat::before{content:"";position:absolute;left:0;top:13px;width:1px;height:42px;background:linear-gradient(transparent,#ffffff26,transparent)}
.rsiTrustX__value{display:block;font-size:clamp(25px,2.8vw,34px);font-weight:500;letter-spacing:-1px;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}
.rsiTrustX__label{display:block;font-size:13px;line-height:1.6;margin-top:9px;color:#bababa}
.rsiTrustX__heading{display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 27px 0 24px;
    font-size: 19px;
    font-weight: 500;
    text-align: center;
    line-height: 1.6;
    color: #e6e6e6;
    letter-spacing: 0.1px;}
.rsiTrustX__heading::before,.rsiTrustX__heading::after{content:"";width:70px;height:1px;background:linear-gradient(90deg,transparent,#d9b86d66)}
.rsiTrustX__heading::after{transform:rotate(180deg)}
.rsiTrustX__logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:24px;list-style:none;padding:0;margin:0}
.rsiTrustX__logo{min-width:0;display:flex;align-items:center;justify-content:center;height:76px;background:#fff;border:1px solid #e8e8e8;border-radius:10px;transition:transform .25s ease,border-color .25s ease,background .25s ease}
.rsiTrustX__logo:hover{transform:translateY(-4px);border-color:#d9b86d;background:#fff}
.rsiTrustX__logo img{display:block;width:auto;max-width:85%;height:auto;max-height:55px;object-fit:contain}
@media(max-width:767px){.rsiTrustX{padding:34px 18px 28px}.rsiTrustX__stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}.rsiTrustX__stat{padding:8px 8px 12px}.rsiTrustX__stat:nth-child(3)::before{display:none}.rsiTrustX__value{font-size:28px}.rsiTrustX__logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.rsiTrustX__heading{margin-top:26px;gap:10px}.rsiTrustX__heading::before,.rsiTrustX__heading::after{width:30px;flex-shrink:0}.rsiTrustX__logo{height:70px}}
@media(max-width:360px){.rsiTrustX__value{font-size:23px}.rsiTrustX__label{font-size:11px}.rsiTrustX__heading{font-size:12px}.rsiTrustX__heading::before,.rsiTrustX__heading::after{width:16px}}
@media(prefers-reduced-motion:reduce){.rsiTrustX__logo{transition:none}.rsiTrustX__logo:hover{transform:none}}

/* All styles are scoped to this section. */
.rsiAiHeroZ {
    --rsiAiHeroZ-accent: #a6a3ff;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(60px, 8vw, 57px) 24px;
    background: #050508;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    text-align: center;
}

.rsiAiHeroZ,
.rsiAiHeroZ *,
.rsiAiHeroZ *::before,
.rsiAiHeroZ *::after {
    box-sizing: border-box;
}

.rsiAiHeroZ::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(
            ellipse at 85% 20%,
            rgba(103, 40, 173, .2),
            transparent 55%
        ),
        radial-gradient(
            ellipse at 15% 80%,
            rgba(53, 96, 160, .12),
            transparent 50%
        );
}

.rsiAiHeroZ__glow {
    position: absolute;
    top: -180px;
    right: -100px;
    z-index: -1;
    width: min(650px, 90vw);
    aspect-ratio: 1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        circle,
        rgba(114, 64, 198, .2),
        transparent 68%
    );
    animation: rsiAiHeroZGlow 10s ease-in-out infinite alternate;
}

.rsiAiHeroZ__content {
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
}

.rsiAiHeroZ__badge {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 25px;
    padding: 9px 17px;
    border: 1px solid rgba(166, 163, 255, .25);
    border-radius: 100px;
    background: rgba(166, 163, 255, .07);
    color: #d4d2ff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 1px;
    text-transform: uppercase;
    animation: rsiAiHeroZReveal .7s ease both;
}

.rsiAiHeroZ .rsiAiHeroZ__heading {
    max-width: 1180px;
    margin: 0 auto;
    color: #fff;
    font-size: clamp(34px, 4.2vw, 57px);
    font-weight: 800;
    line-height: 1.14;
    letter-spacing: -.045em;
    overflow-wrap: break-word;
    animation: rsiAiHeroZReveal .8s .1s ease both;
}

.rsiAiHeroZ__heading span {
    display: block;
    margin-top: 8px;
    color: var(--rsiAiHeroZ-accent);
}

.rsiAiHeroZ .rsiAiHeroZ__subheading {
    margin: 24px 0 0;
    color: #f0efff;
    font-size: clamp(20px, 2.3vw, 32px);
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -.025em;
    animation: rsiAiHeroZReveal .8s .2s ease both;
}

.rsiAiHeroZ .rsiAiHeroZ__intro {
    max-width: 940px;
    margin: 30px auto 0;
    color: #e6e5ef;
    font-size: clamp(16px, 1.4vw, 19px);
    font-weight: 600;
    line-height: 1.8;
    animation: rsiAiHeroZReveal .8s .3s ease both;
}

.rsiAiHeroZ .rsiAiHeroZ__text {
    max-width: 940px;
    margin: 16px auto 0;
    color: #b8b7c8;
    font-size: clamp(15px, 1.2vw, 17px);
    font-weight: 400;
    line-height: 1.85;
    animation: rsiAiHeroZReveal .8s .4s ease both;
}

.rsiAiHeroZ__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-top: 34px;
    animation: rsiAiHeroZReveal .8s .5s ease both;
}

.rsiAiHeroZ .rsiAiHeroZ__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    min-height: 54px;
    max-width: 100%;
    padding: 15px 25px;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiAiHeroZ .rsiAiHeroZ__button--primary {
    background: #aaa6ff;
    color: #111020;
    box-shadow: 0 8px 30px rgba(130, 112, 255, .16);
}

.rsiAiHeroZ__button--primary::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 30%,
        rgba(255, 255, 255, .4) 50%,
        transparent 70%
    );
    transform: translateX(-130%);
}

.rsiAiHeroZ__button--primary:hover::before {
    animation: rsiAiHeroZShine .7s ease;
}

.rsiAiHeroZ .rsiAiHeroZ__button--primary:hover {
    background: #bdbaff;
    box-shadow: 0 12px 38px rgba(130, 112, 255, .3);
}

.rsiAiHeroZ .rsiAiHeroZ__button--secondary {
    border-color: rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .03);
    color: #fff;
}

.rsiAiHeroZ .rsiAiHeroZ__button--secondary:hover {
    border-color: #aaa6ff;
    background: rgba(166, 163, 255, .1);
}

.rsiAiHeroZ__button:hover {
    transform: translateY(-3px);
}

.rsiAiHeroZ__button span {
    flex-shrink: 0;
    font-size: 20px;
    transition: transform .25s ease;
}

.rsiAiHeroZ__button:hover span {
    transform: translateX(3px);
}

.rsiAiHeroZ__button:focus-visible {
    outline: 3px solid #dddaff;
    outline-offset: 5px;
}

@keyframes rsiAiHeroZReveal {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiAiHeroZGlow {
    from {
        transform: translate(0, 0) scale(1);
        opacity: .6;
    }
    to {
        transform: translate(-40px, 35px) scale(1.12);
        opacity: 1;
    }
}

@keyframes rsiAiHeroZShine {
    to {
        transform: translateX(130%);
    }
}

/* Tablet */
@media (max-width: 991px) {
    .rsiAiHeroZ {
        padding: 65px 24px;
    }

    .rsiAiHeroZ .rsiAiHeroZ__heading {
        font-size: clamp(36px, 5.5vw, 50px);
    }
}

/* Mobile */
@media (max-width: 575px) {
    .rsiAiHeroZ {
        padding: 48px 18px;
    }

    .rsiAiHeroZ__badge {
        margin-bottom: 20px;
        padding: 8px 12px;
        font-size: 10px;
        letter-spacing: .6px;
    }

    .rsiAiHeroZ .rsiAiHeroZ__heading {
        font-size: clamp(29px, 8vw, 40px);
        line-height: 1.18;
        letter-spacing: -.035em;
    }

    .rsiAiHeroZ .rsiAiHeroZ__subheading {
        margin-top: 20px;
        font-size: 21px;
    }

    .rsiAiHeroZ .rsiAiHeroZ__intro {
        margin-top: 24px;
        font-size: 16px;
        line-height: 1.7;
    }

    .rsiAiHeroZ .rsiAiHeroZ__text {
        font-size: 15px;
        line-height: 1.75;
    }

    .rsiAiHeroZ__actions {
        flex-direction: column;
        align-items: center;
        margin-top: 28px;
        gap: 12px;
    }

    .rsiAiHeroZ .rsiAiHeroZ__button {
        width: 100%;
        max-width: 340px;
        min-height: 52px;
        padding: 14px 18px;
        font-size: 14px;
    }
}

/* Respect accessibility motion preferences. */
@media (prefers-reduced-motion: reduce) {
    .rsiAiHeroZ *,
    .rsiAiHeroZ *::before,
    .rsiAiHeroZ *::after {
        animation: none !important;
        transition: none !important;
    }
}
.chat-container2 {
    left: 36% !important;
    width: 27% !important;
}

.rsiAgentFx {
    --rsiAgentFx-ink: #172020;
    --rsiAgentFx-muted: #626b6b;
    --rsiAgentFx-lime: #e5ffb3;
    padding: clamp(50px, 6vw, 90px) 24px;
    background: #fff;
    color: var(--rsiAgentFx-ink);
    font-family: Arial, Helvetica, sans-serif;
    isolation: isolate;
}

.rsiAgentFx,
.rsiAgentFx *,
.rsiAgentFx *::before,
.rsiAgentFx *::after {
    box-sizing: border-box;
}

.rsiAgentFx__container {
    width: 100%;
    max-width: 1320px;
    margin-inline: auto;
}

.rsiAgentFx__header {
    text-align: center;
}

.rsiAgentFx__eyebrow {
    display: inline-block;
    margin-bottom: 17px;
    padding: 8px 15px;
    border-radius: 30px;
    background: #f1f8e8;
    color: #476127;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    animation: rsiAgentFxEnter .7s ease both;
}

.rsiAgentFx .rsiAgentFx__heading {
    max-width: 850px;
    margin: 0 auto;
    color: var(--rsiAgentFx-ink);
    font-size: clamp(29px, 3.4vw, 46px);
    font-weight: 750;
    line-height: 1.18;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
    animation: rsiAgentFxEnter .7s .1s ease both;
}

.rsiAgentFx__heading span {
    display: block;
    margin-top: 5px;
}

.rsiAgentFx .rsiAgentFx__description {
    max-width: 1190px;
    margin: 28px auto 0;
    color: var(--rsiAgentFx-muted);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.85;
    animation: rsiAgentFxEnter .7s .2s ease both;
}

.rsiAgentFx__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
    max-width: 1120px;
    margin: 38px auto 0;
    padding: 0;
    list-style: none;
}

.rsiAgentFx__card {
    position: relative;
    min-width: 0;
    min-height: 245px;
    padding: 24px 21px;
    border: 1px solid #e8eeeb;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 5px 20px rgba(27, 45, 34, .025);
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease,
        background-color .3s ease;
    animation: rsiAgentFxEnter .7s ease backwards;
}

.rsiAgentFx__card:nth-child(1) { animation-delay: .25s; }
.rsiAgentFx__card:nth-child(2) { animation-delay: .35s; }
.rsiAgentFx__card:nth-child(3) { animation-delay: .45s; }
.rsiAgentFx__card:nth-child(4) { animation-delay: .55s; }
.rsiAgentFx__card:nth-child(5) { animation-delay: .65s; }

.rsiAgentFx__icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 76px;
    height: 76px;
    margin-bottom: 31px;
    color: #253321;
}

.rsiAgentFx__icon::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -5px;
    z-index: 0;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: var(--rsiAgentFx-lime);
    transition: transform .4s ease, background-color .4s ease;
}

.rsiAgentFx__icon svg {
    position: relative;
    z-index: 1;
    display: block;
    width: 57px;
    height: 57px;
    overflow: visible;
    transition: transform .4s ease;
}

.rsiAgentFx__number {
    position: absolute;
    top: 23px;
    right: 18px;
    color: #c0c9bf;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.rsiAgentFx .rsiAgentFx__title {
    margin: 0;
    color: var(--rsiAgentFx-ink);
    font-size: 21px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.025em;
}

.rsiAgentFx .rsiAgentFx__detail {
    margin: 10px 0 0;
    color: var(--rsiAgentFx-muted);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
}

@media (hover: hover) {
    .rsiAgentFx__card:hover {
        transform: translateY(-8px);
        border-color: #b9db8c;
        background: #fcfff8;
        box-shadow: 0 18px 38px rgba(70, 100, 36, .1);
    }

    .rsiAgentFx__card:hover .rsiAgentFx__icon::before {
        transform: scale(1.13);
        background: #d5ff91;
    }

    .rsiAgentFx__card:hover .rsiAgentFx__icon svg {
        transform: translateY(-3px) rotate(-5deg);
    }
}

@keyframes rsiAgentFxEnter {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tablet: three cards per row */
@media (max-width: 1024px) {
    .rsiAgentFx__grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        max-width: 850px;
    }

    .rsiAgentFx__card {
        grid-column: span 2;
    }

    .rsiAgentFx__card:nth-child(4) {
        grid-column: 2 / span 2;
    }

    .rsiAgentFx__card:nth-child(5) {
        grid-column: 4 / span 2;
    }
}

/* Mobile: two cards per row */
@media (max-width: 640px) {
    .rsiAgentFx {
        padding: 48px 18px;
    }

    .rsiAgentFx__eyebrow {
        font-size: 10px;
        letter-spacing: 1px;
    }

    .rsiAgentFx .rsiAgentFx__heading {
        font-size: clamp(28px, 6.5vw, 36px);
        line-height: 1.22;
    }

    .rsiAgentFx .rsiAgentFx__description {
        margin-top: 22px;
        font-size: 14px;
        line-height: 1.8;
    }

    .rsiAgentFx__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
        margin-top: 28px;
    }

    .rsiAgentFx__card,
    .rsiAgentFx__card:nth-child(4) {
        grid-column: span 2;
        min-height: 225px;
        padding: 20px 16px;
        border-radius: 16px;
    }

    .rsiAgentFx__card:nth-child(5) {
        grid-column: 2 / span 2;
    }

    .rsiAgentFx__icon {
        margin-bottom: 23px;
    }

    .rsiAgentFx .rsiAgentFx__title {
        font-size: 20px;
    }

    .rsiAgentFx .rsiAgentFx__detail {
        font-size: 12px;
    }
}

/* Small mobile: one card per row */
@media (max-width: 360px) {
    .rsiAgentFx__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rsiAgentFx__card,
    .rsiAgentFx__card:nth-child(4),
    .rsiAgentFx__card:nth-child(5) {
        grid-column: auto;
        min-height: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiAgentFx *,
    .rsiAgentFx *::before,
    .rsiAgentFx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* =============================
   UNIQUE SECTION STYLES
============================= */

.rsiSalesAx {
    --rsiSalesAx-accent: #e72762;
    --rsiSalesAx-dark: #191c24;

    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 100px) 24px;
    background: #f0f2f9;
    color: var(--rsiSalesAx-dark);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiSalesAx,
.rsiSalesAx *,
.rsiSalesAx *::before,
.rsiSalesAx *::after {
    box-sizing: border-box;
}

.rsiSalesAx__container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    align-items: center;
    gap: clamp(30px, 5vw, 75px);
    width: 100%;
    max-width: 1250px;
    margin-inline: auto;
}

/* =============================
   TEXT CONTENT
============================= */

.rsiSalesAx__content {
    min-width: 0;
    animation: rsiSalesAxReveal .85s ease both;
}

.rsiSalesAx .rsiSalesAx__heading {
    margin: 0 0 23px;
    color: var(--rsiSalesAx-dark);
    font-size: clamp(30px, 3vw, 44px);
    font-weight: 750;
    line-height: 1.16;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiSalesAx__heading span {
    color: var(--rsiSalesAx-accent);
}

.rsiSalesAx .rsiSalesAx__text {
    margin: 0 0 19px;
    color: #454b5b;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* =============================
   DEMO BUTTON
============================= */

.rsiSalesAx .rsiSalesAx__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 56px;
    max-width: 100%;
    margin-top: 7px;
    padding: 16px 26px;
    overflow: hidden;
    border: 1px solid #202127;
    border-radius: 12px;
    background: #202127;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(25, 28, 36, .09);
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiSalesAx__button::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 25%,
        rgba(255, 255, 255, .18) 50%,
        transparent 75%
    );
    transform: translateX(-130%);
}

.rsiSalesAx__button span {
    font-size: 21px;
    line-height: 1;
    transition: transform .25s ease;
}

.rsiSalesAx__button:focus-visible {
    outline: 3px solid var(--rsiSalesAx-accent);
    outline-offset: 5px;
}

/* =============================
   TWO OVERLAPPING IMAGES
============================= */

.rsiSalesAx__visual {
    position: relative;
    min-width: 0;
    animation: rsiSalesAxReveal 1s .15s ease both;
}

.rsiSalesAx__halo {
    position: absolute;
    inset: 5%;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(231, 39, 98, .09),
        rgba(177, 186, 225, .08) 45%,
        transparent 72%
    );
    animation: rsiSalesAxGlow 6s ease-in-out infinite alternate;
}

.rsiSalesAx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 620px;
    aspect-ratio: 620 / 540;
    margin-inline: auto;
}

.rsiSalesAx .rsiSalesAx__imageStack img {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    transform-origin: center;
}

/* Dashboard behind */
.rsiSalesAx .rsiSalesAx__dashboard {
    z-index: 1;
    top: 0;
    left: 0;
    width: 83%;
    filter: drop-shadow(0 12px 18px rgba(30, 35, 55, .08));
    animation: rsiSalesAxDashboardFloat 7s ease-in-out infinite;
}

/* Graph and robot in front */
.rsiSalesAx .rsiSalesAx__conversion {
    z-index: 2;
    top: 12%;
    right: 0;
    width: 82%;
    filter: drop-shadow(0 15px 20px rgba(30, 35, 55, .1));
    animation: rsiSalesAxConversionFloat 5.5s ease-in-out infinite;
}

/* =============================
   HOVER EFFECTS
============================= */

@media (hover: hover) {
    .rsiSalesAx .rsiSalesAx__button:hover {
        transform: translateY(-3px);
        border-color: var(--rsiSalesAx-accent);
        background: var(--rsiSalesAx-accent);
        box-shadow: 0 12px 26px rgba(231, 39, 98, .2);
    }

    .rsiSalesAx__button:hover::before {
        animation: rsiSalesAxShine .7s ease;
    }

    .rsiSalesAx__button:hover span {
        transform: translate(2px, -2px);
    }
}

/* =============================
   CSS-ONLY ANIMATIONS
============================= */

@keyframes rsiSalesAxReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiSalesAxDashboardFloat {
    0%, 100% {
        transform: translateY(0) rotate(-1deg);
    }
    50% {
        transform: translateY(-9px) rotate(0deg);
    }
}

@keyframes rsiSalesAxConversionFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(12px);
    }
}

@keyframes rsiSalesAxGlow {
    from {
        opacity: .55;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

@keyframes rsiSalesAxShine {
    to {
        transform: translateX(130%);
    }
}

/* =============================
   TABLET
============================= */

@media (max-width: 991px) {
    .rsiSalesAx {
        padding: 60px 24px;
    }

    .rsiSalesAx__container {
        gap: 30px;
    }

    .rsiSalesAx .rsiSalesAx__heading {
        font-size: 34px;
    }

    .rsiSalesAx .rsiSalesAx__text {
        font-size: 15px;
        line-height: 1.75;
    }

    .rsiSalesAx__imageStack {
        max-width: 520px;
    }
}

/* =============================
   MOBILE
============================= */

@media (max-width: 767px) {
    .rsiSalesAx {
        padding: 45px 20px;
    }

    .rsiSalesAx__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 36px;
        max-width: 600px;
    }

    .rsiSalesAx .rsiSalesAx__heading {
        margin-bottom: 20px;
        font-size: clamp(29px, 6vw, 38px);
    }

    .rsiSalesAx .rsiSalesAx__text {
        margin-bottom: 17px;
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiSalesAx .rsiSalesAx__button {
        min-height: 52px;
        padding: 14px 24px;
    }

    .rsiSalesAx__visual {
        width: 100%;
        max-width: 480px;
        margin-inline: auto;
    }

    .rsiSalesAx__imageStack {
        margin-top: 10px;
    }
}

@media (max-width: 380px) {
    .rsiSalesAx {
        padding-inline: 16px;
    }

    .rsiSalesAx .rsiSalesAx__heading {
        font-size: 28px;
    }

    .rsiSalesAx .rsiSalesAx__button {
        width: 100%;
    }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .rsiSalesAx *,
    .rsiSalesAx *::before,
    .rsiSalesAx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION STYLES */
.rsiSupportBx {
    --rsiSupportBx-accent: #827294;
    --rsiSupportBx-dark: #1c1922;
    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 95px) 24px;
    background: #fff7fc;
    color: var(--rsiSupportBx-dark);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiSupportBx,
.rsiSupportBx *,
.rsiSupportBx *::before,
.rsiSupportBx *::after {
    box-sizing: border-box;
}

.rsiSupportBx__container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(35px, 6vw, 100px);
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

/* LEFT VISUAL */
.rsiSupportBx__visual {
    position: relative;
    min-width: 0;
    padding: 15px 10px;
    animation: rsiSupportBxReveal .9s ease both;
}

.rsiSupportBx__glow {
    position: absolute;
    inset: 8% 0;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(166, 139, 190, .17),
        rgba(235, 204, 226, .1) 45%,
        transparent 72%
    );
    animation: rsiSupportBxGlow 7s ease-in-out infinite alternate;
}

.rsiSupportBx .rsiSupportBx__image {
    display: block;
    width: 100%;
    max-width: 530px;
    height: auto;
    margin-inline: auto;
    object-fit: contain;
    filter: drop-shadow(0 14px 22px rgba(83, 62, 96, .07));
    animation: rsiSupportBxFloat 6s ease-in-out infinite;
}

/* RIGHT CONTENT */
.rsiSupportBx__content {
    min-width: 0;
    animation: rsiSupportBxReveal .9s .15s ease both;
}

.rsiSupportBx .rsiSupportBx__heading {
    margin: 0 0 23px;
    color: var(--rsiSupportBx-dark);
    font-size: clamp(29px, 3vw, 42px);
    font-weight: 750;
    line-height: 1.18;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiSupportBx__heading span {
    color: var(--rsiSupportBx-accent);
}

.rsiSupportBx .rsiSupportBx__text {
    margin: 0 0 19px;
    color: #514a59;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* BUTTON */
.rsiSupportBx .rsiSupportBx__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 55px;
    max-width: 100%;
    margin-top: 5px;
    padding: 15px 26px;
    overflow: hidden;
    border: 1px solid #242127;
    border-radius: 12px;
    background: #242127;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(45, 30, 54, .08);
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiSupportBx__button::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 25%,
        rgba(255, 255, 255, .2) 50%,
        transparent 75%
    );
    transform: translateX(-130%);
}

.rsiSupportBx__button span {
    font-size: 21px;
    line-height: 1;
    transition: transform .25s ease;
}

.rsiSupportBx__button:focus-visible {
    outline: 3px solid var(--rsiSupportBx-accent);
    outline-offset: 5px;
}

@media (hover: hover) {
    .rsiSupportBx .rsiSupportBx__button:hover {
        transform: translateY(-3px);
        background: #6d587f;
        border-color: #6d587f;
        box-shadow: 0 12px 26px rgba(109, 88, 127, .22);
    }

    .rsiSupportBx__button:hover::before {
        animation: rsiSupportBxShine .7s ease;
    }

    .rsiSupportBx__button:hover span {
        transform: translate(2px, -2px);
    }
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiSupportBxReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiSupportBxFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-12px);
    }
}

@keyframes rsiSupportBxGlow {
    from {
        opacity: .6;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

@keyframes rsiSupportBxShine {
    to {
        transform: translateX(130%);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiSupportBx {
        padding: 60px 24px;
    }

    .rsiSupportBx__container {
        gap: 35px;
    }

    .rsiSupportBx .rsiSupportBx__heading {
        font-size: 33px;
    }

    .rsiSupportBx .rsiSupportBx__text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiSupportBx {
        padding: 45px 20px;
    }

    .rsiSupportBx__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 32px;
        max-width: 600px;
    }

    .rsiSupportBx__content {
        grid-row: 1;
    }

    .rsiSupportBx__visual {
        grid-row: 2;
        width: 100%;
        max-width: 440px;
        margin-inline: auto;
        padding: 12px 8px;
    }

    .rsiSupportBx .rsiSupportBx__heading {
        margin-bottom: 20px;
        font-size: clamp(29px, 6vw, 37px);
    }

    .rsiSupportBx .rsiSupportBx__text {
        margin-bottom: 17px;
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiSupportBx .rsiSupportBx__button {
        min-height: 52px;
        padding: 14px 24px;
    }
}

@media (max-width: 380px) {
    .rsiSupportBx {
        padding-inline: 16px;
    }

    .rsiSupportBx .rsiSupportBx__heading {
        font-size: 28px;
    }

    .rsiSupportBx .rsiSupportBx__button {
        width: 100%;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiSupportBx *,
    .rsiSupportBx *::before,
    .rsiSupportBx *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiSupportBx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 540px;
    aspect-ratio: 540 / 590;
    margin-inline: auto;
}

.rsiSupportBx .rsiSupportBx__backImage,
.rsiSupportBx .rsiSupportBx__frontImage {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Dashboard behind */
.rsiSupportBx .rsiSupportBx__backImage {
    top: 0;
    left: 0;
    z-index: 1;
    width: 88%;
    filter: drop-shadow(0 8px 18px rgba(83, 62, 96, .08));
    animation: rsiSupportBxBackFloat 7s ease-in-out infinite;
}

/* Mobile/chat in front */
.rsiSupportBx .rsiSupportBx__frontImage {
    top: 12%;
    right: 0;
    z-index: 2;
    width: 82%;
    filter: drop-shadow(0 12px 20px rgba(83, 62, 96, .1));
    animation: rsiSupportBxFrontFloat 5.5s ease-in-out infinite;
}

@keyframes rsiSupportBxBackFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes rsiSupportBxFrontFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

@media (max-width: 767px) {
    .rsiSupportBx__imageStack {
        max-width: 420px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiSupportBx .rsiSupportBx__backImage,
    .rsiSupportBx .rsiSupportBx__frontImage {
        animation: none !important;
    }
}
/* UNIQUE SECTION STYLES */
.rsiHrCx {
    --rsiHrCx-accent: #198c45;
    --rsiHrCx-dark: #16251d;
    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 95px) 24px;
    background: #e5fff4;
    color: var(--rsiHrCx-dark);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiHrCx,
.rsiHrCx *,
.rsiHrCx *::before,
.rsiHrCx *::after {
    box-sizing: border-box;
}

.rsiHrCx__container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    align-items: center;
    gap: clamp(32px, 5vw, 80px);
    width: 100%;
    max-width: 1250px;
    margin-inline: auto;
}

/* CONTENT */
.rsiHrCx__content {
    min-width: 0;
    animation: rsiHrCxReveal .85s ease both;
}

.rsiHrCx .rsiHrCx__heading {
    margin: 0 0 23px;
    color: var(--rsiHrCx-dark);
    font-size: clamp(30px, 3vw, 44px);
    font-weight: 750;
    line-height: 1.17;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiHrCx__heading span {
    color: var(--rsiHrCx-accent);
}

.rsiHrCx .rsiHrCx__text {
    margin: 0 0 19px;
    color: #40564b;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* BUTTON */
.rsiHrCx .rsiHrCx__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 56px;
    max-width: 100%;
    margin-top: 6px;
    padding: 15px 26px;
    overflow: hidden;
    border: 1px solid #202722;
    border-radius: 12px;
    background: #202722;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(25, 60, 40, .08);
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiHrCx__button::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 25%,
        rgba(255, 255, 255, .2) 50%,
        transparent 75%
    );
    transform: translateX(-130%);
}

.rsiHrCx__button span {
    font-size: 21px;
    line-height: 1;
    transition: transform .25s ease;
}

.rsiHrCx__button:focus-visible {
    outline: 3px solid var(--rsiHrCx-accent);
    outline-offset: 5px;
}

/* TWO-IMAGE COMPOSITION */
.rsiHrCx__visual {
    position: relative;
    min-width: 0;
    animation: rsiHrCxReveal .9s .15s ease both;
}

.rsiHrCx__glow {
    position: absolute;
    inset: 8% 2%;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(42, 187, 112, .13),
        rgba(121, 224, 174, .06) 45%,
        transparent 72%
    );
    animation: rsiHrCxGlow 7s ease-in-out infinite alternate;
}

.rsiHrCx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 620px;
    aspect-ratio: 620 / 570;
    margin-inline: auto;
}

.rsiHrCx .rsiHrCx__backImage,
.rsiHrCx .rsiHrCx__frontImage {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Dashboard behind */
.rsiHrCx .rsiHrCx__backImage {
    top: 2%;
    left: 0;
    z-index: 1;
    width: 88%;
    filter: drop-shadow(0 10px 18px rgba(26, 81, 50, .07));
    animation: rsiHrCxBackFloat 7s ease-in-out infinite;
}

/* Candidate cards / robot in front */
.rsiHrCx .rsiHrCx__frontImage {
    top: 12%;
    right: 0;
    z-index: 2;
    width: 83%;
    filter: drop-shadow(0 14px 20px rgba(26, 81, 50, .09));
    animation: rsiHrCxFrontFloat 5.5s ease-in-out infinite;
}

/* HOVER */
@media (hover: hover) {
    .rsiHrCx .rsiHrCx__button:hover {
        transform: translateY(-3px);
        background: #14763b;
        border-color: #14763b;
        box-shadow: 0 12px 26px rgba(20, 118, 59, .2);
    }

    .rsiHrCx__button:hover::before {
        animation: rsiHrCxShine .7s ease;
    }

    .rsiHrCx__button:hover span {
        transform: translate(2px, -2px);
    }
}

/* CSS-ONLY ANIMATION */
@keyframes rsiHrCxReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiHrCxBackFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes rsiHrCxFrontFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

@keyframes rsiHrCxGlow {
    from {
        opacity: .6;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

@keyframes rsiHrCxShine {
    to {
        transform: translateX(130%);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiHrCx {
        padding: 60px 24px;
    }

    .rsiHrCx__container {
        gap: 30px;
    }

    .rsiHrCx .rsiHrCx__heading {
        font-size: 34px;
    }

    .rsiHrCx .rsiHrCx__text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiHrCx {
        padding: 45px 20px;
    }

    .rsiHrCx__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
        max-width: 600px;
    }

    .rsiHrCx .rsiHrCx__heading {
        margin-bottom: 20px;
        font-size: clamp(29px, 6vw, 38px);
    }

    .rsiHrCx .rsiHrCx__text {
        margin-bottom: 17px;
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiHrCx__visual {
        width: 100%;
        max-width: 480px;
        margin-inline: auto;
    }

    .rsiHrCx .rsiHrCx__button {
        min-height: 52px;
        padding: 14px 24px;
    }
}

@media (max-width: 380px) {
    .rsiHrCx {
        padding-inline: 16px;
    }

    .rsiHrCx .rsiHrCx__heading {
        font-size: 28px;
    }

    .rsiHrCx .rsiHrCx__button {
        width: 100%;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiHrCx *,
    .rsiHrCx *::before,
    .rsiHrCx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION */
.rsiFinanceDx {
    --rsiFinanceDx-accent: #4562ff;
    --rsiFinanceDx-dark: #1c2029;
    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 95px) 24px;
    background: #f5f2eb;
    color: var(--rsiFinanceDx-dark);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiFinanceDx,
.rsiFinanceDx *,
.rsiFinanceDx *::before,
.rsiFinanceDx *::after {
    box-sizing: border-box;
}

.rsiFinanceDx__container {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(35px, 5vw, 85px);
    width: 100%;
    max-width: 1250px;
    margin-inline: auto;
}

/* TEXT */
.rsiFinanceDx__content {
    min-width: 0;
    animation: rsiFinanceDxReveal .85s .15s ease both;
}

.rsiFinanceDx .rsiFinanceDx__heading {
    margin: 0 0 23px;
    color: var(--rsiFinanceDx-dark);
    font-size: clamp(30px, 3vw, 44px);
    font-weight: 750;
    line-height: 1.17;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiFinanceDx__heading span {
    color: var(--rsiFinanceDx-accent);
}

.rsiFinanceDx .rsiFinanceDx__text {
    margin: 0 0 19px;
    color: #4b4e57;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* BUTTON */
.rsiFinanceDx .rsiFinanceDx__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 56px;
    max-width: 100%;
    margin-top: 6px;
    padding: 15px 26px;
    overflow: hidden;
    border: 1px solid #222329;
    border-radius: 12px;
    background: #222329;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(30, 35, 55, .08);
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiFinanceDx__button::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 25%,
        rgba(255, 255, 255, .2) 50%,
        transparent 75%
    );
    transform: translateX(-130%);
}

.rsiFinanceDx__button span {
    font-size: 21px;
    line-height: 1;
    transition: transform .25s ease;
}

.rsiFinanceDx__button:focus-visible {
    outline: 3px solid var(--rsiFinanceDx-accent);
    outline-offset: 5px;
}

/* IMAGE COMPOSITION */
.rsiFinanceDx__visual {
    position: relative;
    min-width: 0;
    animation: rsiFinanceDxReveal .9s ease both;
}

.rsiFinanceDx__glow {
    position: absolute;
    inset: 8% 2%;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(69, 98, 255, .1),
        rgba(146, 168, 230, .05) 45%,
        transparent 72%
    );
    animation: rsiFinanceDxGlow 7s ease-in-out infinite alternate;
}

.rsiFinanceDx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 620px;
    aspect-ratio: 620 / 540;
    margin-inline: auto;
}

.rsiFinanceDx .rsiFinanceDx__backImage,
.rsiFinanceDx .rsiFinanceDx__frontImage {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.rsiFinanceDx .rsiFinanceDx__backImage {
    top: 0;
    right: 0;
    z-index: 1;
    width: 88%;
    filter: drop-shadow(0 10px 18px rgba(37, 48, 85, .07));
    animation: rsiFinanceDxBackFloat 7s ease-in-out infinite;
}

.rsiFinanceDx .rsiFinanceDx__frontImage {
    top: 15%;
    left: 0;
    z-index: 2;
    width: 85%;
    filter: drop-shadow(0 14px 20px rgba(37, 48, 85, .09));
    animation: rsiFinanceDxFrontFloat 5.5s ease-in-out infinite;
}

/* HOVER */
@media (hover: hover) {
    .rsiFinanceDx .rsiFinanceDx__button:hover {
        transform: translateY(-3px);
        background: var(--rsiFinanceDx-accent);
        border-color: var(--rsiFinanceDx-accent);
        box-shadow: 0 12px 26px rgba(69, 98, 255, .22);
    }

    .rsiFinanceDx__button:hover::before {
        animation: rsiFinanceDxShine .7s ease;
    }

    .rsiFinanceDx__button:hover span {
        transform: translate(2px, -2px);
    }
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiFinanceDxReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiFinanceDxBackFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes rsiFinanceDxFrontFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

@keyframes rsiFinanceDxGlow {
    from {
        opacity: .6;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

@keyframes rsiFinanceDxShine {
    to {
        transform: translateX(130%);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiFinanceDx {
        padding: 60px 24px;
    }

    .rsiFinanceDx__container {
        gap: 30px;
    }

    .rsiFinanceDx .rsiFinanceDx__heading {
        font-size: 34px;
    }

    .rsiFinanceDx .rsiFinanceDx__text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* MOBILE: TEXT FIRST */
@media (max-width: 767px) {
    .rsiFinanceDx {
        padding: 45px 20px;
    }

    .rsiFinanceDx__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
        max-width: 600px;
    }

    .rsiFinanceDx__content {
        grid-row: 1;
    }

    .rsiFinanceDx__visual {
        grid-row: 2;
        width: 100%;
        max-width: 480px;
        margin-inline: auto;
    }

    .rsiFinanceDx .rsiFinanceDx__heading {
        margin-bottom: 20px;
        font-size: clamp(29px, 6vw, 38px);
    }

    .rsiFinanceDx .rsiFinanceDx__text {
        margin-bottom: 17px;
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiFinanceDx .rsiFinanceDx__button {
        min-height: 52px;
        padding: 14px 24px;
    }
}

@media (max-width: 380px) {
    .rsiFinanceDx {
        padding-inline: 16px;
    }

    .rsiFinanceDx .rsiFinanceDx__heading {
        font-size: 28px;
    }

    .rsiFinanceDx .rsiFinanceDx__button {
        width: 100%;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiFinanceDx *,
    .rsiFinanceDx *::before,
    .rsiFinanceDx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE, SCOPED SECTION STYLES */
.rsiHealthEx {
    --rsiHealthEx-accent: #099e99;
    --rsiHealthEx-dark: #16292d;
    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 95px) 24px;
    background: #e6fcff;
    color: var(--rsiHealthEx-dark);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiHealthEx,
.rsiHealthEx *,
.rsiHealthEx *::before,
.rsiHealthEx *::after {
    box-sizing: border-box;
}

.rsiHealthEx__container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    align-items: center;
    gap: clamp(32px, 5vw, 80px);
    width: 100%;
    max-width: 1250px;
    margin-inline: auto;
}

/* CONTENT */
.rsiHealthEx__content {
    min-width: 0;
    animation: rsiHealthExReveal .85s ease both;
}

.rsiHealthEx .rsiHealthEx__heading {
    margin: 0 0 23px;
    color: var(--rsiHealthEx-dark);
    font-size: clamp(30px, 3vw, 43px);
    font-weight: 750;
    line-height: 1.18;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiHealthEx__heading span {
    color: var(--rsiHealthEx-accent);
}

.rsiHealthEx .rsiHealthEx__text {
    margin: 0 0 19px;
    color: #425960;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* BUTTON */
.rsiHealthEx .rsiHealthEx__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 56px;
    max-width: 100%;
    margin-top: 6px;
    padding: 15px 26px;
    overflow: hidden;
    border: 1px solid #202729;
    border-radius: 12px;
    background: #202729;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(24, 66, 72, .08);
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiHealthEx__button::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        110deg,
        transparent 25%,
        rgba(255, 255, 255, .2) 50%,
        transparent 75%
    );
    transform: translateX(-130%);
}

.rsiHealthEx__button span {
    font-size: 21px;
    line-height: 1;
    transition: transform .25s ease;
}

.rsiHealthEx__button:focus-visible {
    outline: 3px solid var(--rsiHealthEx-accent);
    outline-offset: 5px;
}

/* TWO-IMAGE COMPOSITION */
.rsiHealthEx__visual {
    position: relative;
    min-width: 0;
    animation: rsiHealthExReveal .9s .15s ease both;
}

.rsiHealthEx__glow {
    position: absolute;
    inset: 7% 0;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(18, 184, 166, .12),
        rgba(94, 208, 218, .06) 45%,
        transparent 72%
    );
    animation: rsiHealthExGlow 7s ease-in-out infinite alternate;
}

/*
   Both images scale with this canvas.
   Adjust widths/top/right below to fit your original PNGs.
*/
.rsiHealthEx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 620px;
    aspect-ratio: 620 / 680;
    margin-inline: auto;
}

.rsiHealthEx .rsiHealthEx__backImage,
.rsiHealthEx .rsiHealthEx__frontImage {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Main mobile / dashboard behind */
.rsiHealthEx .rsiHealthEx__backImage {
    top: 0;
    left: 0;
    z-index: 1;
    width: 85%;
    filter: drop-shadow(0 10px 18px rgba(30, 88, 96, .07));
    animation: rsiHealthExBackFloat 7s ease-in-out infinite;
}

/* Healthcare chat / cards in front */
.rsiHealthEx .rsiHealthEx__frontImage {
    top: 10%;
    right: 0;
    z-index: 2;
    width: 52%;
    filter: drop-shadow(0 14px 20px rgba(30, 88, 96, .09));
    animation: rsiHealthExFrontFloat 5.5s ease-in-out infinite;
}

/* HOVER EFFECTS */
@media (hover: hover) {
    .rsiHealthEx .rsiHealthEx__button:hover {
        transform: translateY(-3px);
        border-color: #087e79;
        background: #087e79;
        box-shadow: 0 12px 26px rgba(8, 126, 121, .22);
    }

    .rsiHealthEx__button:hover::before {
        animation: rsiHealthExShine .7s ease;
    }

    .rsiHealthEx__button:hover span {
        transform: translate(2px, -2px);
    }
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiHealthExReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiHealthExBackFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes rsiHealthExFrontFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

@keyframes rsiHealthExGlow {
    from {
        opacity: .6;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

@keyframes rsiHealthExShine {
    to {
        transform: translateX(130%);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiHealthEx {
        padding: 60px 24px;
    }

    .rsiHealthEx__container {
        gap: 30px;
    }

    .rsiHealthEx .rsiHealthEx__heading {
        font-size: 33px;
    }

    .rsiHealthEx .rsiHealthEx__text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiHealthEx {
        padding: 45px 20px;
    }

    .rsiHealthEx__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
        max-width: 600px;
    }

    .rsiHealthEx .rsiHealthEx__heading {
        margin-bottom: 20px;
        font-size: clamp(29px, 6vw, 37px);
    }

    .rsiHealthEx .rsiHealthEx__text {
        margin-bottom: 17px;
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiHealthEx__visual {
        width: 100%;
        max-width: 460px;
        margin-inline: auto;
    }

    .rsiHealthEx .rsiHealthEx__button {
        min-height: 52px;
        padding: 14px 24px;
    }
}

@media (max-width: 380px) {
    .rsiHealthEx {
        padding-inline: 16px;
    }

    .rsiHealthEx .rsiHealthEx__heading {
        font-size: 28px;
    }

    .rsiHealthEx .rsiHealthEx__button {
        width: 100%;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiHealthEx *,
    .rsiHealthEx *::before,
    .rsiHealthEx *::after {
        animation: none !important;
        transition: none !important;
    }
}

/* UNIQUE SECTION STYLES */
.rsiRoiFx {
    --rsiRoiFx-accent: #685aee;
    --rsiRoiFx-ink: #202532;
    position: relative;
    isolation: isolate;
    padding: clamp(48px, 6vw, 90px) 24px;
    background: #fff;
    color: var(--rsiRoiFx-ink);
    font-family: Arial, Helvetica, sans-serif;
}

.rsiRoiFx,
.rsiRoiFx *,
.rsiRoiFx *::before,
.rsiRoiFx *::after {
    box-sizing: border-box;
}

.rsiRoiFx__container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

.rsiRoiFx .rsiRoiFx__heading {
    margin: 0;
    color: var(--rsiRoiFx-ink);
    font-size: clamp(30px, 3.5vw, 46px);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -.035em;
    text-align: center;
    animation: rsiRoiFxReveal .75s ease both;
}

.rsiRoiFx__heading span {
    color: var(--rsiRoiFx-accent);
}

.rsiRoiFx__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(35px, 6vw, 85px);
    margin-top: clamp(35px, 5vw, 60px);
}

/* TWO OVERLAPPING IMAGES */
.rsiRoiFx__visual {
    position: relative;
    min-width: 0;
    animation: rsiRoiFxReveal .85s .1s ease both;
}

.rsiRoiFx__glow {
    position: absolute;
    inset: 8%;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(
        ellipse,
        rgba(104, 90, 238, .09),
        rgba(33, 191, 132, .04) 45%,
        transparent 72%
    );
    animation: rsiRoiFxGlow 7s ease-in-out infinite alternate;
}

.rsiRoiFx__imageStack {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 570px;
    aspect-ratio: 570 / 520;
    margin-inline: auto;
}

.rsiRoiFx .rsiRoiFx__backImage,
.rsiRoiFx .rsiRoiFx__frontImage {
    position: absolute;
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Dashboard behind */
.rsiRoiFx .rsiRoiFx__backImage {
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    animation: rsiRoiFxBackFloat 7s ease-in-out infinite;
}

/* Robot and monitor in front */
.rsiRoiFx .rsiRoiFx__frontImage {
    top: 23%;
    right: 0;
    z-index: 2;
    width: 83%;
    filter: drop-shadow(0 12px 20px rgba(35, 40, 65, .08));
    animation: rsiRoiFxFrontFloat 5.5s ease-in-out infinite;
}

/* BENEFITS */
.rsiRoiFx__list {
    display: grid;
    gap: 14px;
    min-width: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiRoiFx__item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin: 0;
    padding: 17px 18px;
    border: 1px solid #eeedf5;
    border-radius: 15px;
    background: #fff;
    transition:
        transform .25s ease,
        border-color .25s ease,
        background-color .25s ease,
        box-shadow .25s ease;
    animation: rsiRoiFxReveal .7s ease backwards;
}

.rsiRoiFx__item:nth-child(1) { animation-delay: .15s; }
.rsiRoiFx__item:nth-child(2) { animation-delay: .23s; }
.rsiRoiFx__item:nth-child(3) { animation-delay: .31s; }
.rsiRoiFx__item:nth-child(4) { animation-delay: .39s; }
.rsiRoiFx__item:nth-child(5) { animation-delay: .47s; }
.rsiRoiFx__item:nth-child(6) { animation-delay: .55s; }

.rsiRoiFx__check {
    display: grid;
    flex: 0 0 34px;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid #e5e0ff;
    border-radius: 11px;
    background: #f1eeff;
    color: var(--rsiRoiFx-accent);
    transition: transform .25s ease;
}

.rsiRoiFx__check svg {
    display: block;
    width: 21px;
    height: 21px;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiRoiFx .rsiRoiFx__item p {
    min-width: 0;
    margin: 2px 0 0;
    color: #555b69;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
}

.rsiRoiFx__item strong {
    color: var(--rsiRoiFx-ink);
    font-weight: 600;
}

@media (hover: hover) {
    .rsiRoiFx__item:hover {
        transform: translateY(-3px);
        border-color: #d5ceff;
        background: #fcfbff;
        box-shadow: 0 10px 24px rgba(80, 65, 150, .07);
    }

    .rsiRoiFx__item:hover .rsiRoiFx__check {
        transform: rotate(-7deg);
    }
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiRoiFxReveal {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiRoiFxBackFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@keyframes rsiRoiFxFrontFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(10px); }
}

@keyframes rsiRoiFxGlow {
    from {
        opacity: .6;
        transform: scale(.95);
    }
    to {
        opacity: 1;
        transform: scale(1.06);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiRoiFx__layout {
        gap: 30px;
    }

    .rsiRoiFx__item {
        gap: 12px;
        padding: 14px;
    }

    .rsiRoiFx .rsiRoiFx__item p {
        font-size: 14px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiRoiFx {
        padding: 45px 20px;
    }

    .rsiRoiFx__layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 32px;
        max-width: 560px;
        margin-inline: auto;
        margin-top: 30px;
    }

    .rsiRoiFx__visual {
        width: 100%;
        max-width: 440px;
        margin-inline: auto;
    }

    .rsiRoiFx__list {
        gap: 12px;
    }

    .rsiRoiFx__item {
        padding: 15px;
    }
}

@media (max-width: 380px) {
    .rsiRoiFx {
        padding-inline: 16px;
    }

    .rsiRoiFx__check {
        flex-basis: 30px;
        width: 30px;
        height: 30px;
    }

    .rsiRoiFx__item {
        gap: 10px;
        padding: 13px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiRoiFx *,
    .rsiRoiFx *::before,
    .rsiRoiFx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* All styles are scoped to this section */
.rsiAppsGx {
    --rsiAppsGx-logo-width: 180px;
    --rsiAppsGx-logo-height: 105px;
    --rsiAppsGx-gap: 24px;
    --rsiAppsGx-speed: 55s;

    padding: clamp(45px, 6vw, 85px) 24px;
    background: #f9f9fb;
    color: #242630;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiAppsGx,
.rsiAppsGx *,
.rsiAppsGx *::before,
.rsiAppsGx *::after {
    box-sizing: border-box;
}

.rsiAppsGx__container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

.rsiAppsGx .rsiAppsGx__heading {
    max-width: 850px;
    margin: 0 auto;
    color: #242630;
    font-size: clamp(29px, 3.5vw, 46px);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -.035em;
    text-align: center;
}

.rsiAppsGx__heading span {
    display: block;
}

.rsiAppsGx .rsiAppsGx__description {
    max-width: 850px;
    margin: 25px auto 0;
    color: #626470;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.85;
    text-align: center;
}

/* Two animated rows */
.rsiAppsGx__sliders {
    display: grid;
    gap: 22px;
    margin-top: 42px;
}

.rsiAppsGx__row {
    min-width: 0;
    overflow: hidden;
    direction: ltr;
    -webkit-mask-image: linear-gradient(
        to right,
        transparent,
        #000 5%,
        #000 95%,
        transparent
    );
    mask-image: linear-gradient(
        to right,
        transparent,
        #000 5%,
        #000 95%,
        transparent
    );
}

.rsiAppsGx__track {
    display: flex;
    width: max-content;
    animation: rsiAppsGxScroll var(--rsiAppsGx-speed) linear infinite;
}

/* Identical groups include an identical trailing gap */
.rsiAppsGx .rsiAppsGx__group {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: var(--rsiAppsGx-gap);
    width: max-content;
    margin: 0;
    padding: 8px var(--rsiAppsGx-gap) 8px 0;
    list-style: none;
}

.rsiAppsGx .rsiAppsGx__group li {
    display: flex;
    flex: 0 0 var(--rsiAppsGx-logo-width);
    align-items: center;
    justify-content: center;
    width: var(--rsiAppsGx-logo-width);
    height: var(--rsiAppsGx-logo-height);
    margin: 0;
    padding: 18px;
    border: 1px solid #eeedf3;
    border-radius: 16px;
    background: #fff;
    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiAppsGx .rsiAppsGx__group img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 145px;
    max-height: 68px;
    object-fit: contain;
    transition: transform .3s ease;
}

/* Opposite direction */
.rsiAppsGx__row--reverse {
    --rsiAppsGx-speed: 60s;
}

.rsiAppsGx__row--reverse .rsiAppsGx__track {
    animation-direction: reverse;
}

/* Pause on hover */
.rsiAppsGx__sliders:hover .rsiAppsGx__track {
    animation-play-state: paused;
}

@media (hover: hover) {
    .rsiAppsGx .rsiAppsGx__group li:hover {
        border-color: #d2cbed;
        box-shadow: 0 5px 14px rgba(60, 45, 110, .06);
    }

    .rsiAppsGx__group li:hover img {
        transform: scale(1.08);
    }
}

@keyframes rsiAppsGxScroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

/* Tablet */
@media (max-width: 991px) {
    .rsiAppsGx {
        --rsiAppsGx-logo-width: 155px;
        --rsiAppsGx-logo-height: 94px;
        --rsiAppsGx-gap: 18px;
    }

    .rsiAppsGx__sliders {
        gap: 16px;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .rsiAppsGx {
        --rsiAppsGx-logo-width: 130px;
        --rsiAppsGx-logo-height: 82px;
        --rsiAppsGx-gap: 12px;
        padding: 45px 16px;
    }

    .rsiAppsGx .rsiAppsGx__heading {
        font-size: 29px;
    }

    .rsiAppsGx .rsiAppsGx__description {
        margin-top: 20px;
        font-size: 14px;
        line-height: 1.8;
    }

    .rsiAppsGx__sliders {
        gap: 10px;
        margin-top: 28px;
    }

    .rsiAppsGx .rsiAppsGx__group li {
        padding: 14px;
        border-radius: 12px;
    }

    .rsiAppsGx .rsiAppsGx__group img {
        max-height: 52px;
    }
}

/* Reduced motion: keep two manually scrollable rows */
@media (prefers-reduced-motion: reduce) {
    .rsiAppsGx__row {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .rsiAppsGx__track {
        animation: none;
        transform: none;
    }

    .rsiAppsGx .rsiAppsGx__group[aria-hidden="true"] {
        display: none;
    }

    .rsiAppsGx *,
    .rsiAppsGx *::before,
    .rsiAppsGx *::after {
        transition: none !important;
    }
}
.rsiOrbitHx {
    --rsiOrbitHx-accent: #6657e8;
    --rsiOrbitHx-duration: 42s;
    padding: clamp(48px, 6vw, 90px) 24px;
    background: #f3f4f6;
    color: #202634;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiOrbitHx,
.rsiOrbitHx *,
.rsiOrbitHx *::before,
.rsiOrbitHx *::after {
    box-sizing: border-box;
}

.rsiOrbitHx__container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

.rsiOrbitHx .rsiOrbitHx__heading {
    max-width: 850px;
    margin: 0 auto;
    font-size: clamp(29px, 3.6vw, 46px);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -.035em;
    color: #202634;
    text-align: center;
}

.rsiOrbitHx__heading span {
    display: block;
}

.rsiOrbitHx__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 55px;
    margin-top: 50px;
}

/* BENEFITS */
.rsiOrbitHx .rsiOrbitHx__benefits {
    display: grid;
    gap: 23px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiOrbitHx__benefits li {
    position: relative;
    margin: 0;
    padding-left: 30px;
    font-size: 16px;
    line-height: 1.7;
}

.rsiOrbitHx__benefits li::before {
    content: "✓";
    position: absolute;
    top: 3px;
    left: 0;
    display: grid;
    place-items: center;
    width: 21px;
    height: 21px;
    border-radius: 7px;
    background: #e8e5ff;
    color: #5948d6;
    font-size: 13px;
    font-weight: 700;
}

.rsiOrbitHx .rsiOrbitHx__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 54px;
    margin-top: 28px;
    padding: 15px 25px;
    border-radius: 12px;
    background: #22252c;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background .25s ease, transform .25s ease;
}

.rsiOrbitHx__button:hover {
    background: #5948d6;
    transform: translateY(-3px);
}

.rsiOrbitHx__button:focus-visible {
    outline: 3px solid #6657e8;
    outline-offset: 5px;
}

/* RESPONSIVE ORBIT CANVAS */
.rsiOrbitHx__visual {
    min-width: 0;
}

.rsiOrbitHx__scene {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 560px;
    aspect-ratio: 1;
    margin-inline: auto;
}

.rsiOrbitHx__halo {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(101, 88, 232, .13),
        rgba(70, 205, 178, .04) 45%,
        transparent 70%
    );
}

/* Fine instrument-style ticks */
.rsiOrbitHx__ticks {
    position: absolute;
    inset: 16%;
    border-radius: 50%;
    background: repeating-conic-gradient(
        from 0deg,
        rgba(43, 54, 76, .35) 0deg .45deg,
        transparent .45deg 3deg
    );
    -webkit-mask-image: radial-gradient(
        circle,
        transparent 57%,
        #000 58% 68%,
        transparent 69%
    );
    mask-image: radial-gradient(
        circle,
        transparent 57%,
        #000 58% 68%,
        transparent 69%
    );
    animation: rsiOrbitHxSpin 90s linear infinite reverse;
}

/* Concentric rings */
.rsiOrbitHx__ring {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.rsiOrbitHx__ring--outer {
    inset: 7%;
    border: 1px dashed #bfc5d0;
    animation: rsiOrbitHxSpin 80s linear infinite;
}

.rsiOrbitHx__ring--middle {
    inset: 13%;
    border: 2px solid #dce0e8;
    border-top-color: #8d82eb;
    border-bottom-color: #75cdbb;
    animation: rsiOrbitHxSpin 26s linear infinite reverse;
}

.rsiOrbitHx__ring--inner {
    inset: 24%;
    border: 1px dashed #aeb7c8;
    animation: rsiOrbitHxSpin 35s linear infinite;
}

/* Dots traveling around the rings */
.rsiOrbitHx__satellite {
    position: absolute;
    inset: 7%;
    border-radius: 50%;
    animation: rsiOrbitHxSpin 16s linear infinite;
}

.rsiOrbitHx__satellite span {
    position: absolute;
    top: -4px;
    left: calc(50% - 4px);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #7463ee;
    box-shadow: 0 0 14px rgba(116, 99, 238, .5);
}

.rsiOrbitHx__satellite--two {
    inset: 24%;
    animation-duration: 12s;
    animation-direction: reverse;
}

.rsiOrbitHx__satellite--two span {
    background: #12b69c;
    box-shadow: 0 0 14px rgba(18, 182, 156, .5);
}

/* Rotating icon carrier */
.rsiOrbitHx__orbit {
    position: absolute;
    inset: 13%;
    border-radius: 50%;
    animation: rsiOrbitHxSpin var(--rsiOrbitHx-duration) linear infinite;
}

.rsiOrbitHx__node {
    position: absolute;
    inset: 0;
    transform: rotate(var(--rsiOrbitHx-angle));
}

/*
   Static angle correction + reverse animation keep
   each icon upright while its position orbits.
*/
.rsiOrbitHx__nodeFace {
    position: absolute;
    top: 0;
    left: 50%;
    display: grid;
    place-items: center;
    width: clamp(32px, 4vw, 48px);
    aspect-ratio: 1;
    border: 1px solid #e1e3ec;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 5px 16px rgba(38, 43, 65, .08);
    font-size: clamp(16px, 2vw, 23px);
    translate: -50% -50%;
    rotate: calc(0deg - var(--rsiOrbitHx-angle));
    animation: rsiOrbitHxCounterSpin var(--rsiOrbitHx-duration) linear infinite;
}

/* Center */
.rsiOrbitHx__core {
    position: absolute;
    inset: 39%;
    display: grid;
    place-items: center;
    border: 1px solid #fff;
    border-radius: 50%;
    background: #edf0f5;
    box-shadow:
        0 12px 28px rgba(38, 43, 65, .1),
        inset 0 2px 10px #fff;
}

.rsiOrbitHx__core::before,
.rsiOrbitHx__core::after {
    content: "";
    position: absolute;
    inset: -8%;
    border: 1px solid rgba(102, 87, 232, .28);
    border-radius: 50%;
    animation: rsiOrbitHxPulse 4s ease-out infinite;
}

.rsiOrbitHx__core::after {
    animation-delay: 2s;
}

.rsiOrbitHx__coreRim {
    position: absolute;
    inset: 15%;
    border-radius: 50%;
    background: conic-gradient(
        #6a5cff,
        #30d9c0,
        #89d1ff,
        #ff8eb9,
        #6a5cff
    );
    animation: rsiOrbitHxSpin 6s linear infinite;
}

.rsiOrbitHx__coreFace {
    position: absolute;
    inset: 20%;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #17202d;
    color: #7fffe0;
}

.rsiOrbitHx__coreFace svg {
    display: block;
    width: 76%;
    height: 76%;
}

/* CSS ANIMATIONS */
@keyframes rsiOrbitHxSpin {
    to { transform: rotate(360deg); }
}

@keyframes rsiOrbitHxCounterSpin {
    to { transform: rotate(-360deg); }
}

@keyframes rsiOrbitHxPulse {
    0% {
        transform: scale(1);
        opacity: .65;
    }
    100% {
        transform: scale(1.8);
        opacity: 0;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiOrbitHx {
        padding: 45px 18px;
    }

    .rsiOrbitHx__layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
        max-width: 560px;
        margin: 32px auto 0;
    }

    .rsiOrbitHx__scene {
        max-width: 440px;
    }

    .rsiOrbitHx__benefits li {
        font-size: 15px;
    }

    .rsiOrbitHx .rsiOrbitHx__benefits {
        gap: 19px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiOrbitHx *,
    .rsiOrbitHx *::before,
    .rsiOrbitHx *::after {
        animation: none !important;
        transition: none !important;
    }

    .rsiOrbitHx__core::before,
    .rsiOrbitHx__core::after {
        display: none;
    }
}
.New_classHeading{
    font-size: 45px;
}
/* UNIQUE HEADER STYLES */
.rsiPaymentHeroZ9 {
    padding: clamp(40px, 5vw, 80px) 24px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiPaymentHeroZ9,
.rsiPaymentHeroZ9 *,
.rsiPaymentHeroZ9 *::before,
.rsiPaymentHeroZ9 *::after {
    box-sizing: border-box;
}

.rsiPaymentHeroZ9__wrap {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(25px, 3vw, 55px);
    width: 100%;
    max-width: 1320px;
    min-height: 520px;
    margin-inline: auto;
}

/* TEXT */
.rsiPaymentHeroZ9__content {
    min-width: 0;
}

.rsiPaymentHeroZ9 .rsiPaymentHeroZ9__heading {
    margin: 0;
    padding: 0;
    font-family: inherit;
    text-transform: uppercase;
}

.rsiPaymentHeroZ9__small {
    display: block;
    color: #454545;
    font-size: clamp(21px, 2.15vw, 33px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.035em;
}

.rsiPaymentHeroZ9__large {
    display: block;
    margin-top: 2px;
    color: #2b65ff;
    font-size: clamp(38px, 4.4vw, 68px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.045em;
}

.rsiPaymentHeroZ9 .rsiPaymentHeroZ9__location {
    margin: 12px 0 0 45px;
    color: #858585;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    text-transform: uppercase;
}

/* RIGHT IMAGE */
.rsiPaymentHeroZ9__visual {
    min-width: 0;
    width: 100%;
    max-width: 650px;
    margin-inline: auto;
}

.rsiPaymentHeroZ9 .rsiPaymentHeroZ9__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: contain;
    animation: rsiPaymentHeroZ9Float 6s ease-in-out infinite;
}

/* ONLY THE IMAGE ANIMATES */
@keyframes rsiPaymentHeroZ9Float {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiPaymentHeroZ9__wrap {
        min-height: 400px;
        gap: 25px;
    }

    .rsiPaymentHeroZ9__small {
        font-size: clamp(20px, 2.5vw, 26px);
    }

    .rsiPaymentHeroZ9__large {
        font-size: clamp(34px, 4.4vw, 46px);
    }

    .rsiPaymentHeroZ9 .rsiPaymentHeroZ9__location {
        margin-left: 20px;
        font-size: 14px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiPaymentHeroZ9 {
        padding: 45px 20px 30px;
    }

    .rsiPaymentHeroZ9__wrap {
        grid-template-columns: minmax(0, 1fr);
        min-height: auto;
        max-width: 580px;
        gap: 35px;
    }

    .rsiPaymentHeroZ9__content {
        text-align: center;
    }

    .rsiPaymentHeroZ9__small {
        font-size: clamp(19px, 4.5vw, 26px);
    }

    .rsiPaymentHeroZ9__large {
        margin-top: 7px;
        font-size: clamp(34px, 7.8vw, 54px);
        line-height: 1.1;
    }

    .rsiPaymentHeroZ9 .rsiPaymentHeroZ9__location {
        margin: 12px 0 0;
        font-size: 13px;
    }

    .rsiPaymentHeroZ9__visual {
        max-width: 470px;
    }
}

/* SMALL MOBILE */
@media (max-width: 360px) {
    .rsiPaymentHeroZ9 {
        padding-inline: 14px;
    }

    .rsiPaymentHeroZ9__small {
        font-size: 18px;
    }

    .rsiPaymentHeroZ9__large {
        font-size: 31px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiPaymentHeroZ9 .rsiPaymentHeroZ9__image {
        animation: none;
    }
}
/* UNIQUE SECTION STYLES */
.rsiCashIntroQx {
    padding: clamp(45px, 6vw, 85px) 24px;
    background: #f5f5f5;
    color: #141414;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiCashIntroQx,
.rsiCashIntroQx *,
.rsiCashIntroQx *::before,
.rsiCashIntroQx *::after {
    box-sizing: border-box;
}

.rsiCashIntroQx__container {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(35px, 4vw, 65px);
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

/* TEXT */
.rsiCashIntroQx__content {
    min-width: 0;
}

.rsiCashIntroQx .rsiCashIntroQx__eyebrow {
    margin: 0 0 9px;
    color: #30343b;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
}

.rsiCashIntroQx .rsiCashIntroQx__heading {
    margin: 0;
    color: #141414;
    font-size: clamp(32px, 3.5vw, 52px);
    font-weight: 750;
    line-height: 1.12;
    letter-spacing: -.04em;
    overflow-wrap: break-word;
}

.rsiCashIntroQx__description {
    margin-top: 35px;
}

.rsiCashIntroQx .rsiCashIntroQx__description p {
    margin: 0 0 18px;
    color: #526179;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.65;
}

.rsiCashIntroQx .rsiCashIntroQx__description p:last-child {
    margin-bottom: 0;
}

/* IMAGE COMPOSITION */
.rsiCashIntroQx__visual {
    min-width: 0;
    width: 100%;
    max-width: 480px;
    margin-inline: auto;
}

.rsiCashIntroQx__images {
    position: relative;
    width: 100%;
    aspect-ratio: 480 / 450;
}

.rsiCashIntroQx__back,
.rsiCashIntroQx__front {
    position: absolute;
    overflow: hidden;
    border: 3px solid #fff;
    background: #e5e8eb;
    box-shadow: 0 12px 28px rgba(30, 40, 55, .09);
}

.rsiCashIntroQx__back {
    top: 0;
    left: 0;
    z-index: 1;
    width: 78%;
    height: 85%;
    animation: rsiCashIntroQxBackFloat 7s ease-in-out infinite;
}

.rsiCashIntroQx__front {
    right: 0;
    bottom: 0;
    z-index: 2;
    width: 67%;
    height: 46%;
    animation: rsiCashIntroQxFrontFloat 6s ease-in-out infinite;
}

.rsiCashIntroQx .rsiCashIntroQx__images img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .5s ease;
}

@media (hover: hover) {
    .rsiCashIntroQx__back:hover img,
    .rsiCashIntroQx__front:hover img {
        transform: scale(1.04);
    }
}

/* CSS-ONLY IMAGE ANIMATIONS */
@keyframes rsiCashIntroQxBackFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}

@keyframes rsiCashIntroQxFrontFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(8px);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiCashIntroQx__container {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
        gap: 30px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__heading {
        font-size: 36px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__eyebrow {
        font-size: 16px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__description p {
        font-size: 15px;
    }

    .rsiCashIntroQx__description {
        margin-top: 24px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiCashIntroQx {
        padding: 45px 20px;
    }

    .rsiCashIntroQx__container {
        grid-template-columns: minmax(0, 1fr);
        max-width: 580px;
        gap: 35px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__heading {
        font-size: clamp(30px, 6.5vw, 40px);
        line-height: 1.16;
    }

    .rsiCashIntroQx .rsiCashIntroQx__eyebrow {
        margin-bottom: 10px;
        font-size: 15px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__description p {
        font-size: 15px;
        line-height: 1.75;
    }

    .rsiCashIntroQx__visual {
        max-width: 440px;
    }
}

@media (max-width: 360px) {
    .rsiCashIntroQx {
        padding-inline: 16px;
    }

    .rsiCashIntroQx .rsiCashIntroQx__heading {
        font-size: 28px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiCashIntroQx *,
    .rsiCashIntroQx *::before,
    .rsiCashIntroQx *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION */
.rsiClientStripT8 {
    --rsiClientStripT8-track-width: 400%;
    padding: 45px 24px 30px;
    background: #f6f8fb;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiClientStripT8,
.rsiClientStripT8 *,
.rsiClientStripT8 *::before,
.rsiClientStripT8 *::after {
    box-sizing: border-box;
}

.rsiClientStripT8__wrap {
    width: 100%;
    max-width: 1400px;
    margin-inline: auto;
}

/* HEADING */
.rsiClientStripT8 .rsiClientStripT8__heading {
    margin: 0 0 30px;
    color: #202634;
    font-family: inherit;
    font-size: clamp(24px, 2.6vw, 36px);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.03em;
    text-align: center;
}

.rsiClientStripT8__eyebrow {
    display: block;
    margin-bottom: 10px;
    color: #68758b;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.rsiClientStripT8__highlight {
    color: #2b65ff;
}

.rsiClientStripT8__heading::after {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    margin: 16px auto 0;
    border-radius: 5px;
    background: linear-gradient(90deg, #2b65ff, #8db5ff);
    animation: rsiClientStripT8HeadingLine .8s ease both;
}

/* SINGLE ROW: 5 LOGOS VISIBLE ON DESKTOP */
.rsiClientStripT8__slider {
    width: 100%;
    overflow: hidden;
    direction: ltr;
}

.rsiClientStripT8__track {
    display: flex;
    width: var(--rsiClientStripT8-track-width);
    animation: rsiClientStripT8Scroll 35s linear infinite;
}

.rsiClientStripT8 .rsiClientStripT8__group {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    flex: 0 0 50%;
    width: 50%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiClientStripT8 .rsiClientStripT8__group li {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 100px;
    margin: 0;
    padding: 15px 22px;
}

.rsiClientStripT8 .rsiClientStripT8__group img {
    display: block;
    width: 100%;
    max-width: 175px;
    height: 65px;
    object-fit: contain;
    transition: transform .3s ease;
}

/* PAUSE ON HOVER */
@media (hover: hover) {
    .rsiClientStripT8__slider:hover .rsiClientStripT8__track {
        animation-play-state: paused;
    }

    .rsiClientStripT8__group li:hover img {
        transform: scale(1.08);
    }
}

/* CSS ANIMATIONS */
@keyframes rsiClientStripT8Scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

@keyframes rsiClientStripT8HeadingLine {
    from {
        opacity: 0;
        transform: scaleX(0);
    }
    to {
        opacity: 1;
        transform: scaleX(1);
    }
}

/* TABLET: 4 LOGOS VISIBLE */
@media (max-width: 991px) {
    .rsiClientStripT8 {
        --rsiClientStripT8-track-width: 500%;
    }

    .rsiClientStripT8 .rsiClientStripT8__group li {
        padding: 14px 18px;
    }
}

/* MOBILE: 2 LOGOS VISIBLE */
@media (max-width: 575px) {
    .rsiClientStripT8 {
        --rsiClientStripT8-track-width: 1000%;
        padding: 32px 16px 22px;
    }

    .rsiClientStripT8 .rsiClientStripT8__heading {
        margin-bottom: 22px;
        font-size: 25px;
    }

    .rsiClientStripT8__eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .rsiClientStripT8 .rsiClientStripT8__group li {
        height: 85px;
        padding: 12px 16px;
    }

    .rsiClientStripT8 .rsiClientStripT8__group img {
        height: 55px;
    }
}

/* REDUCED MOTION: MANUAL SCROLL, SAME LOGO SIZES */
@media (prefers-reduced-motion: reduce) {
    .rsiClientStripT8__slider {
        overflow-x: auto;
    }

    .rsiClientStripT8__track {
        width: calc(var(--rsiClientStripT8-track-width) / 2);
        animation: none;
    }

    .rsiClientStripT8 .rsiClientStripT8__group {
        flex-basis: 100%;
        width: 100%;
    }

    .rsiClientStripT8 .rsiClientStripT8__group[aria-hidden="true"] {
        display: none;
    }

    .rsiClientStripT8__heading::after {
        animation: none;
    }

    .rsiClientStripT8 .rsiClientStripT8__group img {
        transition: none;
    }
}
/* UNIQUE SECTION STYLES */
.rsiBillingOpsW7 {
    padding: clamp(45px, 6vw, 85px) 24px;
    background: #fff;
    color: #536176;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiBillingOpsW7,
.rsiBillingOpsW7 *,
.rsiBillingOpsW7 *::before,
.rsiBillingOpsW7 *::after {
    box-sizing: border-box;
}

.rsiBillingOpsW7__container {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    align-items: center;
    gap: clamp(35px, 5vw, 85px);
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

/* ORIGINAL IMAGE */
.rsiBillingOpsW7__visual {
    min-width: 0;
    width: 100%;
    max-width: 460px;
    margin-inline: auto;
}

.rsiBillingOpsW7 .rsiBillingOpsW7__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: contain;
    animation: rsiBillingOpsW7Float 6s ease-in-out infinite;
}

/* TEXT CONTENT */
.rsiBillingOpsW7__content {
    min-width: 0;
    animation: rsiBillingOpsW7Reveal .8s ease both;
}

.rsiBillingOpsW7 .rsiBillingOpsW7__heading {
    margin: 0 0 29px;
    color: #2c67ff;
    font-family: inherit;
    font-size: clamp(27px, 2.5vw, 50px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiBillingOpsW7 .rsiBillingOpsW7__text {
    margin: 0 0 19px;
    color: #59677b;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.75;
}

.rsiBillingOpsW7 .rsiBillingOpsW7__text:last-child {
    margin-bottom: 0;
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiBillingOpsW7Float {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes rsiBillingOpsW7Reveal {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiBillingOpsW7__container {
        gap: 32px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    }

    .rsiBillingOpsW7 .rsiBillingOpsW7__heading {
        margin-bottom: 22px;
        font-size: 29px;
    }

    .rsiBillingOpsW7 .rsiBillingOpsW7__text {
        font-size: 15px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiBillingOpsW7 {
        padding: 42px 20px;
    }

    .rsiBillingOpsW7__container {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
        max-width: 580px;
    }

    .rsiBillingOpsW7__visual {
        max-width: 350px;
    }

    .rsiBillingOpsW7 .rsiBillingOpsW7__heading {
        font-size: clamp(27px, 6vw, 33px);
        line-height: 1.25;
        margin-bottom: 20px;
    }

    .rsiBillingOpsW7 .rsiBillingOpsW7__text {
        font-size: 15px;
        line-height: 1.8;
        margin-bottom: 17px;
    }
}

@media (max-width: 360px) {
    .rsiBillingOpsW7 {
        padding-inline: 16px;
    }

    .rsiBillingOpsW7 .rsiBillingOpsW7__heading {
        font-size: 25px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiBillingOpsW7 *,
    .rsiBillingOpsW7 *::before,
    .rsiBillingOpsW7 *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION STYLES */
.rsiWhyKioskY6 {
    --rsiWhyKioskY6-blue: #2864fa;
    --rsiWhyKioskY6-yellow: #ffdc48;
    padding: clamp(48px, 6vw, 85px) 24px;
    background: var(--rsiWhyKioskY6-blue);
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiWhyKioskY6,
.rsiWhyKioskY6 *,
.rsiWhyKioskY6 *::before,
.rsiWhyKioskY6 *::after {
    box-sizing: border-box;
}

.rsiWhyKioskY6__container {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    align-items: start;
    gap: clamp(35px, 4vw, 65px);
    width: 100%;
    max-width: 1320px;
    margin-inline: auto;
}

/* HEADING AND TEXT */
.rsiWhyKioskY6__content {
    min-width: 0;
    padding-top: 100px;
}

.rsiWhyKioskY6 .rsiWhyKioskY6__heading {
    margin: 0 0 20px;
    color: #fff;
    font-family: inherit;
    font-size: clamp(28px, 2.5vw, 55px);
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiWhyKioskY6__yellow {
    display: block;
    color: var(--rsiWhyKioskY6-yellow);
}

.rsiWhyKioskY6 .rsiWhyKioskY6__description {
    max-width: 720px;
    margin: 0;
    color: #fff;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
}

/* FOUR ICONS */
.rsiWhyKioskY6 .rsiWhyKioskY6__features {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(16px, 3vw, 45px);
    margin: 42px 0 0;
    padding: 0;
    list-style: none;
}

.rsiWhyKioskY6__feature {
    display: flex;
    justify-content: center;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.rsiWhyKioskY6__icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 120px;
    max-width: 100%;
    aspect-ratio: 1;
    border: 2px solid rgba(255, 255, 255, .85);
    border-radius: 50%;
    background: rgba(255, 255, 255, .025);
    transition:
        transform .3s ease,
        background-color .3s ease,
        box-shadow .3s ease;
}

/* Subtle outward ripple */
.rsiWhyKioskY6__icon::after {
    content: "";
    position: absolute;
    inset: -2px;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 50%;
    pointer-events: none;
    animation: rsiWhyKioskY6Ripple 4.8s ease-out infinite;
}

.rsiWhyKioskY6__feature:nth-child(2) .rsiWhyKioskY6__icon::after {
    animation-delay: 1.2s;
}

.rsiWhyKioskY6__feature:nth-child(3) .rsiWhyKioskY6__icon::after {
    animation-delay: 2.4s;
}

.rsiWhyKioskY6__feature:nth-child(4) .rsiWhyKioskY6__icon::after {
    animation-delay: 3.6s;
}

.rsiWhyKioskY6 .rsiWhyKioskY6__icon img {
    display: block;
    width: 90%;
    height: 90%;
    object-fit: contain;
}

/* ORIGINAL RIGHT ARTWORK */
.rsiWhyKioskY6__visual {
    min-width: 0;
    width: 100%;
    max-width: 530px;
    margin-inline: auto;
}

.rsiWhyKioskY6 .rsiWhyKioskY6__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: contain;
    animation: rsiWhyKioskY6Float 6s ease-in-out infinite;
}

@media (hover: hover) {
    .rsiWhyKioskY6__icon:hover {
        transform: translateY(-5px);
        background: rgba(255, 255, 255, .1);
        box-shadow: 0 12px 28px rgba(12, 38, 120, .18);
    }
}

/* CSS-ONLY ANIMATION */
@keyframes rsiWhyKioskY6Float {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes rsiWhyKioskY6Ripple {
    0% {
        transform: scale(1);
        opacity: 0;
    }

    12% {
        opacity: .55;
    }

    65%, 100% {
        transform: scale(1.2);
        opacity: 0;
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiWhyKioskY6__container {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
        gap: 30px;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__heading {
        font-size: 29px;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__description {
        font-size: 15px;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__features {
        gap: 14px;
        margin-top: 30px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiWhyKioskY6 {
        padding: 45px 20px;
    }

    .rsiWhyKioskY6__container {
        grid-template-columns: minmax(0, 1fr);
        max-width: 580px;
        gap: 40px;
    }

    .rsiWhyKioskY6__content {
        padding-top: 0;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__heading {
        font-size: clamp(28px, 6vw, 35px);
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__description {
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__features {
        gap: 14px;
        margin-top: 30px;
    }

    .rsiWhyKioskY6__visual {
        max-width: 420px;
    }
}

/* SMALL MOBILE: TWO ICONS PER ROW */
@media (max-width: 380px) {
    .rsiWhyKioskY6 {
        padding-inline: 16px;
    }

    .rsiWhyKioskY6 .rsiWhyKioskY6__features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .rsiWhyKioskY6__icon {
        width: 95px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiWhyKioskY6 *,
    .rsiWhyKioskY6 *::before,
    .rsiWhyKioskY6 *::after {
        animation: none !important;
        transition: none !important;
    }

    .rsiWhyKioskY6__icon::after {
        display: none;
    }
}
/* UNIQUE, SCOPED STYLES */
.rsiKioskBenefitsB6 {
    --rsiKioskBenefitsB6-blue: #2b68ff;
    padding: clamp(40px, 5vw, 75px) 24px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiKioskBenefitsB6,
.rsiKioskBenefitsB6 *,
.rsiKioskBenefitsB6 *::before,
.rsiKioskBenefitsB6 *::after {
    box-sizing: border-box;
}

.rsiKioskBenefitsB6__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    max-width: 1260px;
    margin-inline: auto;
}

/* ASYMMETRIC BOXES LIKE THE REFERENCE */
.rsiKioskBenefitsB6__card {
    position: relative;
    isolation: isolate;
    min-width: 0;
    padding: 24px 22px 30px;
    overflow: hidden;
    border: 1px solid #3980ff;
    border-radius: 70px 0 32px 0;
    background: linear-gradient(135deg, #fafafa, #f1f2f4);
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
    animation: rsiKioskBenefitsB6Reveal .75s ease backwards;
}

.rsiKioskBenefitsB6__card:nth-child(1) { animation-delay: .05s; }
.rsiKioskBenefitsB6__card:nth-child(2) { animation-delay: .13s; }
.rsiKioskBenefitsB6__card:nth-child(3) { animation-delay: .21s; }
.rsiKioskBenefitsB6__card:nth-child(4) { animation-delay: .29s; }
.rsiKioskBenefitsB6__card:nth-child(5) { animation-delay: .37s; }
.rsiKioskBenefitsB6__card:nth-child(6) { animation-delay: .45s; }

/* SOFT HOVER GLOW */
.rsiKioskBenefitsB6__card::before {
    content: "";
    position: absolute;
    top: -60px;
    right: -60px;
    z-index: -1;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(43, 104, 255, .11),
        transparent 70%
    );
    opacity: 0;
    transition: opacity .3s ease;
}

/* TOP RIGHT ICON */
.rsiKioskBenefitsB6__icon {
    display: grid;
    place-items: center;
    width: 78px;
    height: 78px;
    margin: 0 0 33px auto;
    color: #343434;
}

.rsiKioskBenefitsB6__icon svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    stroke: currentColor;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiKioskBenefitsB6__icon .rsiKioskBenefitsB6__blue {
    stroke: var(--rsiKioskBenefitsB6-blue);
}

.rsiKioskBenefitsB6__icon text {
    fill: var(--rsiKioskBenefitsB6-blue);
    stroke: none;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 700;
}

.rsiKioskBenefitsB6 .rsiKioskBenefitsB6__card h3 {
    margin: 0 0 9px;
    color: #404044;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.025em;
    text-transform: uppercase;
    overflow-wrap: break-word;
}

.rsiKioskBenefitsB6 .rsiKioskBenefitsB6__card p {
    margin: 0;
    color: #526179;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.65;
}

/* SMALL ICON ANIMATIONS */
.rsiKioskBenefitsB6__clockHand {
    transform-origin: 40px 44px;
    animation: rsiKioskBenefitsB6Clock 12s linear infinite;
}

.rsiKioskBenefitsB6__note {
    animation: rsiKioskBenefitsB6Note 4s ease-in-out infinite;
}

.rsiKioskBenefitsB6__coin {
    animation: rsiKioskBenefitsB6Coin 4s ease-in-out infinite;
}

@media (hover: hover) {
    .rsiKioskBenefitsB6__card:hover {
        transform: translateY(-7px);
        border-color: #1557eb;
        box-shadow: 0 18px 35px rgba(30, 78, 170, .12);
    }

    .rsiKioskBenefitsB6__card:hover::before {
        opacity: 1;
    }
}

/* CSS-ONLY ANIMATION */
@keyframes rsiKioskBenefitsB6Reveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rsiKioskBenefitsB6Clock {
    to {
        transform: rotate(360deg);
    }
}

@keyframes rsiKioskBenefitsB6Note {
    0%, 100% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(-5px);
    }
}

@keyframes rsiKioskBenefitsB6Coin {
    0%, 100% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(4px);
    }
}

/* TABLET: TWO COLUMNS */
@media (max-width: 991px) {
    .rsiKioskBenefitsB6__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

/* MOBILE: ONE COLUMN */
@media (max-width: 575px) {
    .rsiKioskBenefitsB6 {
        padding: 38px 18px;
    }

    .rsiKioskBenefitsB6__grid {
        grid-template-columns: minmax(0, 1fr);
        max-width: 440px;
        gap: 18px;
    }

    .rsiKioskBenefitsB6__card {
        padding: 22px 20px 27px;
        border-radius: 55px 0 28px 0;
    }

    .rsiKioskBenefitsB6__icon {
        width: 67px;
        height: 67px;
        margin-bottom: 24px;
    }

    .rsiKioskBenefitsB6 .rsiKioskBenefitsB6__card h3 {
        font-size: 19px;
    }

    .rsiKioskBenefitsB6 .rsiKioskBenefitsB6__card p {
        font-size: 15px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiKioskBenefitsB6 *,
    .rsiKioskBenefitsB6 *::before,
    .rsiKioskBenefitsB6 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiPmsSliderN6 {
    --rsiPmsSliderN6-blue: #438fc8;
    padding: 30px 24px 24px;
    background: #fff;
    color: #151515;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiPmsSliderN6,
.rsiPmsSliderN6 *,
.rsiPmsSliderN6 *::before,
.rsiPmsSliderN6 *::after {
    box-sizing: border-box;
}

.rsiPmsSliderN6__slides {
    display: grid;
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
}

/* All slides share the same grid cell, keeping height stable */
.rsiPmsSliderN6 .rsiPmsSliderN6__slide {
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    align-items: center;
    gap: 40px;
    min-width: 0;
    min-height: 450px;
    margin: 0;
    padding: 0;
    visibility: hidden;
    pointer-events: none;
}

/* Reserve layout space while hiding inactive slides */
.rsiPmsSliderN6 .rsiPmsSliderN6__slide[hidden] {
    display: grid;
}

.rsiPmsSliderN6 .rsiPmsSliderN6__slide--active {
    visibility: visible;
    pointer-events: auto;
}

.rsiPmsSliderN6__text,
.rsiPmsSliderN6__visual {
    min-width: 0;
}

.rsiPmsSliderN6 .rsiPmsSliderN6__text h2 {
    margin: 0 0 17px;
    color: #151515;
    font-size: clamp(27px, 2.7vw, 38px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: .025em;
    text-transform: uppercase;
    overflow-wrap: break-word;
}

.rsiPmsSliderN6 .rsiPmsSliderN6__text p {
    max-width: 720px;
    margin: 0;
    color: #526179;
    font-size: clamp(17px, 1.6vw, 22px);
    font-weight: 400;
    line-height: 1.5;
}

.rsiPmsSliderN6__visual {
    display: grid;
    place-items: center;
    padding: 12px 0;
}

.rsiPmsSliderN6 .rsiPmsSliderN6__visual img {
    display: block;
    width: 100%;
    max-width: 500px;
    height: 420px;
    object-fit: contain;
}

/* CSS animations restart on every slide change */
.rsiPmsSliderN6__slide--active .rsiPmsSliderN6__text {
    animation: rsiPmsSliderN6TextIn .75s ease both;
}

.rsiPmsSliderN6__slide--active .rsiPmsSliderN6__visual {
    animation: rsiPmsSliderN6ImageIn .85s ease both;
}

.rsiPmsSliderN6__slide--active .rsiPmsSliderN6__visual img {
    animation: rsiPmsSliderN6Float 6s .85s ease-in-out infinite;
}

/* DOT NAVIGATION */
.rsiPmsSliderN6__controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 15px;
}

.rsiPmsSliderN6__dots {
    display: flex;
    align-items: center;
    gap: 2px;
}

.rsiPmsSliderN6 .rsiPmsSliderN6__dot {
    display: grid;
    place-items: center;
    width: 24px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
    appearance: none;
}

.rsiPmsSliderN6__dot::before {
    content: "";
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #484848;
    transition: background .25s ease, transform .25s ease;
}

.rsiPmsSliderN6__dot[aria-current="true"]::before {
    background: var(--rsiPmsSliderN6-blue);
    transform: scale(1.1);
}

.rsiPmsSliderN6 .rsiPmsSliderN6__pause {
    padding: 6px 10px;
    border: 1px solid #dbe1e9;
    border-radius: 6px;
    background: #fff;
    color: #526179;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}

.rsiPmsSliderN6__controls button:focus-visible {
    outline: 2px solid var(--rsiPmsSliderN6-blue);
    outline-offset: 3px;
}

@keyframes rsiPmsSliderN6TextIn {
    from { opacity: 0; transform: translateX(-22px); }
    to   { opacity: 1; transform: translateX(0); }
}

@keyframes rsiPmsSliderN6ImageIn {
    from { opacity: 0; transform: translateX(22px); }
    to   { opacity: 1; transform: translateX(0); }
}

@keyframes rsiPmsSliderN6Float {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-8px); }
}

@media (max-width: 991px) {
    .rsiPmsSliderN6 .rsiPmsSliderN6__slide {
        min-height: 380px;
        gap: 25px;
    }

    .rsiPmsSliderN6 .rsiPmsSliderN6__visual img {
        height: 340px;
    }
}

@media (max-width: 767px) {
    .rsiPmsSliderN6 {
        padding: 35px 20px 22px;
    }

    .rsiPmsSliderN6 .rsiPmsSliderN6__slide {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto 290px;
        align-content: start;
        min-height: auto;
        gap: 22px;
        text-align: center;
    }

    .rsiPmsSliderN6 .rsiPmsSliderN6__text h2 {
        font-size: clamp(24px, 5.5vw, 32px);
    }

    .rsiPmsSliderN6 .rsiPmsSliderN6__text p {
        font-size: 16px;
    }

    .rsiPmsSliderN6 .rsiPmsSliderN6__visual img {
        max-width: 390px;
        height: 265px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiPmsSliderN6 *,
    .rsiPmsSliderN6 *::before {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION STYLES */
.rsiPmsConnectJ4 {
    padding: 25px 24px;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiPmsConnectJ4,
.rsiPmsConnectJ4 *,
.rsiPmsConnectJ4 *::before,
.rsiPmsConnectJ4 *::after {
    box-sizing: border-box;
}

.rsiPmsConnectJ4__panel {
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
    padding: 48px 30px 35px;
    border-radius: 40px;
    background: #f0f0f0;
}

.rsiPmsConnectJ4 .rsiPmsConnectJ4__heading {
    margin: 0;
    color: #586579;
    font-size: clamp(17px, 1.6vw, 20px);
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
}

/* FOUR ICONS */
.rsiPmsConnectJ4 .rsiPmsConnectJ4__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    max-width: 650px;
    margin: 32px auto 0;
    padding: 0;
    list-style: none;
}

.rsiPmsConnectJ4__item {
    min-width: 0;
    margin: 0;
    padding: 8px 4px;
    text-align: center;
    animation: rsiPmsConnectJ4Reveal .7s ease backwards;
}

.rsiPmsConnectJ4__item:nth-child(2) {
    animation-delay: .1s;
}

.rsiPmsConnectJ4__item:nth-child(3) {
    animation-delay: .2s;
}

.rsiPmsConnectJ4__item:nth-child(4) {
    animation-delay: .3s;
}

.rsiPmsConnectJ4__icon {
    width: 94px;
    height: 94px;
    margin-inline: auto;
    color: #b5b8bd;
    transition: color .3s ease, transform .3s ease;
}

.rsiPmsConnectJ4__icon svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    stroke: currentColor;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiPmsConnectJ4__icon text {
    fill: currentColor;
    stroke: none;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 800;
}

.rsiPmsConnectJ4__restText {
    font-size: 17px;
}

.rsiPmsConnectJ4__apiText {
    font-size: 25px;
}

.rsiPmsConnectJ4__label {
    display: block;
    margin-top: 13px;
    color: #68717d;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
}

/* CSS-ONLY ICON ANIMATIONS */
.rsiPmsConnectJ4__gear {
    transform-origin: 64px 51px;
    animation: rsiPmsConnectJ4Spin 18s linear infinite;
}

.rsiPmsConnectJ4__smallGear {
    transform-origin: 29px 61px;
    animation: rsiPmsConnectJ4Spin 14s linear infinite reverse;
}

.rsiPmsConnectJ4__apiGear {
    transform-origin: 71px 28px;
    animation: rsiPmsConnectJ4Spin 16s linear infinite;
}

.rsiPmsConnectJ4__appGear {
    transform-origin: 76px 75px;
    animation: rsiPmsConnectJ4Spin 14s linear infinite;
}

.rsiPmsConnectJ4__code {
    animation: rsiPmsConnectJ4CodePulse 4s ease-in-out infinite;
}

.rsiPmsConnectJ4__screenCode {
    animation: rsiPmsConnectJ4CodePulse 4s 1s ease-in-out infinite;
}

@media (hover: hover) {
    .rsiPmsConnectJ4__item:hover .rsiPmsConnectJ4__icon {
        color: #438fc8;
        transform: translateY(-5px);
    }
}

@keyframes rsiPmsConnectJ4Spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes rsiPmsConnectJ4CodePulse {
    0%, 100% {
        opacity: 1;
        transform: translateY(0);
    }

    50% {
        opacity: .45;
        transform: translateY(-2px);
    }
}

@keyframes rsiPmsConnectJ4Reveal {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* TABLET */
@media (max-width: 767px) {
    .rsiPmsConnectJ4__panel {
        padding: 35px 22px 28px;
        border-radius: 30px;
    }

    .rsiPmsConnectJ4 .rsiPmsConnectJ4__grid {
        gap: 12px;
    }

    .rsiPmsConnectJ4__icon {
        width: 78px;
        height: 78px;
    }
}

/* MOBILE: TWO PER ROW */
@media (max-width: 480px) {
    .rsiPmsConnectJ4 {
        padding: 20px 16px;
    }

    .rsiPmsConnectJ4__panel {
        padding: 30px 18px 25px;
        border-radius: 26px;
    }

    .rsiPmsConnectJ4 .rsiPmsConnectJ4__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 12px;
        margin-top: 25px;
    }

    .rsiPmsConnectJ4__icon {
        width: 82px;
        height: 82px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiPmsConnectJ4 *,
    .rsiPmsConnectJ4 *::before,
    .rsiPmsConnectJ4 *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* Every class is unique to this section */
.rsiEpmsToolsV27 {
    padding: 25px 20px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiEpmsToolsV27,
.rsiEpmsToolsV27 *,
.rsiEpmsToolsV27 *::before,
.rsiEpmsToolsV27 *::after {
    box-sizing: border-box;
}

.rsiEpmsToolsV27__panel {
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
    padding: 38px 22px;
    border-radius: 32px;
    background: #ff6063;
    color: #fff;
}

/* Normal document flow: heading and paragraph never animate */
.rsiEpmsToolsV27 .rsiEpmsToolsV27__header {
    position: static;
    max-width: 900px;
    margin: 0 auto 28px;
    padding: 0;
    text-align: center;
    animation: none;
    transform: none;
    opacity: 1;
    visibility: visible;
    background: none;
}

.rsiEpmsToolsV27 .rsiEpmsToolsV27__heading {
    position: static;
    margin: 0 0 17px;
    padding: 0;
    color: #fff;
    font-size: clamp(25px, 2.7vw, 34px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.025em;
    animation: none;
    transform: none;
    opacity: 1;
    visibility: visible;
}

.rsiEpmsToolsV27 .rsiEpmsToolsV27__description {
    position: static;
    display: block;
    width: auto;
    height: auto;
    max-height: none;
    margin: 0;
    padding: 0;
    overflow: visible;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    animation: none;
    transform: none;
    opacity: 1;
    visibility: visible;
}

/* DESKTOP: THREE COLUMNS */
.rsiEpmsToolsV27__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 24px;
}

.rsiEpmsToolsV27__card {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 19px;
    min-width: 0;
    min-height: 170px;
    padding: 25px 18px;
    overflow: hidden;
    border: 1px solid rgba(130, 36, 40, .18);
    border-radius: 10px;
    background: rgba(101, 24, 28, .22);
    text-align: center;
    transition:
        background-color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiEpmsToolsV27__card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(
        circle at 50% 0,
        rgba(255, 255, 255, .18),
        transparent 75%
    );
    opacity: 0;
    transition: opacity .3s ease;
}

/* CUSTOM ICONS */
.rsiEpmsToolsV27__icon {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    flex-shrink: 0;
    transition: transform .35s ease;
}

.rsiEpmsToolsV27__icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: #fff;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiEpmsToolsV27 .rsiEpmsToolsV27__title {
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    overflow-wrap: break-word;
}

/* HOVER EFFECT */
@media (hover: hover) {
    .rsiEpmsToolsV27__card:hover {
        border-color: rgba(255, 255, 255, .55);
        background: rgba(101, 24, 28, .31);
        box-shadow: 0 12px 25px rgba(130, 36, 40, .15);
    }

    .rsiEpmsToolsV27__card:hover::before {
        opacity: 1;
    }

    .rsiEpmsToolsV27__card:hover .rsiEpmsToolsV27__icon {
        transform: translateY(-5px) scale(1.06);
    }
}

/*
   CSS scroll animation only on cards.
   No opacity animation: content always remains visible.
*/
@supports (animation-timeline: view()) {
    .rsiEpmsToolsV27__card {
        animation-name: rsiEpmsToolsV27Scroll;
        animation-duration: auto;
        animation-timing-function: linear;
        animation-fill-mode: both;
        animation-timeline: view();
        animation-range: entry 0% entry 100%;
    }
}

@keyframes rsiEpmsToolsV27Scroll {
    from {
        transform: translateY(24px) scale(.97);
    }

    to {
        transform: translateY(0) scale(1);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiEpmsToolsV27__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .rsiEpmsToolsV27__panel {
        padding: 32px 20px;
    }
}

/* MOBILE */
@media (max-width: 575px) {
    .rsiEpmsToolsV27 {
        padding: 20px 14px;
    }

    .rsiEpmsToolsV27__panel {
        padding: 30px 16px;
        border-radius: 24px;
    }

    .rsiEpmsToolsV27 .rsiEpmsToolsV27__header {
        margin-bottom: 24px;
    }

    .rsiEpmsToolsV27 .rsiEpmsToolsV27__heading {
        font-size: 26px;
    }

    .rsiEpmsToolsV27 .rsiEpmsToolsV27__description {
        font-size: 14px;
        line-height: 1.8;
    }

    .rsiEpmsToolsV27__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 15px;
    }

    .rsiEpmsToolsV27__card {
        min-height: 155px;
        padding: 23px 16px;
        gap: 16px;
    }

    .rsiEpmsToolsV27__icon {
        width: 58px;
        height: 58px;
    }
}

/* REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
    .rsiEpmsToolsV27 *,
    .rsiEpmsToolsV27 *::before,
    .rsiEpmsToolsV27 *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* UNIQUE SECTION STYLES */
.rsiEpmsCycleR37 {
    --rsiEpmsCycleR37-accent: #ef5b64;
    padding: clamp(40px, 5vw, 75px) 24px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiEpmsCycleR37,
.rsiEpmsCycleR37 *,
.rsiEpmsCycleR37 *::before,
.rsiEpmsCycleR37 *::after {
    box-sizing: border-box;
}

.rsiEpmsCycleR37__container {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.15fr);
    align-items: center;
    gap: clamp(35px, 5vw, 80px);
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

/* ORIGINAL ARTWORK */
.rsiEpmsCycleR37__visual {
    min-width: 0;
    width: 100%;
    max-width: 520px;
    margin-inline: auto;
}

.rsiEpmsCycleR37__artwork {
    width: 100%;
    animation: rsiEpmsCycleR37Float 7s ease-in-out infinite;
}

.rsiEpmsCycleR37__reference {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 535 / 580;
    overflow: hidden;
}

/* CONTENT: NO SCROLL HIDING */
.rsiEpmsCycleR37__content {
    min-width: 0;
}

.rsiEpmsCycleR37 .rsiEpmsCycleR37__heading {
    margin: 0 0 20px;
    color: #171717;
    font-size: clamp(27px, 2.7vw, 36px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiEpmsCycleR37__heading span {
    color: var(--rsiEpmsCycleR37-accent);
}

.rsiEpmsCycleR37 .rsiEpmsCycleR37__description {
    position: static;
    margin: 0;
    color: #526179;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    opacity: 1;
    transform: none;
    animation: none;
}

/* FEATURE LIST */
.rsiEpmsCycleR37 .rsiEpmsCycleR37__list {
    display: grid;
    gap: 12px;
    margin: 25px 0 0;
    padding: 0;
    list-style: none;
}

.rsiEpmsCycleR37__item {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid #f0e8e9;
    border-radius: 13px;
    background: #fff;
    transition:
        background-color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiEpmsCycleR37__icon {
    display: grid;
    flex: 0 0 46px;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: #fff0f1;
    color: var(--rsiEpmsCycleR37-accent);
    transition: transform .3s ease;
}

.rsiEpmsCycleR37__icon svg {
    display: block;
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiEpmsCycleR37__label {
    min-width: 0;
    color: #25272d;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.55;
}

@media (hover: hover) {
    .rsiEpmsCycleR37__item:hover {
        background: #fffbfb;
        border-color: #f4c3c7;
        box-shadow: 0 8px 20px rgba(170, 64, 75, .06);
    }

    .rsiEpmsCycleR37__item:hover .rsiEpmsCycleR37__icon {
        transform: translateY(-3px) rotate(-4deg);
    }
}

/* IMAGE ANIMATION */
@keyframes rsiEpmsCycleR37Float {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

/* CSS SCROLL MOTION: LIST ONLY, ALWAYS VISIBLE */
@supports (animation-timeline: view()) {
    .rsiEpmsCycleR37__item {
        animation: rsiEpmsCycleR37Enter linear both;
        animation-timeline: view();
        animation-range: entry 0% entry 100%;
    }
}

@keyframes rsiEpmsCycleR37Enter {
    from {
        transform: translateY(18px);
    }

    to {
        transform: translateY(0);
    }
}

/* TABLET */
@media (max-width: 991px) {
    .rsiEpmsCycleR37__container {
        gap: 30px;
    }

    .rsiEpmsCycleR37 .rsiEpmsCycleR37__heading {
        font-size: 29px;
    }

    .rsiEpmsCycleR37 .rsiEpmsCycleR37__description {
        font-size: 15px;
    }

    .rsiEpmsCycleR37__item {
        padding: 10px;
        gap: 11px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .rsiEpmsCycleR37 {
        padding: 42px 18px;
    }

    .rsiEpmsCycleR37__container {
        grid-template-columns: minmax(0, 1fr);
        max-width: 580px;
        gap: 32px;
    }

    .rsiEpmsCycleR37__visual {
        max-width: 420px;
    }

    .rsiEpmsCycleR37 .rsiEpmsCycleR37__heading {
        font-size: clamp(27px, 6vw, 34px);
    }

    .rsiEpmsCycleR37 .rsiEpmsCycleR37__description {
        font-size: 15px;
        line-height: 1.8;
    }

    .rsiEpmsCycleR37__label {
        font-size: 13px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiEpmsCycleR37 *,
    .rsiEpmsCycleR37 *::before,
    .rsiEpmsCycleR37 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiEpmsCycleR37 .rsiEpmsCycleR37__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}
/* UNIQUE SECTION */
.rsiAppraisalF52 {
    padding: 30px 24px;
    background: #fff;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiAppraisalF52,
.rsiAppraisalF52 *,
.rsiAppraisalF52 *::before,
.rsiAppraisalF52 *::after {
    box-sizing: border-box;
}

.rsiAppraisalF52__panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 35px;
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
    padding: 38px 30px;
    border-radius: 32px;
    background: #f1f3f6;
}

.rsiAppraisalF52__content {
    min-width: 0;
}

.rsiAppraisalF52 .rsiAppraisalF52__heading {
    margin: 0 0 17px;
    color: #131820;
    font-size: clamp(25px, 2.3vw, 31px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.035em;
}

.rsiAppraisalF52 .rsiAppraisalF52__description {
    position: static;
    margin: 0;
    color: #526179;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    opacity: 1;
    transform: none;
    animation: none;
}

/* STYLED BULLET CARDS */
.rsiAppraisalF52 .rsiAppraisalF52__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.rsiAppraisalF52 .rsiAppraisalF52__list li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    margin: 0;
    padding: 12px;
    border: 1px solid #e2e7ef;
    border-radius: 11px;
    background: #fff;
    color: #3e4d63;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.55;
    overflow-wrap: break-word;
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease,
        background-color .25s ease;
}

/* Circular check icon */
.rsiAppraisalF52__list li::before {
    content: "";
    display: block;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: #edf4ff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='m7 12 3 3 7-7' stroke='%23438fc8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px;
    transition: background-color .25s ease;
}

@media (hover: hover) {
    .rsiAppraisalF52 .rsiAppraisalF52__list li:hover {
        transform: translateY(-3px);
        border-color: #b8d3f0;
        background: #fcfdff;
        box-shadow: 0 7px 18px rgba(40, 70, 110, .07);
    }

    .rsiAppraisalF52__list li:hover::before {
        background-color: #dceaff;
    }
}

/* SVG VISUALS */
.rsiAppraisalF52__visuals {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    gap: 18px;
    min-width: 0;
}

.rsiAppraisalF52__chart {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e8ebf1;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(40, 52, 78, .06);
}

.rsiAppraisalF52__svg {
    display: block;
    width: 100%;
    height: auto;
    font-family: Arial, Helvetica, sans-serif;
}

.rsiAppraisalF52__svgHeading {
    fill: #394354;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .4px;
}

.rsiAppraisalF52__svgSubtitle {
    fill: #8490a2;
    font-size: 8px;
}

.rsiAppraisalF52__axis {
    fill: #9ca7b6;
    font-size: 6.5px;
}

.rsiAppraisalF52__percentage {
    fill: #394354;
    font-size: 28px;
    font-weight: 600;
}

/* CSS CHART ANIMATIONS */
.rsiAppraisalF52__graphLine {
    stroke-dasharray: 1;
    stroke-dashoffset: 0;
    animation: rsiAppraisalF52Draw 7s ease-in-out infinite;
}

.rsiAppraisalF52__area {
    animation: rsiAppraisalF52Area 7s ease-in-out infinite;
}

.rsiAppraisalF52__graphDot {
    animation: rsiAppraisalF52Dot 7s ease-in-out infinite;
}

.rsiAppraisalF52__gaugeArc {
    stroke-dasharray: 1;
    stroke-dashoffset: 0;
    animation: rsiAppraisalF52Draw 7s ease-in-out infinite;
}

.rsiAppraisalF52__needle {
    transform-origin: 150px 180px;
    transform: rotate(-18deg);
    animation: rsiAppraisalF52Needle 7s ease-in-out infinite;
}

@keyframes rsiAppraisalF52Draw {
    0%, 8% {
        stroke-dashoffset: 1;
    }

    55%, 100% {
        stroke-dashoffset: 0;
    }
}

@keyframes rsiAppraisalF52Area {
    0%, 15% {
        opacity: 0;
    }

    60%, 100% {
        opacity: 1;
    }
}

@keyframes rsiAppraisalF52Dot {
    0%, 45% {
        opacity: 0;
    }

    60%, 100% {
        opacity: 1;
    }
}

@keyframes rsiAppraisalF52Needle {
    0%, 8% {
        transform: rotate(-90deg);
    }

    58% {
        transform: rotate(-14deg);
    }

    70%, 100% {
        transform: rotate(-18deg);
    }
}

/* TABLET */
@media (max-width: 1100px) {
    .rsiAppraisalF52__panel {
        grid-template-columns: minmax(0, 1fr);
        gap: 32px;
    }

    .rsiAppraisalF52__visuals {
        width: 100%;
        max-width: 700px;
        margin-inline: auto;
    }
}

/* MOBILE */
@media (max-width: 575px) {
    .rsiAppraisalF52 {
        padding: 22px 16px;
    }

    .rsiAppraisalF52__panel {
        padding: 28px 18px;
        border-radius: 24px;
    }

    .rsiAppraisalF52 .rsiAppraisalF52__heading {
        font-size: 26px;
    }

    .rsiAppraisalF52 .rsiAppraisalF52__description {
        font-size: 15px;
    }

    .rsiAppraisalF52 .rsiAppraisalF52__list {
        grid-template-columns: minmax(0, 1fr);
        gap: 9px;
        margin-top: 20px;
    }

    .rsiAppraisalF52 .rsiAppraisalF52__list li {
        padding: 12px 14px;
        font-size: 14px;
    }

    .rsiAppraisalF52__visuals {
        grid-template-columns: minmax(0, 1fr);
        max-width: 340px;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .rsiAppraisalF52 *,
    .rsiAppraisalF52 *::before,
    .rsiAppraisalF52 *::after {
        animation: none !important;
        transition: none !important;
    }
}






  .rsiEpmsM92 {
    --epms-accent: #f36559;
    --epms-heading: #202731;
    --epms-text: #637083;
    padding: clamp(45px, 6vw, 85px) 20px;
    background: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
  }

  .rsiEpmsM92,
  .rsiEpmsM92 * {
    box-sizing: border-box;
  }

  .rsiEpmsM92__wrap {
    width: min(1200px, 100%);
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    align-items: center;
    gap: clamp(30px, 5vw, 70px);
  }

  /* IMAGE AREA */
  .rsiEpmsM92__visual {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 15px;
    isolation: isolate;
  }

  .rsiEpmsM92__visual::before {
    content: "";
    position: absolute;
    inset: 8% 4%;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(
      ellipse,
      #fff0eb 0%,
      #fff8f5 48%,
      transparent 72%
    );
    animation: rsiEpmsM92Glow 7s ease-in-out infinite;
  }

  .rsiEpmsM92__image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    animation: rsiEpmsM92Float 6s ease-in-out infinite;
  }

  .rsiEpmsM92__spark {
    position: absolute;
    width: 12px;
    height: 12px;
    pointer-events: none;
    background: var(--epms-accent);
    clip-path: polygon(
      50% 0%, 62% 38%, 100% 50%, 62% 62%,
      50% 100%, 38% 62%, 0% 50%, 38% 38%
    );
    animation: rsiEpmsM92Spark 4s ease-in-out infinite;
  }

  .rsiEpmsM92__spark--one {
    top: 12%;
    right: 9%;
  }

  .rsiEpmsM92__spark--two {
    bottom: 19%;
    left: 3%;
    width: 9px;
    height: 9px;
    animation-delay: 1.5s;
  }

  /* CONTENT */
  .rsiEpmsM92__content {
    min-width: 0;
  }

  .rsiEpmsM92__heading {
margin: 0 0 20px;
    color: #171717;
    font-size: clamp(27px, 2.7vw, 36px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
  }

  .rsiEpmsM92__heading span {
    color: var(--epms-accent);
  }

  .rsiEpmsM92__description {
    margin: 0 0 26px;
    color: var(--epms-text);
    font-size: 16px;
    line-height: 1.8;
  }

  /* BULLET POINTS */
  .rsiEpmsM92__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .rsiEpmsM92__item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 76px;
    padding: 15px 13px;
    overflow: hidden;
    border: 1px solid #eee8e5;
    border-radius: 13px;
    background: linear-gradient(135deg, #fffaf8, #ffffff);
    transition:
      transform .3s ease,
      border-color .3s ease,
      box-shadow .3s ease;
  }

  .rsiEpmsM92__item::before {
    content: "";
    position: absolute;
    top: 18%;
    bottom: 18%;
    left: 0;
    width: 3px;
    border-radius: 0 4px 4px 0;
    background: var(--epms-accent);
    transform: scaleY(0);
    transition: transform .3s ease;
  }

  .rsiEpmsM92__item:hover {
    transform: translateY(-4px);
    border-color: #f4b9ae;
    box-shadow: 0 10px 24px rgb(47 37 33 / 6%);
  }

  .rsiEpmsM92__item:hover::before {
    transform: scaleY(1);
  }

  .rsiEpmsM92__icon {
    display: grid;
    place-items: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border: 1px solid #f9d8d0;
    border-radius: 10px;
    background: #fff0ea;
    color: var(--epms-accent);
    transition:
      background .3s ease,
      color .3s ease,
      transform .3s ease;
  }

  .rsiEpmsM92__icon svg {
    display: block;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .rsiEpmsM92__item:hover .rsiEpmsM92__icon {
    transform: rotate(-6deg);
    background: var(--epms-accent);
    border-color: var(--epms-accent);
    color: #ffffff;
  }

  .rsiEpmsM92__text {
    color: #414b59;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.55;
  }

  /* CSS ANIMATIONS */
  @keyframes rsiEpmsM92Float {
    0%, 100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-11px);
    }
  }

  @keyframes rsiEpmsM92Glow {
    0%, 100% {
      transform: scale(.95);
      opacity: .65;
    }
    50% {
      transform: scale(1.05);
      opacity: 1;
    }
  }

  @keyframes rsiEpmsM92Spark {
    0%, 100% {
      transform: rotate(0) scale(.8);
      opacity: .4;
    }
    50% {
      transform: rotate(90deg) scale(1.15);
      opacity: 1;
    }
  }

  /* RESPONSIVE */
  @media (max-width: 1050px) {
    .rsiEpmsM92__wrap {
      gap: 30px;
    }

    .rsiEpmsM92__list {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .rsiEpmsM92__item {
      min-height: auto;
      padding: 12px 15px;
    }
  }

  @media (max-width: 760px) {
    .rsiEpmsM92__wrap {
      grid-template-columns: 1fr;
      gap: 28px;
    }

    .rsiEpmsM92__visual {
      width: min(500px, 100%);
      margin-inline: auto;
    }

    .rsiEpmsM92__list {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .rsiEpmsM92__heading {
      letter-spacing: -.7px;
    }

    .rsiEpmsM92__item {
      min-height: 76px;
      padding: 13px 11px;
    }
  }

  @media (max-width: 440px) {
    .rsiEpmsM92 {
      padding-inline: 16px;
    }

    .rsiEpmsM92__list {
      grid-template-columns: 1fr;
    }

    .rsiEpmsM92__item {
      min-height: auto;
      padding: 13px 15px;
    }

    .rsiEpmsM92__description {
      font-size: 15px;
    }

    .rsiEpmsM92__text {
      font-size: 14px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .rsiEpmsM92 *,
    .rsiEpmsM92 *::before {
      animation: none !important;
      transition: none !important;
    }
  }

  .rsiHappyQ63 {
  --happy-accent: #f56b5b;
  --happy-dark: #202832;
  --happy-text: #596779;
  padding: 40px 20px;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiHappyQ63,
.rsiHappyQ63 * {
  box-sizing: border-box;
}

.rsiHappyQ63__panel {
  width: min(1280px, 100%);
  margin-inline: auto;
  padding: clamp(26px, 4vw, 52px);
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  align-items: center;
  gap: clamp(25px, 4vw, 60px);
  background: #f0f0f0;
  border-radius: 40px;
}

.rsiHappyQ63__content {
  min-width: 0;
}

.rsiHappyQ63__heading {
    margin: 0 0 20px;
    color: #171717;
    font-size: clamp(27px, 2.7vw, 36px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiHappyQ63__description {
  margin: 0 0 24px;
  color: var(--happy-text);
  font-size: 16px;
  line-height: 1.75;
}

/* BULLETS */
.rsiHappyQ63__list {
  display: grid;
  gap: 11px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiHappyQ63__item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 13px 16px;
  border: 1px solid #ffffff;
  border-radius: 12px;
  background: rgb(255 255 255 / 68%);
  transition:
    transform .3s ease,
    background .3s ease,
    box-shadow .3s ease;
}

.rsiHappyQ63__item:hover {
  transform: translateX(5px);
  background: #ffffff;
  box-shadow: 0 8px 22px rgb(32 40 50 / 5%);
}

.rsiHappyQ63__check {
  flex: 0 0 25px;
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 8px;
  background: #ffebe5;
  color: var(--happy-accent);
  transition:
    background .3s ease,
    color .3s ease,
    transform .3s ease;
}

.rsiHappyQ63__check::after {
  content: "";
  width: 10px;
  height: 6px;
  margin-top: -3px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}

.rsiHappyQ63__item:hover .rsiHappyQ63__check {
  background: var(--happy-accent);
  color: #ffffff;
  transform: rotate(-5deg);
}

.rsiHappyQ63__text {
  padding-top: 2px;
  color: #4c5868;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}

/* RIGHT ILLUSTRATION */
.rsiHappyQ63__visual {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 15px 5px;
  isolation: isolate;
}

.rsiHappyQ63__visual::before {
  content: "";
  position: absolute;
  inset: 13% 4%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    #ffe5dc 0%,
    rgb(255 229 220 / 30%) 48%,
    transparent 72%
  );
  animation: rsiHappyQ63Halo 7s ease-in-out infinite;
}

.rsiHappyQ63__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  transform-origin: center bottom;
  animation: rsiHappyQ63Float 6s ease-in-out infinite;
}

/* FLOATING DECORATIONS */
.rsiHappyQ63__dot {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--happy-accent);
  pointer-events: none;
  animation: rsiHappyQ63Dot 4s ease-in-out infinite;
}

.rsiHappyQ63__dot--one {
  top: 17%;
  left: 7%;
}

.rsiHappyQ63__dot--two {
  right: 5%;
  bottom: 25%;
  width: 6px;
  height: 6px;
  animation-delay: 1.5s;
}

.rsiHappyQ63__ring {
  position: absolute;
  top: 8%;
  right: 12%;
  width: 19px;
  height: 19px;
  border: 2px solid #f7b3a6;
  border-radius: 50%;
  pointer-events: none;
  animation: rsiHappyQ63Dot 5s ease-in-out infinite reverse;
}

/* CSS ANIMATION */
@keyframes rsiHappyQ63Float {
  0%, 100% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-10px) rotate(.6deg);
  }
}

@keyframes rsiHappyQ63Halo {
  0%, 100% {
    opacity: .5;
    transform: scale(.94);
  }
  50% {
    opacity: 1;
    transform: scale(1.06);
  }
}

@keyframes rsiHappyQ63Dot {
  0%, 100% {
    transform: translateY(0);
    opacity: .45;
  }
  50% {
    transform: translateY(-13px);
    opacity: 1;
  }
}

/* TABLET */
@media (max-width: 1000px) {
  .rsiHappyQ63__panel {
    grid-template-columns: 1.2fr 1fr;
    padding: 30px;
    gap: 25px;
    border-radius: 28px;
  }

  .rsiHappyQ63__heading {
    font-size: 28px;
  }

  .rsiHappyQ63__description {
    font-size: 15px;
  }
}

/* MOBILE */
@media (max-width: 760px) {
  .rsiHappyQ63__panel {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 28px 22px;
  }

  .rsiHappyQ63__visual {
    width: min(440px, 100%);
    margin-inline: auto;
  }

  .rsiHappyQ63__heading {
    font-size: clamp(26px, 5vw, 34px);
  }
}

@media (max-width: 420px) {
  .rsiHappyQ63 {
    padding: 30px 14px;
  }

  .rsiHappyQ63__panel {
    padding: 25px 17px;
    border-radius: 22px;
  }

  .rsiHappyQ63__item {
    padding: 12px;
    gap: 10px;
  }

  .rsiHappyQ63__text {
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiHappyQ63 *,
  .rsiHappyQ63 *::before {
    animation: none !important;
    transition: none !important;
  }
}
.rsiRewardT76 {
  --reward-coral: #ff6b5b;
  --reward-dark: #222b34;
  --reward-muted: #5f6c7e;
  padding: clamp(45px, 6vw, 85px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiRewardT76,
.rsiRewardT76 * {
  box-sizing: border-box;
}

.rsiRewardT76__wrap {
  width: min(1200px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: .95fr 1.15fr;
  align-items: center;
  gap: clamp(30px, 6vw, 85px);
}

/* LEFT IMAGE */
.rsiRewardT76__visual {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 12px;
  isolation: isolate;
}

.rsiRewardT76__visual::before {
  content: "";
  position: absolute;
  inset: 12% 3%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    #fff1eb,
    rgb(255 241 235 / 35%) 48%,
    transparent 72%
  );
  animation: rsiRewardT76Glow 7s ease-in-out infinite;
}

.rsiRewardT76__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  animation: rsiRewardT76Float 6s ease-in-out infinite;
}

/* Decorative CSS shapes */
.rsiRewardT76__spark {
  position: absolute;
  top: 16%;
  right: 6%;
  width: 16px;
  height: 16px;
  background: var(--reward-coral);
  clip-path: polygon(
    50% 0%, 62% 38%, 100% 50%, 62% 62%,
    50% 100%, 38% 62%, 0% 50%, 38% 38%
  );
  pointer-events: none;
  animation: rsiRewardT76Spark 5s ease-in-out infinite;
}

.rsiRewardT76__dot {
  position: absolute;
  bottom: 24%;
  left: 3%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f7b2a6;
  pointer-events: none;
  animation: rsiRewardT76Float 5s ease-in-out infinite reverse;
}

/* CONTENT */
.rsiRewardT76__content {
  min-width: 0;
}

.rsiRewardT76__heading {
margin: 0 0 20px;
    color: #171717;
    font-size: clamp(27px, 2.7vw, 36px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiRewardT76__description {
  margin: 0 0 25px;
  color: var(--reward-muted);
  font-size: 16px;
  line-height: 1.8;
}

/* STYLED BULLETS */
.rsiRewardT76__list {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiRewardT76__item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 15px 17px;
  border: 1px solid #f0e8e4;
  border-radius: 13px;
  background: linear-gradient(110deg, #fff8f4, #fff 80%);
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiRewardT76__item:hover {
  transform: translateY(-3px);
  border-color: #f7b9ad;
  box-shadow: 0 9px 24px rgb(34 43 52 / 6%);
}

.rsiRewardT76__icon {
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: var(--reward-coral);
  background: #ffece5;
  transition:
    color .3s ease,
    background .3s ease,
    transform .3s ease;
}

.rsiRewardT76__icon svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiRewardT76__item:hover .rsiRewardT76__icon {
  color: #fff;
  background: var(--reward-coral);
  transform: rotate(-6deg);
}

.rsiRewardT76__text {
  align-self: center;
  color: #4c5867;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.65;
}

/* CSS ANIMATIONS */
@keyframes rsiRewardT76Float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

@keyframes rsiRewardT76Glow {
  0%, 100% {
    opacity: .55;
    transform: scale(.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes rsiRewardT76Spark {
  0%, 100% {
    opacity: .4;
    transform: rotate(0) scale(.8);
  }
  50% {
    opacity: 1;
    transform: rotate(90deg) scale(1.1);
  }
}

/* RESPONSIVE */
@media (max-width: 980px) {
  .rsiRewardT76__wrap {
    grid-template-columns: 1fr 1.2fr;
    gap: 28px;
  }

  .rsiRewardT76__heading {
    font-size: 30px;
  }

  .rsiRewardT76__description {
    font-size: 15px;
  }
}

@media (max-width: 760px) {
  .rsiRewardT76__wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .rsiRewardT76__visual {
    width: min(440px, 100%);
    margin-inline: auto;
  }

  .rsiRewardT76__heading {
    font-size: clamp(28px, 5vw, 36px);
  }
}

@media (max-width: 420px) {
  .rsiRewardT76 {
    padding-inline: 16px;
  }

  .rsiRewardT76__item {
    gap: 11px;
    padding: 13px;
  }

  .rsiRewardT76__text {
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiRewardT76 *,
  .rsiRewardT76 *::before {
    animation: none !important;
    transition: none !important;
  }
}
.rsiPotentialN48 {
  --rpn-accent: #fa6b59;
  --rpn-dark: #202831;
  --rpn-text: #586779;
  padding: 35px 20px;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiPotentialN48,
.rsiPotentialN48 * {
  box-sizing: border-box;
}

.rsiPotentialN48__panel {
  width: min(1280px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  align-items: center;
  gap: clamp(28px, 5vw, 65px);
  padding: clamp(26px, 4vw, 55px);
  background: #f0f0f0;
  border-radius: 40px;
}

.rsiPotentialN48__content {
  min-width: 0;
}

.rsiPotentialN48__heading {
    margin: 0 0 20px;
    color: #171717;
    font-size: clamp(27px, 2.7vw, 36px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}

.rsiPotentialN48__description {
  margin: 0 0 25px;
  color: var(--rpn-text);
  font-size: 16px;
  line-height: 1.75;
}

/* BULLET POINTS */
.rsiPotentialN48__list {
  display: grid;
  gap: 11px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiPotentialN48__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 15px;
  border: 1px solid #fff;
  border-radius: 12px;
  background: rgb(255 255 255 / 65%);
  transition:
    transform .25s ease,
    background .25s ease,
    box-shadow .25s ease;
}

.rsiPotentialN48__item:hover {
  transform: translateY(-3px);
  background: #fff;
  box-shadow: 0 8px 22px rgb(32 40 49 / 6%);
}

.rsiPotentialN48__icon {
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  color: var(--rpn-accent);
  background: #ffe9e3;
  transition:
    background .25s ease,
    color .25s ease,
    transform .25s ease;
}

.rsiPotentialN48__icon svg {
  display: block;
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiPotentialN48__item:hover .rsiPotentialN48__icon {
  transform: rotate(-6deg);
  color: #fff;
  background: var(--rpn-accent);
}

.rsiPotentialN48__text {
  align-self: center;
  color: #4d5969;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}

/* RIGHT IMAGE */
.rsiPotentialN48__visual {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 12px;
  isolation: isolate;
}

.rsiPotentialN48__visual::before {
  content: "";
  position: absolute;
  inset: 12% 2%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    #ffe6dc 0%,
    rgb(255 230 220 / 35%) 45%,
    transparent 72%
  );
  animation: rsiPotentialN48Glow 7s ease-in-out infinite;
}

.rsiPotentialN48__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  animation: rsiPotentialN48Float 6s ease-in-out infinite;
}

.rsiPotentialN48__spark {
  position: absolute;
  top: 13%;
  right: 8%;
  width: 15px;
  height: 15px;
  background: var(--rpn-accent);
  clip-path: polygon(
    50% 0%, 62% 38%, 100% 50%, 62% 62%,
    50% 100%, 38% 62%, 0% 50%, 38% 38%
  );
  pointer-events: none;
  animation: rsiPotentialN48Spark 4s ease-in-out infinite;
}

.rsiPotentialN48__dot {
  position: absolute;
  bottom: 20%;
  left: 3%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f5a797;
  pointer-events: none;
  animation: rsiPotentialN48Float 5s ease-in-out infinite reverse;
}

/* CSS ANIMATIONS */
@keyframes rsiPotentialN48Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

@keyframes rsiPotentialN48Glow {
  0%, 100% {
    opacity: .5;
    transform: scale(.94);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes rsiPotentialN48Spark {
  0%, 100% {
    opacity: .4;
    transform: rotate(0) scale(.8);
  }
  50% {
    opacity: 1;
    transform: rotate(90deg) scale(1.1);
  }
}

/* RESPONSIVE */
@media (max-width: 1000px) {
  .rsiPotentialN48__panel {
    gap: 25px;
    padding: 30px;
    border-radius: 28px;
  }

  .rsiPotentialN48__description {
    font-size: 15px;
  }

  .rsiPotentialN48__item {
    padding: 12px;
  }
}

@media (max-width: 760px) {
  .rsiPotentialN48__panel {
    grid-template-columns: 1fr;
    padding: 28px 22px;
    gap: 30px;
  }

  .rsiPotentialN48__visual {
    width: min(430px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 420px) {
  .rsiPotentialN48 {
    padding: 25px 14px;
  }

  .rsiPotentialN48__panel {
    padding: 25px 17px;
    border-radius: 22px;
  }

  .rsiPotentialN48__heading {
    font-size: 27px;
  }

  .rsiPotentialN48__text {
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPotentialN48 *,
  .rsiPotentialN48 *::before {
    animation: none !important;
    transition: none !important;
  }
}
.rsiDemoLinksV94 {
  --rdv-blue: #2378c5;
  --rdv-dark: #202833;
  --rdv-text: #59687e;
  padding: clamp(35px, 5vw, 65px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiDemoLinksV94,
.rsiDemoLinksV94 * {
  box-sizing: border-box;
}

.rsiDemoLinksV94__wrap {
  width: min(1200px, 100%);
  margin-inline: auto;
  text-align: center;
}

.rsiDemoLinksV94__paragraph {
  margin: 0 0 22px;
  color: var(--rdv-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.8;
}

.rsiDemoLinksV94__link {
  color: var(--rdv-dark);
  text-decoration: underline;
  text-decoration-color: #c9dced;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  transition: color .25s ease, text-decoration-color .25s ease;
}

.rsiDemoLinksV94__link:hover {
  color: var(--rdv-blue);
  text-decoration-color: currentColor;
}

.rsiDemoLinksV94__link:focus-visible {
  outline: 2px solid var(--rdv-blue);
  outline-offset: 4px;
}

/* Scoped styles override existing button appearance */
.rsiDemoLinksV94 .rsiDemoLinksV94__button {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: auto;
  min-height: 52px;
  margin: 4px 0 0;
  padding: 15px 28px;
  overflow: hidden;
  border: 1.5px solid var(--rdv-blue);
  border-radius: 6px;
  background: #fff;
  color: var(--rdv-dark);
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: normal;
  text-align: center;
  text-transform: none;
  text-decoration: none;
  cursor: pointer;
  transition:
    color .3s ease,
    transform .3s ease,
    box-shadow .3s ease;
}

.rsiDemoLinksV94 .rsiDemoLinksV94__button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  width: auto;
  height: auto;
  border-radius: 0;
  background: var(--rdv-blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .35s ease;
}

.rsiDemoLinksV94 .rsiDemoLinksV94__button::after {
  content: "";
  position: absolute;
  inset: -40% auto -40% -65%;
  width: 35%;
  height: auto;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    transparent,
    rgb(35 120 197 / 15%),
    transparent
  );
  transform: skewX(-20deg);
  animation: rsiDemoLinksV94Shine 5s ease-in-out infinite;
}

.rsiDemoLinksV94 .rsiDemoLinksV94__button:hover {
  color: #fff;
  background: #fff;
  transform: translateY(-3px);
  box-shadow: 0 9px 22px rgb(35 120 197 / 18%);
}

.rsiDemoLinksV94 .rsiDemoLinksV94__button:hover::before {
  transform: scaleX(1);
}

.rsiDemoLinksV94__arrow {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiDemoLinksV94__button:hover .rsiDemoLinksV94__arrow {
  transform: translateX(4px);
}

.rsiDemoLinksV94 .rsiDemoLinksV94__button:focus-visible {
  outline: 3px solid var(--rdv-blue);
  outline-offset: 5px;
}

@keyframes rsiDemoLinksV94Shine {
  0%, 60% { left: -65%; }
  100% { left: 145%; }
}

@media (max-width: 600px) {
  .rsiDemoLinksV94 {
    padding-inline: 17px;
  }

  .rsiDemoLinksV94__paragraph {
    line-height: 1.75;
  }

  .rsiDemoLinksV94 .rsiDemoLinksV94__button {
    padding-inline: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiDemoLinksV94 *,
  .rsiDemoLinksV94 *::before,
  .rsiDemoLinksV94 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiFaqA67 {
  --faq-accent: #ed255b;
  --faq-dark: #202632;
  --faq-text: #58677b;
  padding: clamp(40px, 6vw, 75px) 20px;
  background: #f6f8fa;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiFaqA67,
.rsiFaqA67 * {
  box-sizing: border-box;
}

.rsiFaqA67__wrap {
  width: min(1250px, 100%);
  margin-inline: auto;
}

.rsiFaqA67__heading {
  margin: 0 0 30px;
  color: var(--faq-dark);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.8px;
  text-align: center;
}

.rsiFaqA67__list {
  display: grid;
  gap: 15px;
}

.rsiFaqA67__item {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e9edf2;
  border-left: 4px solid var(--faq-accent);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 15px rgb(32 38 50 / 3%);
  transition: box-shadow .3s ease, border-color .3s ease;
}

.rsiFaqA67__item:hover {
  box-shadow: 0 8px 25px rgb(32 38 50 / 7%);
}

/* Visually hidden; keyboard accessible */
.rsiFaqA67__toggle {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.rsiFaqA67__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 76px;
  margin: 0;
  padding: 22px 25px;
  color: var(--faq-dark);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: color .25s ease;
}

.rsiFaqA67__question:hover {
  color: var(--faq-accent);
}

.rsiFaqA67__questionText {
  flex: 1;
  text-align: center;
}

/* Animated plus/minus */
.rsiFaqA67__icon {
  position: relative;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: #fff0f4;
  transition: background .3s ease, transform .3s ease;
}

.rsiFaqA67__icon::before,
.rsiFaqA67__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  border-radius: 2px;
  background: var(--faq-accent);
  transform: translate(-50%, -50%);
  transition: transform .3s ease;
}

.rsiFaqA67__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

/* Height animation without fixed max-height */
.rsiFaqA67__answer {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  transition:
    grid-template-rows .4s ease,
    visibility .4s;
}

.rsiFaqA67__answerInner {
  min-height: 0;
  overflow: hidden;
}

.rsiFaqA67__answer p {
  margin: 0;
  padding: 0 30px 25px;
  color: var(--faq-text);
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}

/* Open state */
.rsiFaqA67__toggle:checked ~ .rsiFaqA67__answer {
  grid-template-rows: 1fr;
  visibility: visible;
}

.rsiFaqA67__toggle:checked + .rsiFaqA67__question {
  color: var(--faq-accent);
}

.rsiFaqA67__toggle:checked
+ .rsiFaqA67__question
.rsiFaqA67__icon::after {
  transform: translate(-50%, -50%) rotate(0);
}

.rsiFaqA67__toggle:checked
+ .rsiFaqA67__question
.rsiFaqA67__icon {
  background: #ffe5ed;
}

/* Keyboard focus */
.rsiFaqA67__toggle:focus-visible + .rsiFaqA67__question {
  outline: 2px solid var(--faq-accent);
  outline-offset: -5px;
  border-radius: 10px;
}

/* Mobile */
@media (max-width: 600px) {
  .rsiFaqA67 {
    padding: 38px 15px;
  }

  .rsiFaqA67__heading {
    margin-bottom: 24px;
  }

  .rsiFaqA67__question {
    min-height: 70px;
    padding: 18px 16px;
    gap: 12px;
    font-size: 15px;
  }

  .rsiFaqA67__questionText {
    text-align: left;
  }

  .rsiFaqA67__answer p {
    padding: 0 17px 20px;
    font-size: 14px;
    text-align: left;
  }

  .rsiFaqA67__icon {
    flex-basis: 27px;
    width: 27px;
    height: 27px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiFaqA67 *,
  .rsiFaqA67 *::before,
  .rsiFaqA67 *::after {
    transition: none !important;
  }
}
.rsiFaqA67__questionText,
.rsiFaqA67__answer p {
  text-align: left;
}

.rsiFaqA67__item {
  transition: background-color .3s ease, box-shadow .3s ease;
}

.rsiFaqA67__item:hover {
  background: #ed255b;
  border-color: #ed255b;
}

.rsiFaqA67__item:hover .rsiFaqA67__question,
.rsiFaqA67__item:hover .rsiFaqA67__answer p {
  color: #fff;
}

.rsiFaqA67__item:hover .rsiFaqA67__icon {
  background: rgb(255 255 255 / 20%);
}

.rsiFaqA67__item:hover .rsiFaqA67__icon::before,
.rsiFaqA67__item:hover .rsiFaqA67__icon::after {
  background: #fff;
}
.rsiGovCtaB39 {
  padding: 35px 20px;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiGovCtaB39,
.rsiGovCtaB39 * {
  box-sizing: border-box;
}

.rsiGovCtaB39__band {
  position: relative;
  isolation: isolate;
  width: min(1200px, 100%);
  margin-inline: auto;
  padding: clamp(30px, 5vw, 55px);
  overflow: hidden;
  border: 1px solid #f5dce0;
  border-radius: 24px;
  background: linear-gradient(120deg, #fff5f5, #fff 75%);
}

/* Animated decorative circles */
.rsiGovCtaB39__band::before,
.rsiGovCtaB39__band::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 240px;
  height: 240px;
  right: -85px;
  top: -100px;
  border: 1px solid rgb(237 37 91 / 13%);
  border-radius: 50%;
  pointer-events: none;
  animation: rsiGovCtaB39Orbit 8s ease-in-out infinite;
}

.rsiGovCtaB39__band::after {
  width: 310px;
  height: 310px;
  right: -120px;
  top: -135px;
  animation-delay: -4s;
}

.rsiGovCtaB39__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 30px;
}

.rsiGovCtaB39__heading {
  margin: 0 0 12px;
  color: #222936;
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.8px;
  text-align: left;
  text-wrap: balance;
}

.rsiGovCtaB39__description {
  margin: 0;
  color: #647083;
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}

.rsiGovCtaB39 .rsiGovCtaB39__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  min-height: 54px;
  padding: 16px 25px;
  border: 1.5px solid #ed255b;
  border-radius: 10px;
  background: #fff;
  color: #ed255b;
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition:
    background-color .3s ease,
    color .3s ease,
    transform .3s ease,
    box-shadow .3s ease;
}

.rsiGovCtaB39 .rsiGovCtaB39__button:hover {
  background: #ed255b;
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgb(237 37 91 / 20%);
}

.rsiGovCtaB39__arrow {
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiGovCtaB39__button:hover .rsiGovCtaB39__arrow {
  transform: translateX(4px);
}

.rsiGovCtaB39__button:focus-visible {
  outline: 3px solid #ed255b;
  outline-offset: 5px;
}

@keyframes rsiGovCtaB39Orbit {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(-18px, 20px) scale(1.08);
  }
}

@media (max-width: 850px) {
  .rsiGovCtaB39__layout {
    grid-template-columns: 1fr;
    gap: 23px;
  }

  .rsiGovCtaB39__button {
    justify-self: start;
  }
}

@media (max-width: 480px) {
  .rsiGovCtaB39 {
    padding: 25px 15px;
  }

  .rsiGovCtaB39__band {
    padding: 28px 21px;
    border-radius: 18px;
  }

  .rsiGovCtaB39__description {
    font-size: 15px;
  }

  .rsiGovCtaB39 .rsiGovCtaB39__button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiGovCtaB39 *,
  .rsiGovCtaB39 *::before,
  .rsiGovCtaB39 *::after {
    animation: none !important;
    transition: none !important;
  }
}
section[lang="ar"][dir="rtl"] {
  direction: rtl;
  font-family: Tahoma, Arial, sans-serif;
}
section[lang="ar"] *, section[lang="ar"] *::before, section[lang="ar"] *::after { box-sizing: border-box; }
section[lang="ar"] h1, section[lang="ar"] h2, section[lang="ar"] h3 {
  font-family: inherit;
  letter-spacing: normal;
  line-height: 1.55;
}
section[lang="ar"] p { line-height: 1.95; }
section[lang="ar"] img { max-width: 100%; height: auto; }
section[lang="ar"] button, section[lang="ar"] a { font-family: inherit; }
.rsiPmsSliderN6[lang="ar"] .rsiPmsSliderN6__text,
.rsiEpmsCycleR37[lang="ar"] .rsiEpmsCycleR37__content,
.rsiAppraisalF52[lang="ar"] .rsiAppraisalF52__content,
.rsiEpmsM92[lang="ar"] .rsiEpmsM92__content,
.rsiHappyQ63[lang="ar"] .rsiHappyQ63__content,
.rsiRewardT76[lang="ar"] .rsiRewardT76__content,
.rsiPotentialN48[lang="ar"] .rsiPotentialN48__content,
.rsiGovCtaB39[lang="ar"] .rsiGovCtaB39__heading,
.rsiGovCtaB39[lang="ar"] .rsiGovCtaB39__description { text-align: right; }
section[lang="ar"] [class$="__item"],
section[lang="ar"] [class$="__text"] { letter-spacing: normal; }
.rsiEpmsM92[lang="ar"] .rsiEpmsM92__item::before { left: auto; right: 0; border-radius: 4px 0 0 4px; }
.rsiHappyQ63[lang="ar"] .rsiHappyQ63__item:hover { transform: translateX(-5px); }
.rsiFaqA67[lang="ar"] .rsiFaqA67__item { border-left: 1px solid #e9edf2; border-right: 4px solid #ed255b; }
.rsiFaqA67[lang="ar"] .rsiFaqA67__questionText,
.rsiFaqA67[lang="ar"] .rsiFaqA67__answer p { text-align: right; }
.rsiFaqA67[lang="ar"] .rsiFaqA67__question { font-family: inherit; line-height: 1.8; }
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover { background: #ed255b; border-color: #ed255b; }
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover .rsiFaqA67__question,
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover .rsiFaqA67__answer p { color: white; }
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover .rsiFaqA67__icon { background: rgb(255 255 255 / 20%); }
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover .rsiFaqA67__icon::before,
.rsiFaqA67[lang="ar"] .rsiFaqA67__item:hover .rsiFaqA67__icon::after { background: white; }
.rsiDemoLinksV94[lang="ar"] .rsiDemoLinksV94__arrow,
.rsiGovCtaB39[lang="ar"] .rsiGovCtaB39__arrow { transform: scaleX(-1); }
.rsiDemoLinksV94[lang="ar"] .rsiDemoLinksV94__button:hover .rsiDemoLinksV94__arrow,
.rsiGovCtaB39[lang="ar"] .rsiGovCtaB39__button:hover .rsiGovCtaB39__arrow { transform: translateX(-4px) scaleX(-1); }
.rsiDemoLinksV94[lang="ar"] .rsiDemoLinksV94__button::before { transform-origin: right; }
/* Keep SVG chart coordinates, English API labels and logo motion stable. */
section[lang="ar"] svg { direction: ltr; }
.rsiClientStripT8[lang="ar"] .rsiClientStripT8__slider { direction: ltr; }
.rsiClientStripT8[lang="ar"] .rsiClientStripT8__heading { direction: rtl; }
@media(max-width:760px) {
  section[lang="ar"] [class$="__heading"] { letter-spacing: normal; }
  .rsiPmsSliderN6[lang="ar"] .rsiPmsSliderN6__text { text-align: right; }
  .rsiFaqA67[lang="ar"] .rsiFaqA67__question { font-size: 15px; }
  .rsiGovCtaB39[lang="ar"] .rsiGovCtaB39__button { justify-self: start; }
}
@media(prefers-reduced-motion:reduce) {
  section[lang="ar"] *, section[lang="ar"] *::before, section[lang="ar"] *::after {
    animation: none !important; transition: none !important;
  }
}
.colorfont{
    color: #000 !important;
}
.rsiStudioStatsV83 {
  --rss-gold: #aa7c2e;
  --rss-dark: #232a30;
  --rss-muted: #687078;
  padding: clamp(55px, 8vw, 105px) 20px;
  background: #f8f7f4;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiStudioStatsV83,
.rsiStudioStatsV83 * {
  box-sizing: border-box;
}

.rsiStudioStatsV83__wrap {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  align-items: center;
  gap: clamp(35px, 6vw, 85px);
  width: min(1200px, 100%);
  margin-inline: auto;
}

/* CONTENT */
.rsiStudioStatsV83__content {
  min-width: 0;
}

.rsiStudioStatsV83__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: var(--rss-gold);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.rsiStudioStatsV83__eyebrow::before {
  content: "";
  width: 30px;
  height: 2px;
  background: currentColor;
}

.rsiStudioStatsV83__heading {
    margin: 0 0 23px;
    color: var(--rss-dark);
    font-size: clamp(32px, 3.6vw, 49px);
    font-weight: 500;
    line-height: 1.12;
    letter-spacing: -1.7px;
    text-wrap: balance;
}

.rsiStudioStatsV83__heading span {
  color: var(--rss-gold);
}

.rsiStudioStatsV83__intro {
  margin: 0 0 18px;
  color: #3f484f;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.85;
}

.rsiStudioStatsV83__description {
  margin: 0;
  color: var(--rss-muted);
  font-size: 14px;
  line-height: 1.95;
}

.rsiStudioStatsV83__footer {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid #e6e2d9;
  color: #565e64;
  font-size: 12px;
  line-height: 1.6;
}

.rsiStudioStatsV83__footer svg {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: var(--rss-gold);
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* STATISTICS */
.rsiStudioStatsV83__stats {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  min-width: 0;
  margin: 0;
  padding: 20px 0;
}

/* Rotating background ring */
.rsiStudioStatsV83__stats::before {
  content: "";
  position: absolute;
  inset: 8% -4%;
  z-index: -1;
  border: 1px dashed #dcd1b9;
  border-radius: 50%;
  pointer-events: none;
  animation: rsiStudioStatsV83Orbit 65s linear infinite;
}

.rsiStudioStatsV83__card {
  position: relative;
  min-width: 0;
  min-height: 205px;
  margin: 0;
  padding: 25px;
  overflow: hidden;
  border: 1px solid #eae6dd;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 30px rgb(49 40 22 / 4%);
  animation: rsiStudioStatsV83Float 7s ease-in-out infinite;
  transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiStudioStatsV83__card:nth-child(even) {
  top: 32px;
  animation-delay: -3.5s;
}

.rsiStudioStatsV83__card::after {
  content: "";
  position: absolute;
  right: -23px;
  bottom: -23px;
  width: 80px;
  height: 80px;
  border: 1px solid #efe5d2;
  border-radius: 50%;
  transition: transform .4s ease;
}

.rsiStudioStatsV83__card:hover {
  border-color: #c8aa6d;
  box-shadow: 0 18px 35px rgb(93 71 29 / 10%);
}

.rsiStudioStatsV83__card:hover::after {
  transform: scale(1.5);
}

.rsiStudioStatsV83__icon {
  display: grid;
  place-items: center;
  width: 41px;
  height: 41px;
  margin-bottom: 23px;
  border-radius: 12px;
  background: #f8f2e6;
  color: var(--rss-gold);
}

.rsiStudioStatsV83__icon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiStudioStatsV83__number {
  display: block;
  margin: 0 0 8px;
  color: var(--rss-dark);
  font-size: clamp(38px, 4vw, 51px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -2px;
  font-variant-numeric: tabular-nums;
}

.rsiStudioStatsV83__number span {
  color: var(--rss-gold);
  font-size: .65em;
  vertical-align: top;
}

.rsiStudioStatsV83__label {
  margin: 0;
  color: var(--rss-muted);
  font-size: 13px;
  line-height: 1.6;
}

/* FEATURED CARD */
.rsiStudioStatsV83__card--dark {
  background: #252d32;
  border-color: #252d32;
}

.rsiStudioStatsV83__card--dark .rsiStudioStatsV83__number {
  color: #fff;
}

.rsiStudioStatsV83__card--dark .rsiStudioStatsV83__number span {
  color: #e3c181;
}

.rsiStudioStatsV83__card--dark .rsiStudioStatsV83__label {
  color: #c6cdd0;
}

.rsiStudioStatsV83__card--dark .rsiStudioStatsV83__icon {
  background: #ffffff0d;
  color: #e3c181;
}

.rsiStudioStatsV83__card--dark::after {
  border-color: #ffffff1a;
}

/* CSS ANIMATIONS */
@keyframes rsiStudioStatsV83Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

@keyframes rsiStudioStatsV83Orbit {
  to { transform: rotate(360deg); }
}

/* RESPONSIVE */
@media (max-width: 950px) {
  .rsiStudioStatsV83__wrap {
    gap: 32px;
  }

  .rsiStudioStatsV83__card {
    padding: 21px;
    min-height: 195px;
  }
}

@media (max-width: 760px) {
  .rsiStudioStatsV83__wrap {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .rsiStudioStatsV83__stats {
    width: min(520px, 100%);
    margin-inline: auto;
    padding-bottom: 40px;
  }

  .rsiStudioStatsV83__heading {
    max-width: 550px;
  }

  .rsiStudioStatsV83__stats::before {
    inset-inline: 0;
  }
}

@media (max-width: 420px) {
  .rsiStudioStatsV83 {
    padding: 45px 16px;
  }

  .rsiStudioStatsV83__stats {
    gap: 13px;
  }

  .rsiStudioStatsV83__card {
    min-height: 180px;
    padding: 20px 16px;
    border-radius: 16px;
  }

  .rsiStudioStatsV83__number {
    font-size: 39px;
  }

  .rsiStudioStatsV83__icon {
    margin-bottom: 19px;
  }

  .rsiStudioStatsV83__label {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiStudioStatsV83 *,
  .rsiStudioStatsV83 *::before,
  .rsiStudioStatsV83 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiPortalX91 {
  --rpx-purple: #7960ed;
  --rpx-teal: #29ad99;
  --rpx-dark: #303542;
  --rpx-muted: #687286;
  padding: clamp(45px, 7vw, 90px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiPortalX91,
.rsiPortalX91 * {
  box-sizing: border-box;
}

.rsiPortalX91__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1.12fr;
  align-items: start;
  gap: clamp(30px, 5vw, 70px);
}

.rsiPortalX91__left,
.rsiPortalX91__content {
  min-width: 0;
}

.rsiPortalX91__heading {
  margin: 0 0 30px;
  color: var(--rpx-dark);
  font-size: clamp(30px, 3.2vw, 44px);
  font-weight: 800;
  line-height: 1.14;
  letter-spacing: -1.4px;
  text-wrap: balance;
}

.rsiPortalX91__description {
  margin: 0 0 25px;
  color: var(--rpx-muted);
  font-size: 15px;
  line-height: 1.85;
}

/* FEATURE LIST */
.rsiPortalX91__list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiPortalX91__item {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 11px 13px;
  border: 1px solid #eaf1ef;
  border-radius: 10px;
  background: linear-gradient(100deg, #f5fbf9, #fff);
  color: #566474;
  font-size: 13px;
  line-height: 1.65;
  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}

.rsiPortalX91__item::before {
  content: "";
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--rpx-teal)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / 17px no-repeat;
}

.rsiPortalX91__item:hover {
  transform: translateX(4px);
  border-color: #a4dbcf;
  box-shadow: 0 5px 15px #253c3208;
}

/* DASHBOARD ILLUSTRATION */
.rsiPortalX91__dashboard {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid #e4e2ee;
  border-radius: 16px;
  background: #f5f5fb;
  box-shadow:
    0 20px 45px #493b7910,
    0 3px 10px #493b7908;
  animation: rsiPortalX91Float 7s ease-in-out infinite;
}

/* Decorative visual, not an interactive application */
.rsiPortalX91__rail {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 21px;
  padding: 20px 0;
  border-right: 1px solid #eeedf5;
  background: #fff;
}

.rsiPortalX91__brand {
  width: 17px;
  height: 17px;
  margin-bottom: 28px;
  border: 5px solid var(--rpx-purple);
  border-right-color: #f3be52;
  border-radius: 50%;
}

.rsiPortalX91__railIcon {
  width: 12px;
  height: 12px;
  border: 1.5px solid #c5c0da;
  border-radius: 3px;
}

.rsiPortalX91__railIcon--active {
  border-color: var(--rpx-purple);
  background: #eee9ff;
  box-shadow: 0 0 0 5px #f5f1ff;
}

.rsiPortalX91__main {
  min-width: 0;
  padding: 20px 16px;
}

.rsiPortalX91__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 24px;
}

.rsiPortalX91__appTitle {
  color: #37335c;
  font-size: 13px;
  font-weight: 700;
}

.rsiPortalX91__search {
  width: 40%;
  height: 23px;
  border-radius: 5px;
  background: #fff;
}

.rsiPortalX91__workspace {
  display: grid;
  grid-template-columns: .9fr 1.5fr;
  gap: 13px;
}

.rsiPortalX91__miniLabel {
  margin: 0 0 10px;
  color: #4d476d;
  font-size: 10px;
  font-weight: 700;
}

.rsiPortalX91__department {
  margin-bottom: 9px;
  padding: 12px 10px;
  border: 1px solid #f0eef7;
  border-radius: 7px;
  background: #fff;
}

.rsiPortalX91__department--active {
  border-color: transparent;
  background: linear-gradient(120deg, #9b83ff, #7756ed);
}

.rsiPortalX91__department strong {
  display: block;
  margin-bottom: 9px;
  color: #51456e;
  font-size: 9px;
  line-height: 1.4;
}

.rsiPortalX91__department--active strong {
  color: #fff;
}

.rsiPortalX91__pill {
  display: inline-block;
  padding: 3px 6px;
  border-radius: 4px;
  background: #f1edff;
  color: #8a6bd2;
  font-size: 7px;
}

.rsiPortalX91__department--active .rsiPortalX91__pill {
  background: #ffffff26;
  color: #fff;
}

.rsiPortalX91__tasks {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 9px;
  margin-bottom: 18px;
}

.rsiPortalX91__task {
  padding: 12px 10px;
  border-radius: 7px;
  background: #fff;
}

.rsiPortalX91__task strong {
  display: block;
  margin-bottom: 12px;
  color: #51456e;
  font-size: 9px;
  line-height: 1.5;
}

.rsiPortalX91__skeleton {
  display: block;
  height: 4px;
  margin-bottom: 6px;
  border-radius: 4px;
  background: #eeedf4;
}

.rsiPortalX91__skeleton:nth-of-type(2) {
  width: 80%;
}

.rsiPortalX91__skeleton:nth-of-type(3) {
  width: 60%;
}

.rsiPortalX91__avatars {
  display: flex;
  margin-top: 12px;
  padding-left: 3px;
}

.rsiPortalX91__avatars i {
  width: 13px;
  height: 13px;
  margin-left: -3px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #f1b9a1;
}

.rsiPortalX91__avatars i:nth-child(2) {
  background: #9cb8d8;
}

.rsiPortalX91__avatars i:nth-child(3) {
  background: #b1c8a2;
}

.rsiPortalX91__chart {
  padding: 12px 9px 8px;
  border-radius: 8px;
  background: #fff;
}

.rsiPortalX91__chart svg {
  display: block;
  width: 100%;
  height: auto;
}

.rsiPortalX91__chartLine {
  stroke-dasharray: 420;
  stroke-dashoffset: 420;
  animation: rsiPortalX91Draw 6s ease-in-out infinite;
}

.rsiPortalX91__chartLine--second {
  animation-delay: .5s;
}

.rsiPortalX91__metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin-top: 12px;
}

.rsiPortalX91__metric {
  padding: 9px 5px;
  border: 1px solid #e5e1f2;
  border-radius: 5px;
  color: #8b7ab4;
  font-size: 7px;
  text-align: center;
}

.rsiPortalX91__metric--accent {
  border-color: #ff927a;
  background: #ff927a;
  color: #fff;
}

@keyframes rsiPortalX91Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes rsiPortalX91Draw {
  0% { stroke-dashoffset: 420; }
  55%, 100% { stroke-dashoffset: 0; }
}

@media (max-width: 900px) {
  .rsiPortalX91__wrap {
    gap: 28px;
    grid-template-columns: 1fr 1fr;
  }

  .rsiPortalX91__main {
    padding: 17px 10px;
  }

  .rsiPortalX91__workspace {
    gap: 8px;
  }
}

@media (max-width: 740px) {
  .rsiPortalX91__wrap {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .rsiPortalX91__dashboard {
    max-width: 550px;
    margin-inline: auto;
  }

  .rsiPortalX91__heading {
    max-width: 580px;
  }

  .rsiPortalX91__main {
    padding: 20px 16px;
  }
}

@media (max-width: 380px) {
  .rsiPortalX91 {
    padding-inline: 15px;
  }

  .rsiPortalX91__dashboard {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .rsiPortalX91__main {
    padding: 16px 9px;
  }

  .rsiPortalX91__tasks {
    grid-template-columns: 1fr;
  }

  .rsiPortalX91__task:last-child {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPortalX91 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiPortalX91__chartLine {
    stroke-dashoffset: 0;
  }
}
.rsiPortalX91__heading {
  font-weight: 500;
  letter-spacing: -1px;
}

/* Improved bullet layout */
.rsiPortalX91__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiPortalX91__item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 52px;
  padding: 14px 17px;
  overflow: hidden;
  border: 1px solid #e5eee9;
  border-radius: 12px;
  background: #fff;
  color: #526172;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.65;
  box-shadow: 0 3px 12px rgb(32 65 53 / 3%);
  transition:
    border-color .3s ease,
    background-color .3s ease,
    box-shadow .3s ease,
    transform .3s ease;
}

.rsiPortalX91__item::before {
  content: "";
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  margin: 0;
  border: 1px solid #ccebe2;
  border-radius: 9px;
  background: #edf8f3
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='%2329ad99' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / 18px no-repeat;
  transition: transform .3s ease, background-color .3s ease;
}

.rsiPortalX91__item::after {
  content: "";
  position: absolute;
  inset: 13px auto 13px 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: #29ad99;
  transform: scaleY(0);
  transition: transform .3s ease;
}

.rsiPortalX91__item:hover {
  transform: translateY(-3px);
  border-color: #a9dccc;
  background: #f8fcfa;
  box-shadow: 0 8px 20px rgb(32 65 53 / 7%);
}

.rsiPortalX91__item:hover::before {
  transform: rotate(-5deg);
  background-color: #ddf3e9;
}

.rsiPortalX91__item:hover::after {
  transform: scaleY(1);
}

@media (max-width: 480px) {
  .rsiPortalX91__item {
    padding: 12px 13px;
    gap: 11px;
    font-size: 13px;
  }

  .rsiPortalX91__item::before {
    flex-basis: 25px;
    width: 25px;
    height: 25px;
    border-radius: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPortalX91__item,
  .rsiPortalX91__item::before,
  .rsiPortalX91__item::after {
    transition: none;
  }
}
/* Balanced section layout */
.rsiPortalX91__wrap {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  align-items: center;
  gap: clamp(30px, 4vw, 60px);
}

.rsiPortalX91__heading {
    font-weight: 500;
    font-size: clamp(30px, 3vw, 50px);
    line-height: 1.2;
    margin-bottom: 66px;
}

.rsiPortalX91__description {
  font-size: 15px;
  line-height: 1.8;
  margin-bottom: 22px;
}

/* Two columns reduce the excess height */
.rsiPortalX91__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.rsiPortalX91__item {
  align-items: flex-start;
  min-width: 0;
  min-height: 76px;
  padding: 14px 12px;
  gap: 10px;
  font-size: 13px;
  line-height: 1.6;
  border-radius: 12px;
}

.rsiPortalX91__item::before {
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  margin-top: 1px;
  border-radius: 8px;
}

/* Tablet: stack the main columns */
@media (max-width: 1000px) {
  .rsiPortalX91__wrap {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .rsiPortalX91__left {
    width: 100%;
  }

  .rsiPortalX91__heading {
    max-width: 650px;
  }

  .rsiPortalX91__dashboard {
    width: min(600px, 100%);
    margin-inline: auto;
  }

  .rsiPortalX91__item {
    min-height: 65px;
  }
}

/* Mobile: readable full-width bullets */
@media (max-width: 560px) {
  .rsiPortalX91__list {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .rsiPortalX91__item {
    min-height: auto;
    align-items: center;
    padding: 13px 14px;
  }

  .rsiPortalX91__heading {
    font-size: 30px;
  }

  .rsiPortalX91__description {
    font-size: 14px;
  }
}
.rsiPropertyM64 {
  --rpm-accent: #2aaf98;
  --rpm-dark: #242b33;
  --rpm-text: #637084;
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #f2f3f3;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiPropertyM64,
.rsiPropertyM64 * {
  box-sizing: border-box;
}

.rsiPropertyM64__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1.08fr;
  align-items: center;
  gap: clamp(30px, 5vw, 70px);
}

/* LEFT VISUAL */
.rsiPropertyM64__visual {
  position: relative;
  isolation: isolate;
  min-width: 0;
  margin: 0;
  padding: 15px 10px;
}

.rsiPropertyM64__visual::before {
  content: "";
  position: absolute;
  inset: 12% 3%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    #dceee7,
    rgb(220 238 231 / 40%) 45%,
    transparent 72%
  );
  animation: rsiPropertyM64Glow 7s ease-in-out infinite;
}

.rsiPropertyM64__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 16px 20px rgb(35 52 45 / 8%));
  animation: rsiPropertyM64Float 6s ease-in-out infinite;
}

.rsiPropertyM64__spark {
  position: absolute;
  top: 12%;
  right: 5%;
  width: 15px;
  height: 15px;
  background: var(--rpm-accent);
  clip-path: polygon(
    50% 0%, 62% 38%, 100% 50%, 62% 62%,
    50% 100%, 38% 62%, 0% 50%, 38% 38%
  );
  pointer-events: none;
  animation: rsiPropertyM64Spark 5s ease-in-out infinite;
}

/* CONTENT */
.rsiPropertyM64__content {
  min-width: 0;
}

.rsiPropertyM64__heading {
  margin: 0 0 20px;
  color: var(--rpm-dark);
  font-size: clamp(28px, 2.8vw, 50px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.9px;
  text-wrap: balance;
}

.rsiPropertyM64__description {
  margin: 0 0 24px;
  color: var(--rpm-text);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.85;
}

/* FEATURE BULLETS */
.rsiPropertyM64__list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiPropertyM64__item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  overflow: hidden;
  border: 1px solid #e0e9e5;
  border-radius: 12px;
  background: #ffffff;
  color: #526171;
  font-size: 14px;
  line-height: 1.65;
  box-shadow: 0 3px 12px rgb(35 52 45 / 2%);
  transition:
    transform .3s ease,
    border-color .3s ease,
    background-color .3s ease,
    box-shadow .3s ease;
}

.rsiPropertyM64__item::before {
  content: "";
  position: absolute;
  inset: 13px auto 13px 0;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: var(--rpm-accent);
  transform: scaleY(0);
  transition: transform .3s ease;
}

.rsiPropertyM64__icon {
  display: grid;
  place-items: center;
  flex: 0 0 31px;
  width: 31px;
  height: 31px;
  border: 1px solid #d2ece2;
  border-radius: 9px;
  background: #edf8f3;
  color: var(--rpm-accent);
  transition:
    color .3s ease,
    background-color .3s ease,
    transform .3s ease;
}

.rsiPropertyM64__icon svg {
  display: block;
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiPropertyM64__item:hover {
  transform: translateY(-3px);
  border-color: #a5d8c8;
  background: #fafffc;
  box-shadow: 0 8px 22px rgb(35 52 45 / 6%);
}

.rsiPropertyM64__item:hover::before {
  transform: scaleY(1);
}

.rsiPropertyM64__item:hover .rsiPropertyM64__icon {
  background: var(--rpm-accent);
  border-color: var(--rpm-accent);
  color: #fff;
  transform: rotate(-5deg);
}

/* CSS ANIMATIONS */
@keyframes rsiPropertyM64Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

@keyframes rsiPropertyM64Glow {
  0%, 100% {
    opacity: .6;
    transform: scale(.94);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes rsiPropertyM64Spark {
  0%, 100% {
    opacity: .4;
    transform: scale(.8) rotate(0);
  }
  50% {
    opacity: 1;
    transform: scale(1.1) rotate(90deg);
  }
}

/* RESPONSIVE */
@media (max-width: 950px) {
  .rsiPropertyM64__wrap {
    gap: 28px;
    grid-template-columns: .9fr 1.1fr;
  }

  .rsiPropertyM64__heading {
    font-size: 30px;
  }

  .rsiPropertyM64__item {
    padding: 12px;
    font-size: 13px;
  }
}

@media (max-width: 760px) {
  .rsiPropertyM64__wrap {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .rsiPropertyM64__visual {
    width: min(520px, 100%);
    margin-inline: auto;
  }

  .rsiPropertyM64__heading {
    font-size: clamp(28px, 5vw, 36px);
  }
}

@media (max-width: 420px) {
  .rsiPropertyM64 {
    padding-inline: 16px;
  }

  .rsiPropertyM64__description {
    font-size: 14px;
  }

  .rsiPropertyM64__item {
    gap: 10px;
    border-radius: 10px;
  }

  .rsiPropertyM64__icon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPropertyM64 *,
  .rsiPropertyM64 *::before {
    animation: none !important;
    transition: none !important;
  }
}
.rsiSalesF86 {
  --sf-purple: #8364f5;
  --sf-teal: #25ad97;
  --sf-dark: #292e3b;
  --sf-muted: #677286;
  padding: clamp(45px, 6vw, 85px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiSalesF86,
.rsiSalesF86 * {
  box-sizing: border-box;
}

.rsiSalesF86__wrap {
  width: min(1180px, 100%);
  margin-inline: auto;
}

.rsiSalesF86__header {
  max-width: 950px;
  margin-inline: auto;
  text-align: center;
  position: inherit;
}

.rsiSalesF86__heading {
  margin: 0 0 20px;
  color: var(--sf-dark);
  font-size: clamp(30px, 3.5vw, 50px);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -1.2px;
  text-wrap: balance;
}

.rsiSalesF86__description {
  margin: 0;
  color: var(--sf-muted);
  font-size: 15px;
  line-height: 1.85;
}

/* SCALABLE LAPTOP ILLUSTRATION */
.rsiSalesF86__visual {
  position: relative;
  isolation: isolate;
  width: min(780px, 100%);
  margin: 25px auto 30px;
}

.rsiSalesF86__visual::before {
  content: "";
  position: absolute;
  inset: 8% 12%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(ellipse, #eee9ff, #faf8ff 55%, transparent 72%);
}

.rsiSalesF86__svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.rsiSalesF86__float {
  animation: rsiSalesF86Float 6s ease-in-out infinite;
}

.rsiSalesF86__float--reverse {
  animation-delay: -3s;
}

.rsiSalesF86__bar {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: rsiSalesF86Bars 4s ease-in-out infinite;
}

.rsiSalesF86__bar:nth-child(2n) {
  animation-delay: -.8s;
}

.rsiSalesF86__bar:nth-child(3n) {
  animation-delay: -1.6s;
}

.rsiSalesF86__line {
  stroke-dasharray: 420;
  stroke-dashoffset: 420;
  animation: rsiSalesF86Draw 6s ease-in-out infinite;
}

.rsiSalesF86__progress {
  transform: rotate(-90deg);
  transform-origin: 336px 265px;
  stroke-dasharray: 176;
  stroke-dashoffset: 55;
  animation: rsiSalesF86Progress 5s ease-in-out infinite;
}

.rsiSalesF86__signal {
  animation: rsiSalesF86Signal 3s ease-in-out infinite;
}

/* FEATURE CARDS */
.rsiSalesF86__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiSalesF86__item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 14px 16px;
  overflow: hidden;
  border: 1px solid #e6eeeb;
  border-radius: 12px;
  background: linear-gradient(110deg, #f8fcfa, #fff);
  color: #566374;
  font-size: 13px;
  line-height: 1.65;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiSalesF86__item::before {
  content: "";
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  border: 1px solid #cceadf;
  border-radius: 8px;
  background: #eaf7f1
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='%2325ad97' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / 18px no-repeat;
}

.rsiSalesF86__item:hover {
  transform: translateY(-3px);
  border-color: #a3d9c9;
  box-shadow: 0 8px 20px #263b310a;
}

@keyframes rsiSalesF86Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes rsiSalesF86Bars {
  0%, 100% { transform: scaleY(.75); }
  50% { transform: scaleY(1); }
}

@keyframes rsiSalesF86Draw {
  0% { stroke-dashoffset: 420; }
  65%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiSalesF86Progress {
  0%, 100% { stroke-dashoffset: 85; }
  50% { stroke-dashoffset: 40; }
}

@keyframes rsiSalesF86Signal {
  0%, 100% { opacity: .4; }
  50% { opacity: 1; }
}

@media (max-width: 600px) {
  .rsiSalesF86 {
    padding-inline: 16px;
  }

  .rsiSalesF86__list {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .rsiSalesF86__description {
    font-size: 14px;
    text-align: left;
  }

  .rsiSalesF86__visual {
    margin-block: 20px;
  }

  .rsiSalesF86__item {
    padding: 12px 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiSalesF86 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiSalesF86__line {
    stroke-dashoffset: 0;
  }
}
.rsiFacilityU62 {
  --rfu-teal: #29ad99;
  --rfu-dark: #29323e;
  --rfu-text: #637084;
  padding: clamp(45px, 6vw, 75px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiFacilityU62,
.rsiFacilityU62 * {
  box-sizing: border-box;
}

.rsiFacilityU62__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
  align-items: center;
  gap: clamp(30px, 4vw, 60px);
}

/* CONTENT */
.rsiFacilityU62__content {
  min-width: 0;
}

.rsiFacilityU62__heading {
  margin: 0 0 20px;
  color: var(--rfu-dark);
  font-size: clamp(28px, 2.8vw, 39px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -.9px;
  text-wrap: balance;
}

.rsiFacilityU62__description {
  margin: 0 0 24px;
  color: var(--rfu-text);
  font-size: 15px;
  line-height: 1.85;
}

/* UNIFORM FEATURE CARDS */
.rsiFacilityU62__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiFacilityU62__item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 13px;
  border: 1px solid #e5eee9;
  border-radius: 10px;
  background: #fff;
  color: #526172;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.65;
  transition:
    transform .3s ease,
    border-color .3s ease,
    background-color .3s ease,
    box-shadow .3s ease;
}

.rsiFacilityU62__item::before {
  content: "";
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  margin-top: 1px;
  border: 1px solid #cceade;
  border-radius: 8px;
  background: #edf8f3
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='%2329ad99' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / 17px no-repeat;
}

.rsiFacilityU62__item:hover {
  transform: translateY(-2px);
  border-color: #a9dccc;
  background: #f8fcfa;
  box-shadow: 0 6px 16px rgb(32 65 53 / 5%);
}

/* DASHBOARD FRAME */
.rsiFacilityU62__visual {
  min-width: 0;
  margin: 0;
  padding: 16px;
  border: 1px solid #e5eae8;
  border-radius: 16px;
  background: #f7f9fa;
  box-shadow: 0 12px 30px rgb(35 52 45 / 5%);
}

.rsiFacilityU62__svg {
  display: block;
  width: 100%;
  height: auto;
}

.rsiFacilityU62__chartLine {
  stroke-dasharray: 450;
  stroke-dashoffset: 0;
  animation: rsiFacilityU62Draw 6s ease-in-out infinite;
}

.rsiFacilityU62__progress {
  stroke-dasharray: 251.3;
  stroke-dashoffset: 65;
  transform: rotate(-90deg);
  transform-origin: 461px 326px;
  animation: rsiFacilityU62Progress 6s ease-in-out infinite;
}

.rsiFacilityU62__status {
  animation: rsiFacilityU62Status 3s ease-in-out infinite;
}

/* CSS-ONLY ANIMATIONS */
@keyframes rsiFacilityU62Draw {
  0% { stroke-dashoffset: 450; }
  65%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiFacilityU62Progress {
  0%, 100% { stroke-dashoffset: 85; }
  50% { stroke-dashoffset: 45; }
}

@keyframes rsiFacilityU62Status {
  0%, 100% { opacity: .5; }
  50% { opacity: 1; }
}

/* RESPONSIVE */
@media (max-width: 1050px) {
  .rsiFacilityU62__wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .rsiFacilityU62__visual {
    width: min(600px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 560px) {
  .rsiFacilityU62 {
    padding-inline: 16px;
  }

  .rsiFacilityU62__visual {
    padding: 8px;
    border-radius: 12px;
  }

  .rsiFacilityU62__list {
    grid-template-columns: 1fr;
  }

  .rsiFacilityU62__item {
    align-items: center;
  }

  .rsiFacilityU62__description {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiFacilityU62 *,
  .rsiFacilityU62 *::before {
    animation: none !important;
    transition: none !important;
  }

  .rsiFacilityU62__chartLine {
    stroke-dashoffset: 0;
  }
}
.rsiFacilityU62 {
  background: #f2f3f4;
}

.rsiFacilityU62__wrap {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
  align-items: center;
  gap: 30px 50px;
}

/* Heading/text upar; bullets poori width par neeche */
.rsiFacilityU62__content {
  display: contents;
}

.rsiFacilityU62__visual {
  grid-column: 1;
  grid-row: 1 / span 2;
}

.rsiFacilityU62__heading {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  margin: 0;
  font-weight: 500;
}

.rsiFacilityU62__description {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  margin: 0;
}

/* All 12 bullets in one horizontal row */
.rsiFacilityU62__list {
  grid-column: 1 / -1;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 220px;
  grid-template-columns: none;
  gap: 12px;
  width: 100%;
  min-width: 0;
  margin: 10px 0 0;
  padding: 5px 2px 15px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: #a8cfc4 #e5ebe8;
}

.rsiFacilityU62__item {
  align-items: flex-start;
  min-height: 100px;
  padding: 16px 13px;
  background: #fff;
  scroll-snap-align: start;
}

.rsiFacilityU62__list::-webkit-scrollbar {
  height: 6px;
}

.rsiFacilityU62__list::-webkit-scrollbar-track {
  background: #e5ebe8;
  border-radius: 10px;
}

.rsiFacilityU62__list::-webkit-scrollbar-thumb {
  background: #a8cfc4;
  border-radius: 10px;
}

@media (max-width: 760px) {
  .rsiFacilityU62__wrap {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .rsiFacilityU62__visual,
  .rsiFacilityU62__heading,
  .rsiFacilityU62__description,
  .rsiFacilityU62__list {
    grid-column: 1;
    grid-row: auto;
  }

  .rsiFacilityU62__visual {
    width: min(560px, 100%);
    margin-inline: auto;
  }

  .rsiFacilityU62__list {
    grid-auto-columns: min(240px, 80vw);
    margin-top: 0;
  }
}
.rsiFacilityU62__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-flow: row;
  grid-auto-columns: auto;
  gap: 12px;
  overflow: visible;
  scroll-snap-type: none;
  padding: 0;
}

.rsiFacilityU62__item {
  flex-direction: column;
  align-items: flex-start;
  min-height: 125px;
  padding: 15px;
  scroll-snap-align: none;
}

@media (max-width: 1050px) {
  .rsiFacilityU62__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .rsiFacilityU62__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 360px) {
  .rsiFacilityU62__list {
    grid-template-columns: 1fr;
  }

  .rsiFacilityU62__item {
    flex-direction: row;
    align-items: center;
    min-height: auto;
  }
}
/* Remove previous check icons */
.rsiFacilityU62__item::before {
  content: none;
}

.rsiFacilityU62__item {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}

.rsiFacilityU62__featureIcon {
  display: grid;
  place-items: center;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border: 1px solid #cfe9df;
  border-radius: 11px;
  background: #edf8f3;
  color: #29ad99;
  transition:
    transform .3s ease,
    background-color .3s ease,
    color .3s ease;
}

.rsiFacilityU62__featureIcon svg {
  display: block;
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiFacilityU62__item:hover .rsiFacilityU62__featureIcon {
  transform: translateY(-2px) rotate(-5deg);
  background: #29ad99;
  border-color: #29ad99;
  color: #fff;
}

@media (max-width: 360px) {
  .rsiFacilityU62__item {
    flex-direction: row;
    align-items: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiFacilityU62__featureIcon {
    transition: none;
  }
}
.rsiAccountsJ73 {
  --raj-teal: #29ad99;
  --raj-purple: #865be8;
  --raj-dark: #29323e;
  --raj-text: #637084;
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiAccountsJ73,
.rsiAccountsJ73 * {
  box-sizing: border-box;
}

.rsiAccountsJ73__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiAccountsJ73__top {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  gap: clamp(30px, 5vw, 65px);
}

.rsiAccountsJ73__content {
  min-width: 0;
}

.rsiAccountsJ73__heading {
  margin: 0 0 20px;
  color: var(--raj-dark);
  font-size: clamp(28px, 2.8vw, 39px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -.9px;
  text-wrap: balance;
}

.rsiAccountsJ73__description {
  margin: 0;
  color: var(--raj-text);
  font-size: 15px;
  line-height: 1.85;
}

/* DASHBOARD */
.rsiAccountsJ73__visual {
  min-width: 0;
  margin: 0;
}

.rsiAccountsJ73__svg {
  display: block;
  width: 100%;
  height: auto;
}

.rsiAccountsJ73__float {
  animation: rsiAccountsJ73Float 6s ease-in-out infinite;
}

.rsiAccountsJ73__float--second {
  animation-delay: -3s;
}

.rsiAccountsJ73__bar {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: rsiAccountsJ73Bars 4s ease-in-out infinite;
}

.rsiAccountsJ73__bar:nth-child(even) {
  animation-delay: -1.5s;
}

.rsiAccountsJ73__line {
  stroke-dasharray: 350;
  stroke-dashoffset: 0;
  animation: rsiAccountsJ73Draw 6s ease-in-out infinite;
}

/* FEATURES: FOUR CARDS PER ROW */
.rsiAccountsJ73__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 35px 0 0;
  padding: 0;
  list-style: none;
}

.rsiAccountsJ73__item {
  min-width: 0;
  padding: 20px 17px;
  border: 1px solid #e5eee9;
  border-radius: 12px;
  background: #fff;
  color: #526172;
  font-size: 13px;
  line-height: 1.7;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiAccountsJ73__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 14px;
  border: 1px solid #cfe9df;
  border-radius: 11px;
  background: #edf8f3;
  color: var(--raj-teal);
  transition:
    transform .3s ease,
    background-color .3s ease,
    color .3s ease;
}

.rsiAccountsJ73__icon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiAccountsJ73__item:hover {
  transform: translateY(-4px);
  border-color: #a9dccc;
  box-shadow: 0 8px 22px rgb(32 65 53 / 6%);
}

.rsiAccountsJ73__item:hover .rsiAccountsJ73__icon {
  transform: rotate(-5deg);
  background: var(--raj-teal);
  border-color: var(--raj-teal);
  color: #fff;
}

.rsiAccountsJ73__note {
  margin: 28px 0 0;
  padding: 22px 25px;
  border-left: 3px solid var(--raj-teal);
  border-radius: 0 12px 12px 0;
  background: #f6f9f8;
  color: var(--raj-text);
  font-size: 14px;
  line-height: 1.85;
}

@keyframes rsiAccountsJ73Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

@keyframes rsiAccountsJ73Bars {
  0%, 100% { transform: scaleY(.8); }
  50% { transform: scaleY(1); }
}

@keyframes rsiAccountsJ73Draw {
  0% { stroke-dashoffset: 350; }
  65%, 100% { stroke-dashoffset: 0; }
}

@media (max-width: 950px) {
  .rsiAccountsJ73__top {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiAccountsJ73__visual {
    width: min(580px, 100%);
    margin-inline: auto;
  }

  .rsiAccountsJ73__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .rsiAccountsJ73 {
    padding-inline: 16px;
  }

  .rsiAccountsJ73__list {
    gap: 10px;
    margin-top: 25px;
  }

  .rsiAccountsJ73__item {
    padding: 16px 12px;
    font-size: 12px;
  }

  .rsiAccountsJ73__description,
  .rsiAccountsJ73__note {
    font-size: 14px;
  }

  .rsiAccountsJ73__note {
    padding: 18px;
  }
}

@media (max-width: 350px) {
  .rsiAccountsJ73__list {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiAccountsJ73 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiAccountsJ73__line {
    stroke-dashoffset: 0;
  }
}
.rsiExpertC49 {
  --rec-gold: #f4ce46;
  padding: clamp(50px, 7vw, 90px) 20px;
  overflow: hidden;
  background: #101010;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiExpertC49,
.rsiExpertC49 * {
  box-sizing: border-box;
}

.rsiExpertC49__wrap {
  width: min(1200px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1.08fr 1fr;
  align-items: center;
  gap: clamp(30px, 5vw, 70px);
}

.rsiExpertC49__content {
  min-width: 0;
}

.rsiExpertC49__heading {
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(30px, 3.4vw, 45px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.rsiExpertC49__heading span {
  color: var(--rec-gold);
}

.rsiExpertC49__description {
  max-width: 590px;
  margin: 0;
  color: #d0d0d0;
  font-size: 15px;
  line-height: 1.85;
}

/* CONTACT BUTTON */
.rsiExpertC49 .rsiExpertC49__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  min-height: 54px;
  margin-top: 26px;
  padding: 15px 30px;
  border: 1px solid #fff;
  border-radius: 50px;
  background: #fff;
  color: #151515;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition:
    background-color .3s ease,
    border-color .3s ease,
    transform .3s ease,
    box-shadow .3s ease;
}

.rsiExpertC49__button svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiExpertC49 .rsiExpertC49__button:hover {
  transform: translateY(-3px);
  background: var(--rec-gold);
  border-color: var(--rec-gold);
  box-shadow: 0 8px 25px rgb(244 206 70 / 13%);
}

.rsiExpertC49__button:hover svg {
  transform: translateX(4px);
}

.rsiExpertC49__button:focus-visible {
  outline: 3px solid var(--rec-gold);
  outline-offset: 5px;
}

/* CUSTOM LINE-ART ILLUSTRATION */
.rsiExpertC49__visual {
  position: relative;
  isolation: isolate;
  min-width: 0;
  margin: 0;
}

.rsiExpertC49__visual::before {
  content: "";
  position: absolute;
  inset: 5%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    rgb(244 206 70 / 5%),
    transparent 70%
  );
}

.rsiExpertC49__art {
  display: block;
  width: 100%;
  height: auto;
}

.rsiExpertC49__drawing {
  fill: none;
  stroke: #bc982b;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiExpertC49__drawing path,
.rsiExpertC49__drawing ellipse {
  stroke-dasharray: 1600;
  stroke-dashoffset: 0;
  animation: rsiExpertC49Draw 9s ease-in-out infinite;
}

.rsiExpertC49__screen {
  fill: #151512;
  stroke: #e3bd40;
  stroke-width: 1.8;
}

.rsiExpertC49__screenLine {
  fill: none;
  stroke: #e3bd40;
  stroke-width: 1.5;
  stroke-linecap: round;
  animation: rsiExpertC49Pulse 4s ease-in-out infinite;
}

@keyframes rsiExpertC49Draw {
  0% { stroke-dashoffset: 1600; }
  45%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiExpertC49Pulse {
  0%, 100% { opacity: .4; }
  50% { opacity: 1; }
}

/* RESPONSIVE */
@media (max-width: 760px) {
  .rsiExpertC49__wrap {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .rsiExpertC49__visual {
    width: min(550px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 420px) {
  .rsiExpertC49 {
    padding-inline: 17px;
  }

  .rsiExpertC49__description {
    font-size: 14px;
  }

  .rsiExpertC49 .rsiExpertC49__button {
    padding-inline: 27px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiExpertC49 *,
  .rsiExpertC49__drawing path,
  .rsiExpertC49__drawing ellipse {
    animation: none !important;
    transition: none !important;
  }
}
.rsiErpD84 {
  --erp-teal: #29ad99;
  --erp-blue: #6489f3;
  --erp-dark: #29323e;
  --erp-text: #637084;
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #f2f3f4;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiErpD84,
.rsiErpD84 * {
  box-sizing: border-box;
}

.rsiErpD84__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiErpD84__top {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  align-items: center;
  gap: clamp(30px, 4vw, 60px);
}

.rsiErpD84__heading {
  margin: 0 0 20px;
  color: var(--erp-dark);
  font-size: clamp(29px, 3vw, 40px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.9px;
}

.rsiErpD84__description {
  margin: 0;
  color: var(--erp-text);
  font-size: 15px;
  line-height: 1.85;
}

.rsiErpD84__content {
  min-width: 0;
}

/* DASHBOARD */
.rsiErpD84__visual {
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid #e3e8ed;
  border-radius: 16px;
  background: #f8fafc;
  box-shadow: 0 12px 30px rgb(35 52 65 / 5%);
}

.rsiErpD84__svg {
  display: block;
  width: 100%;
  height: auto;
}

.rsiErpD84__line {
  stroke-dasharray: 450;
  animation: rsiErpD84Draw 6s ease-in-out infinite;
}

.rsiErpD84__ring {
  stroke-dasharray: 251.3;
  stroke-dashoffset: 65;
  transform: rotate(-90deg);
  transform-origin: 471px 330px;
  animation: rsiErpD84Progress 5s ease-in-out infinite;
}

/* DEVELOPMENT PROCESS */
.rsiErpD84__process {
  margin-top: 30px;
  padding: 24px;
  border: 1px solid #e3e9e6;
  border-radius: 14px;
  background: #fff;
}

.rsiErpD84__subheading {
  margin: 0 0 19px;
  color: var(--erp-dark);
  font-size: 19px;
  font-weight: 500;
  line-height: 1.5;
}

.rsiErpD84__steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: rsiErpD84-step;
}

.rsiErpD84__step {
  position: relative;
  min-width: 0;
  color: #586575;
  font-size: 12px;
  line-height: 1.7;
  counter-increment: rsiErpD84-step;
}

.rsiErpD84__step::before {
  content: "0" counter(rsiErpD84-step);
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin-bottom: 11px;
  border: 1px solid #cfe9df;
  border-radius: 10px;
  background: #edf8f3;
  color: var(--erp-teal);
  font-size: 12px;
  font-weight: 600;
}

.rsiErpD84__step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 16px;
  left: 43px;
  right: 0;
  border-top: 1px dashed #d2e4dd;
}

/* FEATURE GRID */
.rsiErpD84__features {
  margin-top: 30px;
}

.rsiErpD84__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiErpD84__item {
  min-width: 0;
  padding: 18px 14px;
  border: 1px solid #e2eae6;
  border-radius: 12px;
  background: #fff;
  color: #586575;
  font-size: 12px;
  line-height: 1.7;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiErpD84__icon {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  margin-bottom: 13px;
  border: 1px solid #cfe9df;
  border-radius: 10px;
  background: #edf8f3;
  color: var(--erp-teal);
  transition:
    background-color .3s ease,
    color .3s ease,
    transform .3s ease;
}

.rsiErpD84__icon svg {
  display: block;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiErpD84__item:hover {
  transform: translateY(-4px);
  border-color: #a9dccc;
  box-shadow: 0 8px 20px rgb(32 65 53 / 6%);
}

.rsiErpD84__item:hover .rsiErpD84__icon {
  transform: rotate(-5deg);
  border-color: var(--erp-teal);
  background: var(--erp-teal);
  color: #fff;
}

@keyframes rsiErpD84Draw {
  0% { stroke-dashoffset: 450; }
  65%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiErpD84Progress {
  0%, 100% { stroke-dashoffset: 90; }
  50% { stroke-dashoffset: 45; }
}

@media (max-width: 1050px) {
  .rsiErpD84__top {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .rsiErpD84__visual {
    width: min(600px, 100%);
    margin-inline: auto;
  }

  .rsiErpD84__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .rsiErpD84__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .rsiErpD84__step::after {
    display: none;
  }
}

@media (max-width: 500px) {
  .rsiErpD84 {
    padding-inline: 16px;
  }

  .rsiErpD84__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .rsiErpD84__item {
    padding: 16px 12px;
  }

  .rsiErpD84__process {
    padding: 20px 16px;
  }

  .rsiErpD84__description {
    font-size: 14px;
  }

  .rsiErpD84__visual {
    padding: 7px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiErpD84 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiErpD84__line {
    stroke-dashoffset: 0;
  }
}
.rsiProposalP68 {
  --rpp-teal: #29ad99;
  --rpp-dark: #29323e;
  --rpp-text: #637084;
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiProposalP68,
.rsiProposalP68 * {
  box-sizing: border-box;
}

.rsiProposalP68__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiProposalP68__top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: clamp(30px, 5vw, 65px);
}

.rsiProposalP68__content {
  min-width: 0;
}

.rsiProposalP68__heading {
  margin: 0 0 20px;
  color: var(--rpp-dark);
  font-size: clamp(28px, 2.8vw, 39px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -.9px;
}

.rsiProposalP68__description {
  margin: 0;
  color: var(--rpp-text);
  font-size: 15px;
  line-height: 1.85;
}

/* DASHBOARD */
.rsiProposalP68__visual {
  min-width: 0;
  margin: 0;
  padding: 10px;
  border: 1px solid #e5e9e7;
  border-radius: 16px;
  background: #f6f7f7;
  box-shadow: 0 12px 30px rgb(35 52 45 / 5%);
}

.rsiProposalP68__art {
  display: block;
  width: 100%;
  height: auto;
}

.rsiProposalP68__line {
  stroke-dasharray: 500;
  animation: rsiProposalP68Draw 6s ease-in-out infinite;
}

.rsiProposalP68__ring {
  stroke-dasharray: 226.2;
  stroke-dashoffset: 113.1;
  transform: rotate(-90deg);
  transform-origin: 480px 137px;
  animation: rsiProposalP68Progress 6s ease-in-out infinite;
}

/* MODULE CARDS */
.rsiProposalP68__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin: 32px 0 0;
  padding: 0;
  list-style: none;
}

.rsiProposalP68__item {
  min-width: 0;
  padding: 18px 14px;
  border: 1px solid #e5eee9;
  border-radius: 12px;
  background: #fff;
  color: #566374;
  font-size: 12px;
  line-height: 1.65;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiProposalP68__icon {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  margin-bottom: 13px;
  border: 1px solid #cfe9df;
  border-radius: 10px;
  background: #edf8f3;
  color: var(--rpp-teal);
  transition:
    transform .3s ease,
    background-color .3s ease,
    color .3s ease;
}

.rsiProposalP68__icon svg {
  display: block;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiProposalP68__item:hover {
  transform: translateY(-4px);
  border-color: #a9dccc;
  box-shadow: 0 8px 20px rgb(32 65 53 / 6%);
}

.rsiProposalP68__item:hover .rsiProposalP68__icon {
  transform: rotate(-5deg);
  background: var(--rpp-teal);
  border-color: var(--rpp-teal);
  color: #fff;
}

@keyframes rsiProposalP68Draw {
  0% { stroke-dashoffset: 500; }
  65%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiProposalP68Progress {
  0%, 100% { stroke-dashoffset: 135; }
  50% { stroke-dashoffset: 90; }
}

@media (max-width: 1050px) {
  .rsiProposalP68__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .rsiProposalP68__top {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .rsiProposalP68__visual {
    width: min(580px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 500px) {
  .rsiProposalP68 {
    padding-inline: 16px;
  }

  .rsiProposalP68__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .rsiProposalP68__item {
    padding: 16px 12px;
  }

  .rsiProposalP68__description {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiProposalP68 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiProposalP68__line {
    stroke-dashoffset: 0;
  }
}
.rsiAutoHubL57 {
  --rah-teal: #29ad99;
  --rah-dark: #29323e;
  --rah-text: #637084;
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #f2f3f4;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiAutoHubL57,
.rsiAutoHubL57 * {
  box-sizing: border-box;
}

.rsiAutoHubL57__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiAutoHubL57__top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: clamp(30px, 5vw, 65px);
}

.rsiAutoHubL57__content {
  min-width: 0;
}

.rsiAutoHubL57__heading {
  margin: 0 0 20px;
  color: var(--rah-dark);
  font-size: clamp(29px, 3vw, 40px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -.9px;
  text-wrap: balance;
}

.rsiAutoHubL57__description {
  margin: 0;
  color: var(--rah-text);
  font-size: 15px;
  line-height: 1.85;
}

/* AUTOMATION VISUAL */
.rsiAutoHubL57__visual {
  min-width: 0;
  margin: 0;
}

.rsiAutoHubL57__art {
  display: block;
  width: 100%;
  height: auto;
}

.rsiAutoHubL57__connection {
  fill: none;
  stroke: #bfdcd3;
  stroke-width: 2;
}

.rsiAutoHubL57__signal {
  fill: none;
  stroke: #29ad99;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 8 180;
  animation: rsiAutoHubL57Flow 5s linear infinite;
}

.rsiAutoHubL57__signal--second {
  animation-delay: -2.5s;
}

.rsiAutoHubL57__gear {
  transform-box: fill-box;
  transform-origin: center;
  animation: rsiAutoHubL57Rotate 24s linear infinite;
}

.rsiAutoHubL57__halo {
  transform-box: fill-box;
  transform-origin: center;
  animation: rsiAutoHubL57Pulse 5s ease-in-out infinite;
}

.rsiAutoHubL57__node {
  animation: rsiAutoHubL57Float 6s ease-in-out infinite;
}

.rsiAutoHubL57__node--second {
  animation-delay: -3s;
}

/* FEATURE CARDS */
.rsiAutoHubL57__list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
}

.rsiAutoHubL57__item {
  min-width: 0;
  padding: 18px 15px;
  border: 1px solid #e2eae6;
  border-radius: 12px;
  background: #fff;
  color: #566374;
  font-size: 13px;
  line-height: 1.65;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiAutoHubL57__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 13px;
  border: 1px solid #cfe9df;
  border-radius: 11px;
  background: #edf8f3;
  color: var(--rah-teal);
  transition:
    transform .3s ease,
    background-color .3s ease,
    color .3s ease;
}

.rsiAutoHubL57__icon svg {
  display: block;
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiAutoHubL57__item:hover {
  transform: translateY(-4px);
  border-color: #a9dccc;
  box-shadow: 0 8px 20px rgb(32 65 53 / 6%);
}

.rsiAutoHubL57__item:hover .rsiAutoHubL57__icon {
  transform: rotate(-5deg);
  border-color: var(--rah-teal);
  background: var(--rah-teal);
  color: #fff;
}

@keyframes rsiAutoHubL57Flow {
  to { stroke-dashoffset: -376; }
}

@keyframes rsiAutoHubL57Rotate {
  to { transform: rotate(360deg); }
}

@keyframes rsiAutoHubL57Pulse {
  0%, 100% { transform: scale(.95); opacity: .5; }
  50% { transform: scale(1.05); opacity: 1; }
}

@keyframes rsiAutoHubL57Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@media (max-width: 1000px) {
  .rsiAutoHubL57__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .rsiAutoHubL57__top {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiAutoHubL57__visual {
    width: min(560px, 100%);
    margin-inline: auto;
  }

  .rsiAutoHubL57__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .rsiAutoHubL57 {
    padding-inline: 16px;
  }

  .rsiAutoHubL57__item {
    padding: 16px 12px;
    font-size: 12px;
  }

  .rsiAutoHubL57__description {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiAutoHubL57 * {
    animation: none !important;
    transition: none !important;
  }
}
.rsiRelatedW82 {
  --rrw-teal: #29ad99;
  --rrw-dark: #29323e;
  padding: clamp(40px, 5vw, 65px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiRelatedW82,
.rsiRelatedW82 * {
  box-sizing: border-box;
}

.rsiRelatedW82__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiRelatedW82__heading {
  margin: 0 0 25px;
  color: var(--rrw-dark);
  font-size: clamp(27px, 2.8vw, 38px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
}

.rsiRelatedW82__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiRelatedW82__item {
  min-width: 0;
}

.rsiRelatedW82__link {
  position: relative;
  display: flex;
  align-items: center;
  gap: 13px;
  height: 100%;
  min-height: 88px;
  padding: 18px;
  overflow: hidden;
  border: 1px solid #e3ece7;
  border-radius: 12px;
  background: #fff;
  color: #526172;
  font-size: 14px;
  line-height: 1.65;
  text-decoration: none;
  transition:
    transform .3s ease,
    border-color .3s ease,
    background-color .3s ease,
    box-shadow .3s ease;
}

.rsiRelatedW82__link::before {
  content: "";
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border: 1px solid #cfe9df;
  border-radius: 10px;
  background: #edf8f3
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 13a5 5 0 0 0 7 0l3-3a5 5 0 0 0-7-7l-2 2M14 11a5 5 0 0 0-7 0l-3 3a5 5 0 0 0 7 7l2-2' fill='none' stroke='%2329ad99' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E")
    center / 19px no-repeat;
  transition: transform .3s ease;
}

.rsiRelatedW82__link::after {
  content: "";
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  margin-left: auto;
  border-top: 1.5px solid #8da69c;
  border-right: 1.5px solid #8da69c;
  transform: rotate(45deg);
  transition: transform .3s ease, border-color .3s ease;
}

.rsiRelatedW82__link:hover {
  transform: translateY(-4px);
  border-color: #a9dccc;
  background: #f8fcfa;
  color: #247d6c;
  box-shadow: 0 8px 22px rgb(32 65 53 / 6%);
}

.rsiRelatedW82__link:hover::before {
  transform: rotate(-5deg);
}

.rsiRelatedW82__link:hover::after {
  transform: translateX(3px) rotate(45deg);
  border-color: var(--rrw-teal);
}

.rsiRelatedW82__link:focus-visible {
  outline: 3px solid var(--rrw-teal);
  outline-offset: 4px;
}

@media (max-width: 950px) {
  .rsiRelatedW82__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 580px) {
  .rsiRelatedW82 {
    padding-inline: 16px;
  }

  .rsiRelatedW82__list {
    grid-template-columns: 1fr;
    gap: 11px;
  }

  .rsiRelatedW82__link {
    min-height: 76px;
    padding: 15px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiRelatedW82 *,
  .rsiRelatedW82 *::before,
  .rsiRelatedW82 *::after {
    transition: none !important;
  }
}
.rsiRelatedW82__item:nth-child(9n + 1) {
  --card-color: #7654d6;
  --card-soft: #f3efff;
  --card-border: #ddd2fa;
}

.rsiRelatedW82__item:nth-child(9n + 2) {
  --card-color: #2977c9;
  --card-soft: #edf5ff;
  --card-border: #cde1f8;
}

.rsiRelatedW82__item:nth-child(9n + 3) {
  --card-color: #ce557b;
  --card-soft: #fff0f5;
  --card-border: #f4cedc;
}

.rsiRelatedW82__item:nth-child(9n + 4) {
  --card-color: #c57a22;
  --card-soft: #fff6e9;
  --card-border: #f1dbb9;
}

.rsiRelatedW82__item:nth-child(9n + 5) {
  --card-color: #168b91;
  --card-soft: #eaf8f8;
  --card-border: #bee6e6;
}

.rsiRelatedW82__item:nth-child(9n + 6) {
  --card-color: #cf6343;
  --card-soft: #fff1ec;
  --card-border: #f3d1c5;
}

.rsiRelatedW82__item:nth-child(9n + 7) {
  --card-color: #536dce;
  --card-soft: #eff2ff;
  --card-border: #d3dbfa;
}

.rsiRelatedW82__item:nth-child(9n + 8) {
  --card-color: #a44db7;
  --card-soft: #faf0fd;
  --card-border: #ebcfF2;
}

.rsiRelatedW82__item:nth-child(9n + 9) {
  --card-color: #598447;
  --card-soft: #f1f7ec;
  --card-border: #d5e5c9;
}

.rsiRelatedW82__link::before {
  background: var(--card-soft);
  border-color: var(--card-border);
}

/* Color the link symbol using a mask */
.rsiRelatedW82__link {
  isolation: isolate;
}

.rsiRelatedW82__item {
  position: relative;
}

.rsiRelatedW82__link::before {
  background: var(--card-color);
  border: 0;
  border-radius: 0;
  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 13a5 5 0 0 0 7 0l3-3a5 5 0 0 0-7-7l-2 2M14 11a5 5 0 0 0-7 0l-3 3a5 5 0 0 0 7 7l2-2' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E")
    center / 21px no-repeat;
  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 13a5 5 0 0 0 7 0l3-3a5 5 0 0 0-7-7l-2 2M14 11a5 5 0 0 0-7 0l-3 3a5 5 0 0 0 7 7l2-2' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E")
    center / 21px no-repeat;
}

.rsiRelatedW82__link {
  border-color: var(--card-border);
  background: linear-gradient(110deg, var(--card-soft), #fff 75%);
}

.rsiRelatedW82__link::after {
  border-color: var(--card-color);
}

.rsiRelatedW82__link:hover {
  color: var(--card-color);
  border-color: var(--card-color);
  background: var(--card-soft);
  box-shadow: 0 8px 22px rgb(40 45 60 / 7%);
}

.rsiRelatedW82__link:hover::after {
  border-color: var(--card-color);
}

.rsiRelatedW82__link:focus-visible {
  outline-color: var(--card-color);
}
.rsiProjectCtaN53 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(45px, 6vw, 70px) 20px;
  background: #101010;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiProjectCtaN53,
.rsiProjectCtaN53 * {
  box-sizing: border-box;
}

.rsiProjectCtaN53__wrap {
  position: relative;
  z-index: 1;
  width: min(1000px, 100%);
  margin-inline: auto;
  text-align: center;
}

/* Subtle decorative rings */
.rsiProjectCtaN53::before,
.rsiProjectCtaN53::after {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  border: 1px solid rgb(244 206 70 / 12%);
  border-radius: 50%;
  pointer-events: none;
  animation: rsiProjectCtaN53Drift 12s ease-in-out infinite;
}

.rsiProjectCtaN53::before {
  top: -210px;
  left: -80px;
}

.rsiProjectCtaN53::after {
  right: -100px;
  bottom: -235px;
  width: 400px;
  height: 400px;
  animation-delay: -6s;
}

.rsiProjectCtaN53__heading {
  margin: 0 0 15px;
  color: #fff;
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.rsiProjectCtaN53__heading span {
  color: #f4ce46;
}

.rsiProjectCtaN53__description {
  margin: 0;
  color: #c9c9c9;
  font-size: 16px;
  line-height: 1.8;
}

.rsiProjectCtaN53 .rsiProjectCtaN53__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 53px;
  margin-top: 25px;
  padding: 15px 27px;
  border: 1px solid #f4ce46;
  border-radius: 9px;
  background: #f4ce46;
  color: #171717;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition:
    transform .3s ease,
    background-color .3s ease,
    box-shadow .3s ease;
}

.rsiProjectCtaN53__arrow {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiProjectCtaN53 .rsiProjectCtaN53__button:hover {
  transform: translateY(-3px);
  background: #ffe17b;
  box-shadow: 0 8px 25px rgb(244 206 70 / 15%);
}

.rsiProjectCtaN53__button:hover .rsiProjectCtaN53__arrow {
  transform: translateX(4px);
}

.rsiProjectCtaN53__button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}

@keyframes rsiProjectCtaN53Drift {
  0%, 100% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(18px) scale(1.07);
  }
}

@media (max-width: 480px) {
  .rsiProjectCtaN53 {
    padding-inline: 17px;
  }

  .rsiProjectCtaN53__description {
    font-size: 14px;
  }

  .rsiProjectCtaN53 .rsiProjectCtaN53__button {
    max-width: 100%;
    padding-inline: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiProjectCtaN53 *,
  .rsiProjectCtaN53::before,
  .rsiProjectCtaN53::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiSoftwareFaqH92 {
  --sfh-gold: #aa7c2e;
  --sfh-dark: #242a32;
  padding: clamp(45px, 6vw, 75px) 20px;
  background: #f7f7f5;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiSoftwareFaqH92,
.rsiSoftwareFaqH92 * {
  box-sizing: border-box;
}

.rsiSoftwareFaqH92__wrap {
  width: min(1100px, 100%);
  margin-inline: auto;
}

.rsiSoftwareFaqH92__heading {
  margin: 0 0 30px;
  color: var(--sfh-dark);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
  text-align: center;
}

.rsiSoftwareFaqH92__list {
  display: grid;
  gap: 13px;
}

.rsiSoftwareFaqH92__item {
  overflow: hidden;
  border: 1px solid #e6e2d9;
  border-radius: 12px;
  background: #fff;
  transition:
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiSoftwareFaqH92__item[open] {
  border-color: #d5bc85;
  box-shadow: 0 8px 24px rgb(65 48 16 / 5%);
}

.rsiSoftwareFaqH92__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 76px;
  padding: 20px 24px;
  list-style: none;
  color: var(--sfh-dark);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  text-align: left;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-color .3s ease, color .3s ease;
}

.rsiSoftwareFaqH92__question::-webkit-details-marker {
  display: none;
}

.rsiSoftwareFaqH92__question::marker {
  content: "";
}

/* Plus / minus icon */
.rsiSoftwareFaqH92__icon {
  position: relative;
  flex: 0 0 31px;
  width: 31px;
  height: 31px;
  border: 1px solid #ecdfc5;
  border-radius: 9px;
  background: #faf5e9;
  color: var(--sfh-gold);
  transition:
    background-color .3s ease,
    border-color .3s ease,
    color .3s ease;
}

.rsiSoftwareFaqH92__icon::before,
.rsiSoftwareFaqH92__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform .3s ease;
}

.rsiSoftwareFaqH92__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.rsiSoftwareFaqH92__item[open]
.rsiSoftwareFaqH92__icon::after {
  transform: translate(-50%, -50%) rotate(0);
}

.rsiSoftwareFaqH92__item[open]
.rsiSoftwareFaqH92__question {
  color: var(--sfh-gold);
  background: #fffdf8;
}

.rsiSoftwareFaqH92__answer {
  margin: 0;
  padding: 24px 24px 23px;
  color: #637084;
  font-size: 14px;
  line-height: 1.9;
  text-align: left;
}

.rsiSoftwareFaqH92__item[open]
.rsiSoftwareFaqH92__answer {
  animation: rsiSoftwareFaqH92Reveal .35s ease both;
}

/* Theme hover */
@media (hover: hover) {
  .rsiSoftwareFaqH92__item
  .rsiSoftwareFaqH92__question:hover {
    background: #171717;
    color: #f4ce46;
  }

  .rsiSoftwareFaqH92__question:hover
  .rsiSoftwareFaqH92__icon {
    background: #f4ce46;
    border-color: #f4ce46;
    color: #171717;
  }
}

.rsiSoftwareFaqH92__question:focus-visible {
  outline: 3px solid var(--sfh-gold);
  outline-offset: -5px;
  border-radius: 11px;
}

/* Smooth height animation where supported */
@supports (interpolate-size: allow-keywords) {
  .rsiSoftwareFaqH92__item {
    interpolate-size: allow-keywords;
  }

  .rsiSoftwareFaqH92__item::details-content {
    height: 0;
    overflow: clip;
    transition:
      height .35s ease,
      content-visibility .35s allow-discrete;
  }

  .rsiSoftwareFaqH92__item[open]::details-content {
    height: auto;
  }
}

@keyframes rsiSoftwareFaqH92Reveal {
  from {
    opacity: .5;
    transform: translateY(-5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 600px) {
  .rsiSoftwareFaqH92 {
    padding-inline: 16px;
  }

  .rsiSoftwareFaqH92__question {
    min-height: 70px;
    padding: 17px;
    gap: 13px;
    font-size: 14px;
  }

  .rsiSoftwareFaqH92__answer {
    padding: 0 17px 20px;
    font-size: 13px;
  }

  .rsiSoftwareFaqH92__icon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiSoftwareFaqH92 *,
  .rsiSoftwareFaqH92 *::before,
  .rsiSoftwareFaqH92 *::after,
  .rsiSoftwareFaqH92__item::details-content {
    animation: none !important;
    transition: none !important;
  }
}
.rsiHrGuidesV46 {
  padding: clamp(40px, 5vw, 65px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiHrGuidesV46,
.rsiHrGuidesV46 * {
  box-sizing: border-box;
}

.rsiHrGuidesV46__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiHrGuidesV46__heading {
  margin: 0 0 25px;
  color: #29323e;
  font-size: clamp(27px, 2.8vw, 38px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
}

.rsiHrGuidesV46__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Individual card colors */
.rsiHrGuidesV46__item:nth-child(1) {
  --hr-color: #7654c9;
  --hr-soft: #f5f1ff;
  --hr-border: #e3d9fa;
}

.rsiHrGuidesV46__item:nth-child(2) {
  --hr-color: #2977bd;
  --hr-soft: #eff6ff;
  --hr-border: #d4e4f7;
}

.rsiHrGuidesV46__item:nth-child(3) {
  --hr-color: #c1587b;
  --hr-soft: #fff1f6;
  --hr-border: #f2d6e1;
}

.rsiHrGuidesV46__item:nth-child(4) {
  --hr-color: #a97724;
  --hr-soft: #fff8eb;
  --hr-border: #efdfbf;
}

.rsiHrGuidesV46__item:nth-child(5) {
  --hr-color: #228b87;
  --hr-soft: #edf9f7;
  --hr-border: #cce8e3;
}

.rsiHrGuidesV46__item:nth-child(6) {
  --hr-color: #c36a45;
  --hr-soft: #fff3ec;
  --hr-border: #f1daca;
}

.rsiHrGuidesV46__item {
  min-width: 0;
}

.rsiHrGuidesV46__link {
  display: flex;
  align-items: center;
  gap: 13px;
  height: 100%;
  min-height: 100px;
  padding: 19px 17px;
  border: 1px solid var(--hr-border);
  border-radius: 12px;
  background: linear-gradient(110deg, var(--hr-soft), #fff);
  color: #526172;
  font-size: 14px;
  line-height: 1.65;
  text-decoration: none;
  transition:
    transform .3s ease,
    border-color .3s ease,
    background-color .3s ease,
    box-shadow .3s ease,
    color .3s ease;
}

.rsiHrGuidesV46__icon {
  display: grid;
  place-items: center;
  flex: 0 0 37px;
  width: 37px;
  height: 37px;
  border: 1px solid var(--hr-border);
  border-radius: 10px;
  background: var(--hr-soft);
  color: var(--hr-color);
  transition:
    transform .3s ease,
    background-color .3s ease,
    color .3s ease;
}

.rsiHrGuidesV46__icon svg {
  display: block;
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiHrGuidesV46__text {
  flex: 1;
  min-width: 0;
}

.rsiHrGuidesV46__link::after {
  content: "";
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  border-top: 1.5px solid var(--hr-color);
  border-right: 1.5px solid var(--hr-color);
  transform: rotate(45deg);
  transition: transform .3s ease;
}

.rsiHrGuidesV46__link:hover {
  transform: translateY(-4px);
  border-color: var(--hr-color);
  background: var(--hr-soft);
  color: var(--hr-color);
  box-shadow: 0 8px 22px rgb(40 45 60 / 7%);
}

.rsiHrGuidesV46__link:hover .rsiHrGuidesV46__icon {
  transform: rotate(-5deg);
  background: var(--hr-color);
  border-color: var(--hr-color);
  color: #fff;
}

.rsiHrGuidesV46__link:hover::after {
  transform: translateX(3px) rotate(45deg);
}

.rsiHrGuidesV46__link:focus-visible {
  outline: 3px solid var(--hr-color);
  outline-offset: 4px;
}

@media (max-width: 950px) {
  .rsiHrGuidesV46__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 580px) {
  .rsiHrGuidesV46 {
    padding-inline: 16px;
  }

  .rsiHrGuidesV46__list {
    grid-template-columns: 1fr;
    gap: 11px;
  }

  .rsiHrGuidesV46__link {
    min-height: 82px;
    padding: 15px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiHrGuidesV46 *,
  .rsiHrGuidesV46 *::after {
    transition: none !important;
  }
}
.rsiPmsFaqT83 {
  --pfq-red: #ed255b;
  padding: clamp(40px, 5vw, 70px) 20px;
  background: #f6f8fa;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiPmsFaqT83,
.rsiPmsFaqT83 * {
  box-sizing: border-box;
}

.rsiPmsFaqT83__wrap {
  width: min(1200px, 100%);
  margin-inline: auto;
}

.rsiPmsFaqT83__heading {
  margin: 0 0 28px;
  color: #29323e;
  font-size: clamp(28px, 3vw, 39px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
}

.rsiPmsFaqT83__list {
  display: grid;
  gap: 13px;
}

.rsiPmsFaqT83__item {
  overflow: hidden;
  border: 1px solid #e7eaf0;
  border-left: 3px solid var(--pfq-red);
  border-radius: 12px;
  background: #fff;
  transition:
    background-color .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiPmsFaqT83__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 74px;
  padding: 20px 23px;
  list-style: none;
  color: #303947;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.65;
  text-align: left;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: color .3s ease;
}

.rsiPmsFaqT83__question::-webkit-details-marker {
  display: none;
}

.rsiPmsFaqT83__question::marker {
  content: "";
}

.rsiPmsFaqT83__icon {
  position: relative;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: #fff0f4;
  color: var(--pfq-red);
  transition: background-color .3s ease, color .3s ease;
}

.rsiPmsFaqT83__icon::before,
.rsiPmsFaqT83__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform .3s ease;
}

.rsiPmsFaqT83__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.rsiPmsFaqT83__item[open] .rsiPmsFaqT83__icon::after {
  transform: translate(-50%, -50%) rotate(0);
}

.rsiPmsFaqT83__answer {
  margin: 0;
  padding: 0 23px 23px;
  color: #637084;
  font-size: 14px;
  line-height: 1.9;
  text-align: left;
  transition: color .3s ease;
}

.rsiPmsFaqT83__item[open] {
  box-shadow: 0 6px 22px rgb(35 42 56 / 4%);
}

.rsiPmsFaqT83__item[open] .rsiPmsFaqT83__answer {
  animation: rsiPmsFaqT83Reveal .3s ease;
}

.rsiPmsFaqT83__question:focus-visible {
  outline: 3px solid var(--pfq-red);
  outline-offset: -5px;
  border-radius: 10px;
}

/* Red hover with white text */
@media (hover: hover) {
  .rsiPmsFaqT83__item:hover {
    background: var(--pfq-red);
    border-color: var(--pfq-red);
    box-shadow: 0 8px 24px rgb(237 37 91 / 12%);
  }

  .rsiPmsFaqT83__item:hover .rsiPmsFaqT83__question,
  .rsiPmsFaqT83__item:hover .rsiPmsFaqT83__answer {
    color: #fff;
  }

  .rsiPmsFaqT83__item:hover .rsiPmsFaqT83__icon {
    background: rgb(255 255 255 / 20%);
    color: #fff;
  }
}

/* Smooth expansion in supporting browsers */
@supports (interpolate-size: allow-keywords) {
  .rsiPmsFaqT83__item {
    interpolate-size: allow-keywords;
  }

  .rsiPmsFaqT83__item::details-content {
    height: 0;
    overflow: clip;
    transition:
      height .35s ease,
      content-visibility .35s allow-discrete;
  }

  .rsiPmsFaqT83__item[open]::details-content {
    height: auto;
  }
}

@keyframes rsiPmsFaqT83Reveal {
  from { transform: translateY(-5px); }
  to { transform: translateY(0); }
}

@media (max-width: 600px) {
  .rsiPmsFaqT83 {
    padding-inline: 16px;
  }

  .rsiPmsFaqT83__question {
    min-height: 68px;
    padding: 17px;
    gap: 12px;
    font-size: 14px;
  }

  .rsiPmsFaqT83__answer {
    padding: 0 17px 20px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPmsFaqT83 *,
  .rsiPmsFaqT83 *::before,
  .rsiPmsFaqT83 *::after,
  .rsiPmsFaqT83__item::details-content {
    animation: none !important;
    transition: none !important;
  }
}
.rsiStrategyCtaK41 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(45px, 6vw, 70px) 20px;
  background: #171b24;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiStrategyCtaK41,
.rsiStrategyCtaK41 * {
  box-sizing: border-box;
}

.rsiStrategyCtaK41__wrap {
  position: relative;
  z-index: 1;
  width: min(1000px, 100%);
  margin-inline: auto;
  text-align: center;
}

.rsiStrategyCtaK41::before,
.rsiStrategyCtaK41::after {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  border: 1px solid rgb(237 37 91 / 22%);
  border-radius: 50%;
  pointer-events: none;
  animation: rsiStrategyCtaK41Drift 12s ease-in-out infinite;
}

.rsiStrategyCtaK41::before {
  top: -220px;
  left: -65px;
}

.rsiStrategyCtaK41::after {
  right: -95px;
  bottom: -270px;
  width: 400px;
  height: 400px;
  animation-delay: -6s;
}

.rsiStrategyCtaK41__heading {
  margin: 0 0 15px;
  color: #fff;
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.rsiStrategyCtaK41__description {
  margin: 0;
  color: #cbd0db;
  font-size: 16px;
  line-height: 1.8;
}

.rsiStrategyCtaK41 .rsiStrategyCtaK41__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  min-height: 53px;
  margin-top: 25px;
  padding: 15px 27px;
  border: 1px solid #ed255b;
  border-radius: 9px;
  background: #ed255b;
  color: #fff;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition:
    transform .3s ease,
    background-color .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiStrategyCtaK41__arrow {
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiStrategyCtaK41 .rsiStrategyCtaK41__button:hover {
  transform: translateY(-3px);
  background: #d91e50;
  border-color: #d91e50;
  box-shadow: 0 8px 24px rgb(237 37 91 / 23%);
}

.rsiStrategyCtaK41__button:hover .rsiStrategyCtaK41__arrow {
  transform: translateX(4px);
}

.rsiStrategyCtaK41__button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}

@keyframes rsiStrategyCtaK41Drift {
  0%, 100% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(18px) scale(1.07);
  }
}

@media (max-width: 480px) {
  .rsiStrategyCtaK41 {
    padding-inline: 17px;
  }

  .rsiStrategyCtaK41__description {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiStrategyCtaK41 *,
  .rsiStrategyCtaK41::before,
  .rsiStrategyCtaK41::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiPmsHeroZ94 {
  --phz-navy: #180e45;
  --phz-coral: #ff8b80;
  --phz-teal: #18b9b6;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(55px, 7vw, 95px) 20px 0;
  background: #f7f6fa;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiPmsHeroZ94,
.rsiPmsHeroZ94 * {
  box-sizing: border-box;
}

.rsiPmsHeroZ94::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 850px;
  height: 650px;
  left: 50%;
  bottom: -200px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(ellipse, #e6dfff, transparent 70%);
}

.rsiPmsHeroZ94__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiPmsHeroZ94__header {
  max-width: 1030px;
  margin-inline: auto;
  text-align: center;
  background: none;
}

.rsiPmsHeroZ94__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 8px 13px;
  border: 1px solid #e7e2f0;
  border-radius: 30px;
  background: #ffffffb3;
  color: #75688c;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 1px;
}

.rsiPmsHeroZ94__eyebrow::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--phz-teal);
}

.rsiPmsHeroZ94__heading {
  margin: 0 0 21px;
  color: var(--phz-navy);
  font-size: clamp(36px, 5vw, 66px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -2.5px;
  text-wrap: balance;
}

.rsiPmsHeroZ94__description {
  max-width: 870px;
  margin: 0 auto;
  color: #637084;
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.8;
}

.rsiPmsHeroZ94 .rsiPmsHeroZ94__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-height: 57px;
  margin-top: 27px;
  padding: 16px 31px;
  border: 1px solid var(--phz-coral);
  border-radius: 13px;
  background: var(--phz-coral);
  color: #492d36;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  transition: transform .3s ease, background .3s ease, box-shadow .3s ease;
}

.rsiPmsHeroZ94__button svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .3s ease;
}

.rsiPmsHeroZ94 .rsiPmsHeroZ94__button:hover {
  transform: translateY(-3px);
  background: #ff9e94;
  box-shadow: 0 10px 28px #ff8b8033;
}

.rsiPmsHeroZ94__button:hover svg {
  transform: translateX(4px);
}

.rsiPmsHeroZ94__button:focus-visible {
  outline: 3px solid var(--phz-navy);
  outline-offset: 5px;
}

/* VISUAL COMPOSITION */
.rsiPmsHeroZ94__visual {
  position: relative;
  width: min(1060px, 100%);
  margin: 66px auto 0;
  padding: 0 80px;
}

.rsiPmsHeroZ94__screen {
  padding: 10px 10px 0;
  overflow: hidden;
  border: 1px solid #38313e;
  border-bottom: 0;
  border-radius: 25px 25px 0 0;
  background: #222029;
  box-shadow: 0 25px 70px #31234c16;
}

.rsiPmsHeroZ94__dashboard {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 15px 15px 0 0;
}

/* FLOATING ANALYTICS CARDS */
.rsiPmsHeroZ94__card {
  position: absolute;
  z-index: 2;
  width: 173px;
  padding: 17px;
  border: 1px solid #e9e2f2;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 12px 35px #3926530d;
  animation: rsiPmsHeroZ94Float 7s ease-in-out infinite;
}

.rsiPmsHeroZ94__card--score {
  top: -27px;
  left: 12px;
}

.rsiPmsHeroZ94__card--energy {
  top: 28px;
  right: 5px;
  width: 187px;
  animation-delay: -2s;
}

.rsiPmsHeroZ94__card--review {
  bottom: 28px;
  left: 0;
  width: 222px;
  animation-delay: -4s;
}

.rsiPmsHeroZ94__card--team {
  bottom: 35px;
  right: 0;
  width: 253px;
  animation-delay: -3s;
}

.rsiPmsHeroZ94__cardTitle {
  display: block;
  margin: 0 0 13px;
  color: var(--phz-navy);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
}

.rsiPmsHeroZ94__score {
  display: grid;
  place-items: center;
  width: 99px;
  height: 99px;
  margin: 0 auto 10px;
  border: 7px solid #e9f7f3;
  border-top-color: #ffbc66;
  border-right-color: var(--phz-teal);
  border-radius: 50%;
  color: var(--phz-navy);
  font-size: 32px;
  font-weight: 500;
}

.rsiPmsHeroZ94__caption {
  margin: 0;
  color: #8c849a;
  font-size: 9px;
  line-height: 1.6;
}

.rsiPmsHeroZ94__card--score .rsiPmsHeroZ94__caption {
  text-align: center;
}

.rsiPmsHeroZ94__metric {
  margin-top: 12px;
}

.rsiPmsHeroZ94__metricLabel {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
  color: #81778e;
  font-size: 9px;
}

.rsiPmsHeroZ94__bar {
  height: 6px;
  overflow: hidden;
  border-radius: 10px;
  background: #eeeaf3;
}

.rsiPmsHeroZ94__bar span {
  display: block;
  width: var(--progress);
  height: 100%;
  border-radius: inherit;
  background: var(--bar-color, #8c65ee);
  transform-origin: left;
  animation: rsiPmsHeroZ94Grow 5s ease-in-out infinite;
}

.rsiPmsHeroZ94__reviewTrack {
  height: 8px;
  margin-block: 13px 9px;
  border-radius: 10px;
  background: linear-gradient(90deg, #ddd4f7 50%, #18b9b6 50%);
}

.rsiPmsHeroZ94__reviewLabels {
  display: flex;
  justify-content: space-between;
  color: #91879e;
  font-size: 8px;
}

.rsiPmsHeroZ94__teamTrack {
  height: 10px;
  margin-bottom: 10px;
  border-radius: 10px;
  background: linear-gradient(
    90deg,
    #ff9298 0 22%,
    #ffda8b 22% 44%,
    #80d5c7 44% 68%,
    #18b9b6 68%
  );
}

.rsiPmsHeroZ94__chartLine {
  stroke-dasharray: 600;
  animation: rsiPmsHeroZ94Draw 6s ease-in-out infinite;
}

@keyframes rsiPmsHeroZ94Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes rsiPmsHeroZ94Grow {
  0%, 100% { transform: scaleX(.87); }
  50% { transform: scaleX(1); }
}

@keyframes rsiPmsHeroZ94Draw {
  0% { stroke-dashoffset: 600; }
  65%, 100% { stroke-dashoffset: 0; }
}

@media (max-width: 850px) {
  .rsiPmsHeroZ94__visual {
    padding-inline: 35px;
  }

  .rsiPmsHeroZ94__card--score {
    left: 0;
    width: 145px;
    padding: 13px;
  }

  .rsiPmsHeroZ94__score {
    width: 78px;
    height: 78px;
    font-size: 26px;
  }

  .rsiPmsHeroZ94__card--energy {
    width: 157px;
    right: 0;
  }

  .rsiPmsHeroZ94__card--review {
    width: 185px;
  }

  .rsiPmsHeroZ94__card--team {
    width: 205px;
  }
}

@media (max-width: 600px) {
  .rsiPmsHeroZ94 {
    padding-inline: 16px;
  }

  .rsiPmsHeroZ94__heading {
    letter-spacing: -1.2px;
  }

  /* Cards become a readable grid below the dashboard */
  .rsiPmsHeroZ94__visual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 35px;
    padding: 0 0 25px;
  }

  .rsiPmsHeroZ94__screen {
    grid-column: 1 / -1;
    padding: 7px;
    border-bottom: 1px solid #38313e;
    border-radius: 17px;
  }

  .rsiPmsHeroZ94__dashboard {
    border-radius: 10px;
  }

  .rsiPmsHeroZ94__card {
    position: static;
    width: auto;
    min-width: 0;
    padding: 14px;
    animation: none;
  }

  .rsiPmsHeroZ94__cardTitle {
    font-size: 10px;
  }

  .rsiPmsHeroZ94__score {
    width: 74px;
    height: 74px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPmsHeroZ94 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiPmsHeroZ94__chartLine {
    stroke-dashoffset: 0;
  }
}
.rsiKpiPrecisionB76 {
  padding: clamp(45px, 6vw, 80px) 20px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiKpiPrecisionB76,
.rsiKpiPrecisionB76 * {
  box-sizing: border-box;
}

.rsiKpiPrecisionB76__wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiKpiPrecisionB76__header {
  max-width: 1160px;
  margin-inline: auto;
  text-align: center;
  background: none;
  position: relative;
  z-index: -0;
}

.rsiKpiPrecisionB76__heading {
  margin: 0 0 24px;
  color: #180e45;
  font-size: clamp(27px, 2.8vw, 38px);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.rsiKpiPrecisionB76__intro {
  margin: 0;
  color: #637084;
  font-size: 16px;
  line-height: 1.85;
}

.rsiKpiPrecisionB76__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 38px;
}

/* MULTICOLOR CARDS */
.rsiKpiPrecisionB76__card {
  --kpi-color: #2386a1;
  --kpi-soft: #eafaff;
  --kpi-border: #d5eef5;
  position: relative;
  min-width: 0;
  padding: 30px 24px;
  overflow: hidden;
  border: 1px solid var(--kpi-border);
  border-radius: 17px;
  background: linear-gradient(180deg, var(--kpi-soft), #fff 65%);
  text-align: center;
  transition:
    transform .3s ease,
    box-shadow .3s ease,
    border-color .3s ease;
}

.rsiKpiPrecisionB76__card:nth-child(2) {
  --kpi-color: #aa7d20;
  --kpi-soft: #fff8e5;
  --kpi-border: #f0e4bf;
}

.rsiKpiPrecisionB76__card:nth-child(3) {
  --kpi-color: #c3733d;
  --kpi-soft: #fff1e7;
  --kpi-border: #f5dece;
}

.rsiKpiPrecisionB76__icon {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  margin: 0 auto 22px;
  border: 1px solid var(--kpi-border);
  border-radius: 21px;
  background: #fff;
  color: var(--kpi-color);
  box-shadow: 0 7px 18px rgb(40 45 60 / 4%);
}

.rsiKpiPrecisionB76__icon svg {
  display: block;
  width: 43px;
  height: 43px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiKpiPrecisionB76__title {
  margin: 0 0 13px;
  color: #303947;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.5;
}

.rsiKpiPrecisionB76__text {
  margin: 0;
  color: #637084;
  font-size: 14px;
  line-height: 1.8;
}

.rsiKpiPrecisionB76__card:hover {
  transform: translateY(-6px);
  border-color: var(--kpi-color);
  box-shadow: 0 12px 28px rgb(40 45 60 / 7%);
}

/* TARGET ANIMATION */
.rsiKpiPrecisionB76__target {
  transform-box: fill-box;
  transform-origin: center;
  animation: rsiKpiPrecisionB76Target 4s ease-in-out infinite;
}

/* SMART CHECK ANIMATION */
.rsiKpiPrecisionB76__check {
  stroke-dasharray: 30;
  stroke-dashoffset: 0;
  animation: rsiKpiPrecisionB76Check 4s ease-in-out infinite;
}

/* KPI NEEDLE ANIMATION */
.rsiKpiPrecisionB76__needle {
  transform-origin: 32px 35px;
  animation: rsiKpiPrecisionB76Needle 5s ease-in-out infinite;
}

@keyframes rsiKpiPrecisionB76Target {
  0%, 100% { transform: scale(.94); }
  50% { transform: scale(1.05); }
}

@keyframes rsiKpiPrecisionB76Check {
  0% { stroke-dashoffset: 30; }
  45%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiKpiPrecisionB76Needle {
  0%, 100% { transform: rotate(-17deg); }
  50% { transform: rotate(18deg); }
}

@media (max-width: 800px) {
  .rsiKpiPrecisionB76__grid {
    gap: 14px;
  }

  .rsiKpiPrecisionB76__card {
    padding: 25px 17px;
  }

  .rsiKpiPrecisionB76__title {
    font-size: 17px;
  }
}

@media (max-width: 650px) {
  .rsiKpiPrecisionB76__grid {
    grid-template-columns: 1fr;
    margin-top: 28px;
  }

  .rsiKpiPrecisionB76__card {
    padding: 27px 23px;
  }

  .rsiKpiPrecisionB76__intro {
    font-size: 14px;
  }

  .rsiKpiPrecisionB76__icon {
    margin-bottom: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiKpiPrecisionB76 * {
    animation: none !important;
    transition: none !important;
  }

  .rsiKpiPrecisionB76__check {
    stroke-dashoffset: 0;
  }
}
.rsiKpiCardsN85 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 38px;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiKpiCardsN85,
.rsiKpiCardsN85 * {
  box-sizing: border-box;
}

.rsiKpiCardsN85__card {
  --kc-color: #288da6;
  --kc-soft: #edf9fc;
  --kc-border: #d9edf2;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--kc-border);
  border-radius: 19px;
  background: #fff;
  transition: transform .3s ease, box-shadow .3s ease;
}

.rsiKpiCardsN85__card:nth-child(2) {
  --kc-color: #a37b29;
  --kc-soft: #fff8e8;
  --kc-border: #f0e4c8;
}

.rsiKpiCardsN85__card:nth-child(3) {
  --kc-color: #9671d3;
  --kc-soft: #f5f0fc;
  --kc-border: #e7dcf6;
}

/* Full-width illustrated area */
.rsiKpiCardsN85__visual {
  position: relative;
  display: grid;
  place-items: center;
  height: 205px;
  overflow: hidden;
  border-bottom: 1px solid var(--kc-border);
  background: var(--kc-soft);
  color: var(--kc-color);
}

.rsiKpiCardsN85__visual::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .45;
  background-image: radial-gradient(var(--kc-color) .7px, transparent .7px);
  background-size: 18px 18px;
  mask-image: radial-gradient(ellipse, #000, transparent 72%);
}

.rsiKpiCardsN85__svg {
  position: relative;
  display: block;
  width: 260px;
  max-width: 100%;
  height: 185px;
}

.rsiKpiCardsN85__body {
  padding: 24px;
}

.rsiKpiCardsN85__number {
  display: inline-block;
  margin-bottom: 10px;
  color: var(--kc-color);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.5px;
}

.rsiKpiCardsN85__title {
  margin: 0 0 12px;
  color: #29323e;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.4;
}

.rsiKpiCardsN85__text {
  margin: 0;
  color: #637084;
  font-size: 14px;
  line-height: 1.85;
}

.rsiKpiCardsN85__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 32px rgb(36 43 61 / 8%);
}

/* SVG animations */
.rsiKpiCardsN85__orbit {
  transform-origin: 130px 91px;
  animation: rsiKpiCardsN85Orbit 18s linear infinite;
}

.rsiKpiCardsN85__float {
  animation: rsiKpiCardsN85Float 5s ease-in-out infinite;
}

.rsiKpiCardsN85__check {
  stroke-dasharray: 24;
  animation: rsiKpiCardsN85Check 5s ease-in-out infinite;
}

.rsiKpiCardsN85__check--second {
  animation-delay: .5s;
}

.rsiKpiCardsN85__check--third {
  animation-delay: 1s;
}

.rsiKpiCardsN85__line {
  stroke-dasharray: 220;
  animation: rsiKpiCardsN85Line 5s ease-in-out infinite;
}

.rsiKpiCardsN85__bar {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: rsiKpiCardsN85Bar 4s ease-in-out infinite;
}

.rsiKpiCardsN85__bar:nth-child(even) {
  animation-delay: -1.5s;
}

@keyframes rsiKpiCardsN85Orbit {
  to { transform: rotate(360deg); }
}

@keyframes rsiKpiCardsN85Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes rsiKpiCardsN85Check {
  0% { stroke-dashoffset: 24; }
  45%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiKpiCardsN85Line {
  0% { stroke-dashoffset: 220; }
  65%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiKpiCardsN85Bar {
  0%, 100% { transform: scaleY(.8); }
  50% { transform: scaleY(1); }
}

@media (max-width: 900px) {
  .rsiKpiCardsN85 {
    gap: 14px;
  }

  .rsiKpiCardsN85__body {
    padding: 20px 17px;
  }

  .rsiKpiCardsN85__title {
    font-size: 19px;
  }
}

@media (max-width: 680px) {
  .rsiKpiCardsN85 {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 28px;
  }

  .rsiKpiCardsN85__visual {
    height: 190px;
  }

  .rsiKpiCardsN85__body {
    padding: 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiKpiCardsN85 * {
    animation: none !important;
    transition: none !important;
  }
}
.rsiStrategyAiF92 {
  --saf-navy: #180e45;
  --saf-muted: #637084;
  padding: clamp(45px, 6vw, 85px) 20px;
  overflow: hidden;
  background: #f8f9fd;
  font-family: Arial, Helvetica, sans-serif;
}

.rsiStrategyAiF92,
.rsiStrategyAiF92 * {
  box-sizing: border-box;
}

.rsiStrategyAiF92-wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  align-items: center;
  gap: clamp(35px, 5vw, 70px);
}

.rsiStrategyAiF92-copy {
  min-width: 0;
}

.rsiStrategyAiF92-title {
  margin: 0 0 22px;
  color: var(--saf-navy);
  font-size: clamp(28px, 2.8vw, 38px);
  font-weight: 500;
  line-height: 1.28;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.rsiStrategyAiF92-text {
  margin: 0 0 18px;
  color: var(--saf-muted);
  font-size: 15px;
  line-height: 1.85;
}

/* MULTICOLOR FEATURE BULLETS */
.rsiStrategyAiF92-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.rsiStrategyAiF92-item {
  --saf-color: #749c76;
  --saf-soft: #edf6ec;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 13px;
  border: 1px solid #e5e7ef;
  border-radius: 11px;
  background: #fff;
  color: #5d687a;
  font-size: 13px;
  line-height: 1.6;
  transition: transform .3s ease, box-shadow .3s ease;
}

.rsiStrategyAiF92-item:nth-child(2) {
  --saf-color: #b87b91;
  --saf-soft: #fcf0f4;
}

.rsiStrategyAiF92-item:nth-child(3) {
  --saf-color: #739fb9;
  --saf-soft: #edf6fc;
}

.rsiStrategyAiF92-item:nth-child(4) {
  --saf-color: #9b7db9;
  --saf-soft: #f5effc;
}

.rsiStrategyAiF92-item:nth-child(5) {
  --saf-color: #b39259;
  --saf-soft: #fff7e9;
}

.rsiStrategyAiF92-check {
  display: grid;
  place-items: center;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: var(--saf-soft);
  color: var(--saf-color);
}

.rsiStrategyAiF92-check::before {
  content: "";
  width: 10px;
  height: 6px;
  margin-top: -3px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}

.rsiStrategyAiF92-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px #29323e08;
}

/* AI IMAGE COMPOSITION */
.rsiStrategyAiF92-visual {
  position: relative;
  isolation: isolate;
  min-width: 0;
  margin: 0;
  padding: 20px 10px 48px;
}

.rsiStrategyAiF92-visual::before {
  content: "";
  position: absolute;
  inset: 10% 2% 12%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    ellipse,
    #e8e1f6,
    #eff0fa 50%,
    transparent 72%
  );
  animation: rsiStrategyAiF92Glow 8s ease-in-out infinite;
}

.rsiStrategyAiF92-image {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 15px 20px rgb(41 31 72 / 6%));
  animation: rsiStrategyAiF92Float 7s ease-in-out infinite;
}

/* FLOATING LABEL */
.rsiStrategyAiF92-badge {
  position: absolute;
  left: 0;
  top: 10%;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 15px;
  border: 1px solid #e6e1ef;
  border-radius: 30px;
  background: #fff;
  color: #78638f;
  font-size: 11px;
  box-shadow: 0 8px 25px #34264b08;
  animation: rsiStrategyAiF92Float 6s ease-in-out infinite reverse;
}

.rsiStrategyAiF92-badge::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #8cc2a2;
}

/* BOTTOM PROGRESS CARD */
.rsiStrategyAiF92-progress {
  position: absolute;
  right: 0;
  bottom: 14px;
  width: min(250px, 75%);
  padding: 16px;
  border: 1px solid #e5e1ed;
  border-radius: 14px;
  background: #fffffff5;
  box-shadow: 0 12px 30px #34264b0d;
  animation: rsiStrategyAiF92Float 8s ease-in-out infinite;
  animation-delay: -3s;
}

.rsiStrategyAiF92-progressTitle {
  display: block;
  margin-bottom: 10px;
  color: #514161;
  font-size: 12px;
  font-weight: 500;
}

.rsiStrategyAiF92-track {
  height: 7px;
  overflow: hidden;
  border-radius: 10px;
  background: #f0edf5;
}

.rsiStrategyAiF92-track span {
  display: block;
  width: 78%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #b79bdc, #86cbb8);
  transform-origin: left;
  animation: rsiStrategyAiF92Progress 5s ease-in-out infinite;
}

.rsiStrategyAiF92-progressLabels {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 9px;
  color: #978ba3;
  font-size: 9px;
}

@keyframes rsiStrategyAiF92Float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes rsiStrategyAiF92Glow {
  0%, 100% { opacity: .6; transform: scale(.95); }
  50% { opacity: 1; transform: scale(1.05); }
}

@keyframes rsiStrategyAiF92Progress {
  0%, 100% { transform: scaleX(.8); }
  50% { transform: scaleX(1); }
}

/* RESPONSIVE */
@media (max-width: 900px) {
  .rsiStrategyAiF92-wrap {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiStrategyAiF92-visual {
    width: min(560px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 480px) {
  .rsiStrategyAiF92 {
    padding-inline: 16px;
  }

  .rsiStrategyAiF92-text {
    font-size: 14px;
  }

  .rsiStrategyAiF92-list {
    grid-template-columns: 1fr;
  }

  .rsiStrategyAiF92-visual {
    padding-inline: 0;
  }

  .rsiStrategyAiF92-badge {
    top: 2%;
    padding: 9px 12px;
    font-size: 10px;
  }

  .rsiStrategyAiF92-progress {
    padding: 13px;
    width: min(225px, 80%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiStrategyAiF92 *,
  .rsiStrategyAiF92 *::before {
    animation: none !important;
    transition: none !important;
  }
}
.rsiSystemP47 {
  --rsiP47-navy: #180e45;
  --rsiP47-muted: #687080;
  --rsiP47-purple: #8060e8;
  padding: clamp(44px, 6vw, 88px) 20px;
  background: #fff;
  font-family: inherit;
  color: var(--rsiP47-navy);
}

.rsiSystemP47,
.rsiSystemP47 * {
  box-sizing: border-box;
}

.rsiSystemP47 .rsiSystemP47-layout {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(30px, 5vw, 72px);
}

.rsiSystemP47 .rsiSystemP47-visual {
  position: relative;
  min-width: 0;
  padding: 0 12px 24px 0;
  isolation: isolate;
}

.rsiSystemP47 .rsiSystemP47-visual::before {
  content: "";
  position: absolute;
  inset: 24px 0 0 24px;
  z-index: -1;
  border-radius: 30px;
  background: #f0edfc;
}

.rsiSystemP47 .rsiSystemP47-photo {
  overflow: hidden;
  border-radius: 26px;
  background: #f2f1f6;
  aspect-ratio: 4 / 4.8;
}

.rsiSystemP47 .rsiSystemP47-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  animation: rsiP47-photo 14s ease-in-out infinite alternate;
}

.rsiSystemP47 .rsiSystemP47-badge {
  position: absolute;
  top: 22px;
  left: 20px;
  right: 32px;
  width: fit-content;
  max-width: calc(100% - 52px);
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 15px;
  border: 1px solid #fff;
  border-radius: 50px;
  background: rgb(255 255 255 / 94%);
  box-shadow: 0 8px 25px #180e4510;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 500;
}

.rsiSystemP47 .rsiSystemP47-badge > span {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #29b594;
  box-shadow: 0 0 0 5px #29b59416;
  animation: rsiP47-dot 2.5s ease-in-out infinite;
}

.rsiSystemP47 .rsiSystemP47-dashboard {
  position: absolute;
  left: 15px;
  right: 26px;
  bottom: 40px;
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
  gap: 10px;
  animation: rsiP47-float 7s ease-in-out infinite;
}

.rsiSystemP47 .rsiSystemP47-chart,
.rsiSystemP47 .rsiSystemP47-score {
  min-width: 0;
  background: #fff;
  border: 1px solid #eeedf5;
  border-radius: 18px;
  box-shadow: 0 14px 35px #180e4512;
}

.rsiSystemP47 .rsiSystemP47-chart {
  padding: 16px;
}

.rsiSystemP47 .rsiSystemP47-cardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  font-size: 12px;
  font-weight: 500;
}

.rsiSystemP47 .rsiSystemP47-cardTop i {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 8px;
  background: #f0edfc;
  color: #8060e8;
  font-style: normal;
}

.rsiSystemP47 .rsiSystemP47-chartCaption {
  margin-top: 10px;
}

.rsiSystemP47 .rsiSystemP47-chartCaption strong {
  display: block;
  font-size: 13px;
  font-weight: 500;
}

.rsiSystemP47 .rsiSystemP47-chartCaption > span {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  color: var(--rsiP47-muted);
}

.rsiSystemP47 .rsiSystemP47-chart > svg {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 8px;
}

.rsiSystemP47 .rsiSystemP47-line {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation: rsiP47-draw 5s ease-in-out infinite;
}

.rsiSystemP47 .rsiSystemP47-lineSecond {
  animation-delay: .35s;
}

.rsiSystemP47 .rsiSystemP47-months {
  display: flex;
  justify-content: space-between;
  gap: 3px;
  font-size: 9px;
  color: #8b8c9d;
}

.rsiSystemP47 .rsiSystemP47-score {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 8px;
}

.rsiSystemP47 .rsiSystemP47-ring {
  position: relative;
  width: min(125px, 100%);
  aspect-ratio: 1;
}

.rsiSystemP47 .rsiSystemP47-ring svg {
  display: block;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.rsiSystemP47 .rsiSystemP47-progress {
  stroke-dasharray: 82 100;
  animation: rsiP47-ring 5s ease-in-out infinite;
}

.rsiSystemP47 .rsiSystemP47-ring > div {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.rsiSystemP47 .rsiSystemP47-ring strong {
  font-size: clamp(21px, 2vw, 29px);
  font-weight: 500;
}

.rsiSystemP47 .rsiSystemP47-ring span {
  margin-top: 3px;
  font-size: 10px;
  color: var(--rsiP47-muted);
}

.rsiSystemP47 .rsiSystemP47-score p {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 8px 0 0;
  font-size: 9px;
  color: var(--rsiP47-muted);
}

.rsiSystemP47 .rsiSystemP47-score p i {
  width: 6px;
  height: 6px;
  background: #35c2d4;
  border-radius: 50%;
}

.rsiSystemP47 .rsiSystemP47-content {
  min-width: 0;
  text-align: left;
}

.rsiSystemP47 .rsiSystemP47-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  color: #8060c2;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.rsiSystemP47 .rsiSystemP47-eyebrow > span {
  width: 22px;
  height: 2px;
  background: currentColor;
}

.rsiSystemP47 h2 {
  margin: 0 0 18px;
  color: var(--rsiP47-navy);
  font-size: clamp(27px, 2.7vw, 38px);
  line-height: 1.24;
  letter-spacing: -.8px;
  font-weight: 500;
}

.rsiSystemP47 h2 > span {
  color: var(--rsiP47-purple);
}

.rsiSystemP47 .rsiSystemP47-intro {
  margin: 0 0 24px;
  color: var(--rsiP47-muted);
  font-size: 15px;
  line-height: 1.8;
}

.rsiSystemP47 .rsiSystemP47-list {
  display: grid;
  gap: 11px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.rsiSystemP47 .rsiSystemP47-list li {
  --rsiP47-accent: #8060e8;
  --rsiP47-tint: #f0edfc;
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 13px 14px;
  border: 1px solid #eeedf3;
  border-radius: 14px;
  background: #fff;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiSystemP47 .rsiSystemP47-list li:nth-child(2) {
  --rsiP47-accent: #159caf;
  --rsiP47-tint: #e7f8fb;
}

.rsiSystemP47 .rsiSystemP47-list li:nth-child(3) {
  --rsiP47-accent: #d68a22;
  --rsiP47-tint: #fff5e5;
}

.rsiSystemP47 .rsiSystemP47-list li:nth-child(4) {
  --rsiP47-accent: #db6686;
  --rsiP47-tint: #fff0f4;
}

.rsiSystemP47 .rsiSystemP47-list li:nth-child(5) {
  --rsiP47-accent: #299b7c;
  --rsiP47-tint: #eaf8f2;
}

.rsiSystemP47 .rsiSystemP47-list li:hover {
  transform: translateY(-3px);
  border-color: var(--rsiP47-accent);
  box-shadow: 0 8px 22px #180e4508;
}

.rsiSystemP47 .rsiSystemP47-icon {
  display: grid;
  place-items: center;
  flex: 0 0 39px;
  width: 39px;
  height: 39px;
  border-radius: 12px;
  color: var(--rsiP47-accent);
  background: var(--rsiP47-tint);
  transition: transform .3s ease;
}

.rsiSystemP47 .rsiSystemP47-list li:hover .rsiSystemP47-icon {
  transform: rotate(-7deg);
}

.rsiSystemP47 .rsiSystemP47-icon svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiSystemP47 .rsiSystemP47-list p {
  margin: 0;
  color: var(--rsiP47-muted);
  font-size: 13px;
  line-height: 1.75;
}

.rsiSystemP47 .rsiSystemP47-list strong {
  color: var(--rsiP47-navy);
  font-weight: 500;
}

/* CSS animations */
@keyframes rsiP47-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes rsiP47-photo {
  from { transform: scale(1); }
  to { transform: scale(1.045); }
}

@keyframes rsiP47-dot {
  0%, 100% { box-shadow: 0 0 0 4px #29b59416; }
  50% { box-shadow: 0 0 0 8px #29b59405; }
}

@keyframes rsiP47-draw {
  0% { stroke-dashoffset: 1; }
  40%, 100% { stroke-dashoffset: 0; }
}

@keyframes rsiP47-ring {
  0%, 100% { stroke-dasharray: 70 100; }
  50% { stroke-dasharray: 87 100; }
}

/* Tablet */
@media (max-width: 960px) {
  .rsiSystemP47 .rsiSystemP47-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .rsiSystemP47 .rsiSystemP47-visual {
    width: min(560px, 100%);
    margin-inline: auto;
  }

  .rsiSystemP47 .rsiSystemP47-photo {
    aspect-ratio: 1 / 1;
  }

  .rsiSystemP47 .rsiSystemP47-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rsiSystemP47 .rsiSystemP47-list li:last-child {
    grid-column: 1 / -1;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .rsiSystemP47 {
    padding: 42px 16px;
  }

  .rsiSystemP47 h2 {
    letter-spacing: -.5px;
  }

  .rsiSystemP47 .rsiSystemP47-list {
    grid-template-columns: 1fr;
  }

  .rsiSystemP47 .rsiSystemP47-list li {
    padding: 13px;
  }

  .rsiSystemP47 .rsiSystemP47-dashboard {
    left: 10px;
    right: 22px;
    bottom: 36px;
    gap: 8px;
  }

  .rsiSystemP47 .rsiSystemP47-chart {
    padding: 11px;
    border-radius: 13px;
  }

  .rsiSystemP47 .rsiSystemP47-score {
    border-radius: 13px;
  }

  .rsiSystemP47 .rsiSystemP47-cardTop {
    font-size: 10px;
  }

  .rsiSystemP47 .rsiSystemP47-chartCaption strong {
    font-size: 10px;
  }

  .rsiSystemP47 .rsiSystemP47-badge {
    top: 15px;
    left: 12px;
    font-size: 10px;
    padding: 10px 12px;
  }

  .rsiSystemP47 .rsiSystemP47-ring {
    max-width: 100px;
  }

  .rsiSystemP47 .rsiSystemP47-score p {
    font-size: 8px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .rsiSystemP47 *,
  .rsiSystemP47 *::before,
  .rsiSystemP47 *::after {
    animation: none !important;
    transition: none !important;
  }

  .rsiSystemP47 .rsiSystemP47-line {
    stroke-dashoffset: 0;
  }
}
.rsiPmsFeaturesK62 {
  --rsiK62-navy: #180e45;
  --rsiK62-muted: #687080;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(48px, 6vw, 86px) 20px;
  background: #f5f7fa;
  color: var(--rsiK62-navy);
  font-family: inherit;
}

.rsiPmsFeaturesK62,
.rsiPmsFeaturesK62 * {
  box-sizing: border-box;
}

/* Soft animated background */
.rsiPmsFeaturesK62::before,
.rsiPmsFeaturesK62::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  pointer-events: none;
  animation: rsiK62-ambient 12s ease-in-out infinite alternate;
}

.rsiPmsFeaturesK62::before {
  top: -220px;
  left: -170px;
  background: radial-gradient(circle, #ded8fa80, transparent 70%);
}

.rsiPmsFeaturesK62::after {
  bottom: -180px;
  right: -180px;
  background: radial-gradient(circle, #c8eef380, transparent 70%);
  animation-delay: -6s;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-wrap {
  width: min(1240px, 100%);
  margin-inline: auto;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-intro {
  max-width: 900px;
  margin: 0 auto 36px;
  text-align: center;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 15px;
  color: #7964b6;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-label i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #9273df;
  box-shadow: 0 0 0 5px #9273df15;
}

.rsiPmsFeaturesK62 h2 {
  margin: 0;
  color: var(--rsiK62-navy);
  font-size: clamp(27px, 3vw, 42px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
}

.rsiPmsFeaturesK62 h2 span {
  color: #8060cf;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card {
  --rsiK62-accent: #8060cf;
  --rsiK62-soft: #f0ebfc;
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 25px 25px 29px;
  overflow: hidden;
  border: 1px solid #e8eaf1;
  border-radius: 19px;
  background: #fff;
  box-shadow: 0 6px 22px #180e4503;
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(6n + 2) {
  --rsiK62-accent: #169bb0;
  --rsiK62-soft: #e7f7fa;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(6n + 3) {
  --rsiK62-accent: #d58b28;
  --rsiK62-soft: #fff5e6;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(6n + 4) {
  --rsiK62-accent: #db6687;
  --rsiK62-soft: #fff0f5;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(6n + 5) {
  --rsiK62-accent: #4388d0;
  --rsiK62-soft: #edf5ff;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(6n + 6) {
  --rsiK62-accent: #269c7b;
  --rsiK62-soft: #e9f8f1;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card::before {
  content: "";
  position: absolute;
  top: -55px;
  right: -55px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background: var(--rsiK62-soft);
  opacity: .65;
  transition: transform .5s ease;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:hover {
  transform: translateY(-6px);
  border-color: var(--rsiK62-accent);
  box-shadow: 0 16px 36px #180e450c;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:hover::before {
  transform: scale(1.3);
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-top {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  flex-shrink: 0;
  border-radius: 17px;
  background: var(--rsiK62-soft);
  color: var(--rsiK62-accent);
  animation: rsiK62-float 6s ease-in-out infinite;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(3n + 2)
.rsiPmsFeaturesK62-icon {
  animation-delay: -2s;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:nth-child(3n)
.rsiPmsFeaturesK62-icon {
  animation-delay: -4s;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-icon svg {
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-number {
  color: var(--rsiK62-accent);
  font-size: 29px;
  font-weight: 500;
  line-height: 1;
  opacity: .32;
}

.rsiPmsFeaturesK62 h3 {
  position: relative;
  margin: 0 0 12px;
  color: var(--rsiK62-navy);
  font-size: 20px;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: -.3px;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card p {
  position: relative;
  margin: 0;
  color: var(--rsiK62-muted);
  font-size: 14px;
  line-height: 1.8;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-line {
  display: block;
  width: 38px;
  height: 3px;
  margin-top: auto;
  padding-top: 0;
  border-radius: 5px;
  background: var(--rsiK62-accent);
  transform: translateY(15px);
  transform-origin: left;
  transition: width .4s ease;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card:hover
.rsiPmsFeaturesK62-line {
  width: 75px;
}

.rsiPmsFeaturesK62 .rsiPmsFeaturesK62-wave {
  animation: rsiK62-signal 2.8s ease-in-out infinite;
}

/* Progressive CSS scroll reveal */
@supports (animation-timeline: view()) {
  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card {
    animation: rsiK62-reveal linear both;
    animation-timeline: view();
    animation-range: entry 0% entry 25%;
  }
}

@keyframes rsiK62-float {
  0%, 100% { transform: translateY(0) rotate(0); }
  50% { transform: translateY(-4px) rotate(-3deg); }
}

@keyframes rsiK62-signal {
  0%, 100% { opacity: .35; }
  50% { opacity: 1; }
}

@keyframes rsiK62-ambient {
  from { transform: translate(0, 0) scale(1); }
  to { transform: translate(35px, 30px) scale(1.15); }
}

@keyframes rsiK62-reveal {
  from {
    opacity: 0;
    translate: 0 25px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

@media (max-width: 960px) {
  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
}

@media (max-width: 600px) {
  .rsiPmsFeaturesK62 {
    padding: 45px 16px;
  }

  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-intro {
    margin-bottom: 25px;
  }

  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-label {
    font-size: 10px;
    letter-spacing: .9px;
  }

  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-card {
    padding: 22px 22px 28px;
    border-radius: 16px;
  }

  .rsiPmsFeaturesK62 .rsiPmsFeaturesK62-top {
    margin-bottom: 16px;
  }

  .rsiPmsFeaturesK62 h3 {
    font-size: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPmsFeaturesK62 *,
  .rsiPmsFeaturesK62::before,
  .rsiPmsFeaturesK62::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiIntelKpiV93 {
  --rsiV93-navy: #180e45;
  --rsiV93-purple: #8864df;
  --rsiV93-cyan: #30bfd0;
  --rsiV93-green: #35b68c;
  --rsiV93-muted: #737b8d;
  padding: clamp(48px, 7vw, 90px) 20px;
  background: #fff;
  color: var(--rsiV93-navy);
  font-family: inherit;
}

.rsiIntelKpiV93,
.rsiIntelKpiV93 * {
  box-sizing: border-box;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-layout {
  width: min(1240px, 100%);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(30px, 5vw, 70px);
}

.rsiIntelKpiV93 .rsiIntelKpiV93-content {
  min-width: 0;
  text-align: left;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 16px;
  color: #8060b8;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  text-transform: uppercase;
  letter-spacing: 1.2px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-eyebrow i {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--rsiV93-purple);
  box-shadow: 0 0 0 5px #8864df12;
}

.rsiIntelKpiV93 h2 {
  margin: 0 0 23px;
  font-size: clamp(28px, 2.8vw, 39px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.8px;
  color: var(--rsiV93-navy);
}

.rsiIntelKpiV93 h2 span {
  color: var(--rsiV93-purple);
}

.rsiIntelKpiV93 .rsiIntelKpiV93-content p {
  margin: 0 0 17px;
  color: var(--rsiV93-muted);
  font-size: 15px;
  line-height: 1.85;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 25px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-tags span {
  padding: 8px 12px;
  border: 1px solid #ebe6f6;
  border-radius: 9px;
  background: #f7f3ff;
  color: #8060b8;
  font-size: 11px;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-tags span:nth-child(2) {
  background: #eef9fb;
  color: #258f9e;
  border-color: #def1f4;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-tags span:nth-child(3) {
  background: #fff5ec;
  color: #b47a3a;
  border-color: #f7e8d8;
}

/* Dashboard canvas */
.rsiIntelKpiV93 .rsiIntelKpiV93-stage {
  position: relative;
  min-width: 0;
  padding: 35px 22px 66px;
  border: 1px solid #f0edf8;
  border-radius: 28px;
  background:
    radial-gradient(circle at 90% 10%, #e5defc80, transparent 45%),
    radial-gradient(circle at 5% 90%, #d8f2f580, transparent 45%),
    #f8f9fd;
  isolation: isolate;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-orbit {
  position: absolute;
  inset: 18px;
  z-index: -1;
  overflow: hidden;
  border-radius: 22px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-orbit::before {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  top: -110px;
  right: -110px;
  border: 1px dashed #c8b8e9;
  border-radius: 50%;
  animation: rsiV93-orbit 40s linear infinite;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-board {
  position: relative;
  padding: 20px;
  border: 1px solid #fff;
  border-radius: 20px;
  background: rgb(255 255 255 / 95%);
  box-shadow: 0 20px 55px #392d6410;
  animation: rsiV93-boardFloat 9s ease-in-out infinite;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-boardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 20px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-kicker {
  display: block;
  margin-bottom: 5px;
  font-size: 8px;
  letter-spacing: 1.3px;
  color: #9296a8;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-boardTop strong {
  font-size: 15px;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-live {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 9px;
  border-radius: 20px;
  background: #edf9f3;
  color: #32a37b;
  font-size: 9px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-live i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  animation: rsiV93-pulse 2s ease-in-out infinite;
}

/* Small metric cards */
.rsiIntelKpiV93 .rsiIntelKpiV93-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 13px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric {
  --rsiV93-color: #8864df;
  min-width: 0;
  padding: 12px 10px;
  border: 1px solid #ececf4;
  border-radius: 11px;
  background: #fff;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric:nth-child(2) {
  --rsiV93-color: #30bfd0;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric:nth-child(3) {
  --rsiV93-color: #e8ad46;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3px;
  color: var(--rsiV93-muted);
  font-size: 9px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--rsiV93-color);
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric > strong {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  margin-top: 10px;
  font-size: 23px;
  line-height: 1.2;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric small {
  font-size: 8px;
  color: #36a582;
  font-weight: 400;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-metric:nth-child(3) small {
  color: #9a8d75;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-miniTrack {
  height: 4px;
  margin-top: 11px;
  overflow: hidden;
  border-radius: 6px;
  background: #f0f1f7;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-miniTrack i {
  display: block;
  width: var(--rsiV93-width);
  height: 100%;
  border-radius: inherit;
  background: var(--rsiV93-color);
  transform-origin: left;
  animation: rsiV93-progress 6s ease-in-out infinite;
}

/* Chart panels */
.rsiIntelKpiV93 .rsiIntelKpiV93-charts {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap: 12px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-panel {
  min-width: 0;
  padding: 14px 12px;
  border: 1px solid #ececf4;
  border-radius: 12px;
  background: #fff;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-panelTitle {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-panelTitle strong {
  font-size: 10px;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-panelTitle > span {
  color: #9298a7;
  font-size: 8px;
}

/* Pure CSS bar graph */
.rsiIntelKpiV93 .rsiIntelKpiV93-bars {
  display: flex;
  align-items: stretch;
  gap: 9px;
  height: 151px;
  margin-top: 17px;
  padding: 0 4px 20px;
  background: repeating-linear-gradient(
    to top,
    #eceef5 0,
    #eceef5 1px,
    transparent 1px,
    transparent 33px
  );
}

.rsiIntelKpiV93 .rsiIntelKpiV93-bars > div {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex: 1;
  min-width: 0;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-bars i {
  display: block;
  width: 100%;
  max-width: 23px;
  height: var(--rsiV93-height);
  border-radius: 5px 5px 0 0;
  background: linear-gradient(to top, #ac91ec, #7552c8);
  transform-origin: bottom;
  animation: rsiV93-barGrow 5s ease-in-out infinite;
  animation-delay: var(--rsiV93-delay);
}

.rsiIntelKpiV93 .rsiIntelKpiV93-bars > div:nth-child(even) i {
  background: linear-gradient(to top, #99e3eb, #2bb8cc);
}

.rsiIntelKpiV93 .rsiIntelKpiV93-bars span {
  position: absolute;
  bottom: -17px;
  color: #9298a7;
  font-size: 8px;
}

/* Pure CSS pie/donut */
.rsiIntelKpiV93 .rsiIntelKpiV93-pieWrap {
  display: grid;
  place-items: center;
  padding: 17px 0 12px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pie {
  position: relative;
  display: grid;
  place-items: center;
  width: 112px;
  max-width: 100%;
  aspect-ratio: 1;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pie::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(
    #8864df 0 47%,
    #fff 47% 49%,
    #30bfd0 49% 74%,
    #fff 74% 76%,
    #eab24e 76% 98%,
    #fff 98% 100%
  );
  animation: rsiV93-pieTurn 10s ease-in-out infinite;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pie > div {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 73%;
  height: 73%;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 4px #ffffff70;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pie strong {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.2;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pie span {
  margin-top: 3px;
  color: #9298a7;
  font-size: 8px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px 8px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-legend span {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 7px;
  color: #8990a0;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-legend i {
  width: 5px;
  height: 5px;
  border-radius: 2px;
  background: #8864df;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-legend span:nth-child(2) i {
  background: #30bfd0;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-legend span:nth-child(3) i {
  background: #eab24e;
}

/* CSS semicircle gauges */
.rsiIntelKpiV93 .rsiIntelKpiV93-gauges {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 13px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeCard {
  min-width: 0;
  padding: 13px 10px;
  border: 1px solid #ececf4;
  border-radius: 12px;
  text-align: center;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeCard > strong {
  display: block;
  font-size: 10px;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gauge {
  position: relative;
  width: min(130px, 100%);
  aspect-ratio: 2 / 1;
  margin: 17px auto 9px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeArc {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeArc::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(
    from 270deg,
    #e979a4 0deg 58deg,
    #fff 58deg 61deg,
    #efba4f 61deg 118deg,
    #fff 118deg 121deg,
    #36bb91 121deg 180deg,
    transparent 180deg
  );
  -webkit-mask: radial-gradient(
    farthest-side, transparent calc(100% - 7px), #000 0
  );
  mask: radial-gradient(
    farthest-side, transparent calc(100% - 7px), #000 0
  );
}

.rsiIntelKpiV93 .rsiIntelKpiV93-needle {
  position: absolute;
  width: 42%;
  height: 3px;
  left: 8%;
  bottom: 0;
  border-radius: 5px;
  background: #45415e;
  transform-origin: right center;
  transform: rotate(132deg);
  animation: rsiV93-needle 6s ease-in-out infinite;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeCard:nth-child(2)
.rsiIntelKpiV93-needle {
  animation-delay: -2s;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-pivot {
  position: absolute;
  bottom: -3px;
  left: calc(50% - 4px);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #45415e;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeCaption {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 8px;
  color: #8990a0;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-gaugeCaption i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #36bb91;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-boardBottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 7px;
  margin-top: 17px;
  color: #a0a5b2;
  font-size: 8px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-boardBottom > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-boardBottom i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #35b68c;
}

/* Floating productivity card */
.rsiIntelKpiV93 .rsiIntelKpiV93-floating {
  position: absolute;
  right: 9px;
  bottom: 17px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 18px;
  border: 1px solid #f0edf7;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 12px 35px #30244413;
  animation: rsiV93-cardFloat 6s ease-in-out infinite;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-floatingIcon {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border-radius: 12px;
  background: #edf8f3;
  color: #35a77e;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-floatingIcon svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-floating > div > span {
  display: block;
  margin-bottom: 5px;
  font-size: 10px;
  color: #9298a7;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-floating strong {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 22px;
  font-weight: 500;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-floating small {
  color: #35a77e;
  font-size: 9px;
  font-weight: 400;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 31px;
  margin-left: 8px;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark i {
  width: 5px;
  height: 40%;
  border-radius: 3px;
  background: #96dbbf;
  transform-origin: bottom;
  animation: rsiV93-spark 2.6s ease-in-out infinite alternate;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark i:nth-child(2) {
  height: 65%;
  animation-delay: -.4s;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark i:nth-child(3) {
  height: 50%;
  animation-delay: -.8s;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark i:nth-child(4) {
  height: 80%;
  animation-delay: -1.2s;
}

.rsiIntelKpiV93 .rsiIntelKpiV93-spark i:nth-child(5) {
  height: 100%;
  animation-delay: -1.6s;
  background: #35a77e;
}

/* Scoped CSS animations */
@keyframes rsiV93-boardFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes rsiV93-cardFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes rsiV93-barGrow {
  0%, 100% { transform: scaleY(.6); }
  45%, 70% { transform: scaleY(1); }
}

@keyframes rsiV93-progress {
  0%, 100% { transform: scaleX(.7); }
  50% { transform: scaleX(1); }
}

@keyframes rsiV93-pieTurn {
  0%, 100% { transform: rotate(-8deg); }
  50% { transform: rotate(15deg); }
}

@keyframes rsiV93-needle {
  0%, 100% { transform: rotate(105deg); }
  50% { transform: rotate(145deg); }
}

@keyframes rsiV93-pulse {
  0%, 100% { box-shadow: 0 0 0 0 #35b68c25; }
  50% { box-shadow: 0 0 0 4px #35b68c05; }
}

@keyframes rsiV93-spark {
  from { transform: scaleY(.55); }
  to { transform: scaleY(1); }
}

@keyframes rsiV93-orbit {
  to { transform: rotate(360deg); }
}

/* Tablet */
@media (max-width: 960px) {
  .rsiIntelKpiV93 .rsiIntelKpiV93-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-stage {
    width: min(580px, 100%);
    margin-inline: auto;
  }
}

/* Mobile */
@media (max-width: 520px) {
  .rsiIntelKpiV93 {
    padding: 42px 16px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-stage {
    padding: 20px 10px 18px;
    border-radius: 21px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-board {
    padding: 13px;
    border-radius: 15px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-boardTop strong {
    font-size: 13px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-metrics {
    gap: 6px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-metric {
    padding: 10px 7px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-metric > span {
    font-size: 8px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-metric > strong {
    font-size: 21px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-charts {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-bars {
    height: 160px;
    gap: 16px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-bars i {
    max-width: 30px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-pie {
    width: 125px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-legend {
    gap: 12px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-legend span {
    font-size: 9px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-floating {
    position: relative;
    right: auto;
    bottom: auto;
    width: fit-content;
    max-width: 100%;
    margin: 16px 0 0 auto;
    padding: 12px;
    gap: 9px;
  }

  .rsiIntelKpiV93 .rsiIntelKpiV93-content p {
    font-size: 14px;
  }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  .rsiIntelKpiV93 *,
  .rsiIntelKpiV93 *::before,
  .rsiIntelKpiV93 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiHrHeroM84 {
  --rsiM84-gold: #ffb319;
  --rsiM84-cyan: #7cd9ff;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(35px, 5vw, 72px) 22px;
  background: linear-gradient(115deg, #16375e, #1c527e);
  color: #fff;
  font-family: inherit;
}

.rsiHrHeroM84,
.rsiHrHeroM84 * {
  box-sizing: border-box;
}

.rsiHrHeroM84::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 77% 35%, #3eadd926, transparent 35%),
    radial-gradient(circle at 8% 100%, #081c4538, transparent 50%);
}

.rsiHrHeroM84 .rsiHrHeroM84-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: center;
  gap: clamp(25px, 4vw, 65px);
  width: min(1280px, 100%);
  margin-inline: auto;
}

.rsiHrHeroM84 .rsiHrHeroM84-content {
  position: relative;
  z-index: 2;
  min-width: 0;
  text-align: left;
  animation: rsiM84-enter .8s ease both;
}

.rsiHrHeroM84 .rsiHrHeroM84-pageTitle {
  display: block;
  margin-bottom: 12px;
  color: var(--rsiM84-gold);
  font-size: clamp(21px, 2.3vw, 31px);
  line-height: 1.3;
  font-weight: 500;
}

.rsiHrHeroM84 .rsiHrHeroM84-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 11px;
  margin-bottom: 32px;
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .6px;
  text-transform: uppercase;
  color: #b6c9dc;
}

.rsiHrHeroM84 .rsiHrHeroM84-breadcrumb a {
  color: #fff;
  text-decoration: none;
  transition: color .25s;
}

.rsiHrHeroM84 .rsiHrHeroM84-breadcrumb a:hover {
  color: var(--rsiM84-gold);
}

.rsiHrHeroM84 .rsiHrHeroM84-eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 16px;
  color: var(--rsiM84-cyan);
  font-size: 13px;
  line-height: 1.6;
  font-weight: 500;
}

.rsiHrHeroM84 .rsiHrHeroM84-eyebrow > span {
  width: 7px;
  height: 7px;
  flex-shrink: 0;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 5px #7cd9ff12;
}

.rsiHrHeroM84 h1 {
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(35px, 4.1vw, 58px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -1.5px;
}

.rsiHrHeroM84 h1 > span {
  display: block;
  color: #fff;
}

.rsiHrHeroM84 .rsiHrHeroM84-description {
  max-width: 650px;
  margin: 0 0 29px;
  color: #dce7f2;
  font-size: 15px;
  line-height: 1.85;
}

.rsiHrHeroM84 .rsiHrHeroM84-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  min-height: 53px;
  padding: 13px 24px;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 10px;
  background: var(--rsiM84-gold);
  color: #172b43;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition:
    background .3s,
    color .3s,
    transform .3s,
    box-shadow .3s;
}

.rsiHrHeroM84 .rsiHrHeroM84-button::before {
  content: "";
  position: absolute;
  top: -40%;
  left: -80%;
  width: 45%;
  height: 180%;
  background: linear-gradient(
    90deg, transparent, #ffffff65, transparent
  );
  transform: skewX(-20deg);
  animation: rsiM84-shine 6s ease-in-out infinite;
}

.rsiHrHeroM84 .rsiHrHeroM84-button > span {
  font-size: 22px;
  line-height: 1;
  transition: transform .3s;
}

.rsiHrHeroM84 .rsiHrHeroM84-button:hover {
  transform: translateY(-3px);
  background: #e83e58;
  color: #fff;
  box-shadow: 0 12px 28px #071d4126;
}

.rsiHrHeroM84 .rsiHrHeroM84-button:hover > span {
  transform: translate(2px, -2px);
}

.rsiHrHeroM84 a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}

/* Kiosk composition */
.rsiHrHeroM84 .rsiHrHeroM84-art {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 520px;
  isolation: isolate;
}

.rsiHrHeroM84 .rsiHrHeroM84-kiosk {
  position: relative;
  z-index: 2;
  display: block;
  width: min(345px, 80%);
  height: auto;
  max-height: 560px;
  object-fit: contain;
  filter: drop-shadow(0 22px 20px #07192f35);
  animation: rsiM84-kioskFloat 7s ease-in-out infinite;
}

.rsiHrHeroM84 .rsiHrHeroM84-halo {
  position: absolute;
  width: 100%;
  max-width: 440px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(
    circle, #70d6ff22 0%, #53bce00d 50%, transparent 70%
  );
  animation: rsiM84-glow 7s ease-in-out infinite;
}

.rsiHrHeroM84 .rsiHrHeroM84-ring {
  position: absolute;
  width: 90%;
  max-width: 410px;
  aspect-ratio: 1;
  border: 1px solid #ffffff12;
  border-radius: 50%;
  transform: rotate(-25deg);
}

.rsiHrHeroM84 .rsiHrHeroM84-ring::before {
  content: "";
  position: absolute;
  inset: 17px;
  border: 1px dashed #ffffff1c;
  border-radius: 50%;
  animation: rsiM84-orbit 45s linear infinite;
}

.rsiHrHeroM84 .rsiHrHeroM84-ring::after {
  content: "";
  position: absolute;
  top: 20%;
  left: 9%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--rsiM84-gold);
  box-shadow: 0 0 20px #ffb31980;
}

.rsiHrHeroM84 .rsiHrHeroM84-platform {
  position: absolute;
  bottom: 5px;
  width: 75%;
  height: 35px;
  border-radius: 50%;
  background: #071d4340;
  filter: blur(12px);
  animation: rsiM84-shadow 7s ease-in-out infinite;
}

/* Floating feature cards */
.rsiHrHeroM84 .rsiHrHeroM84-chip {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 100%;
  padding: 13px 15px;
  border: 1px solid #ffffff40;
  border-radius: 14px;
  background: #fffffff5;
  box-shadow: 0 15px 35px #061e4326;
  animation: rsiM84-chipFloat 6s ease-in-out infinite;
}

.rsiHrHeroM84 .rsiHrHeroM84-chipOne {
  top: 23%;
  left: -12px;
}

.rsiHrHeroM84 .rsiHrHeroM84-chipTwo {
  right: -8px;
  bottom: 17%;
  animation-delay: -3s;
}

.rsiHrHeroM84 .rsiHrHeroM84-icon {
  display: grid;
  place-items: center;
  width: 37px;
  height: 37px;
  flex-shrink: 0;
  border-radius: 11px;
  background: #e8f7fc;
  color: #279dbf;
}

.rsiHrHeroM84 .rsiHrHeroM84-chipTwo .rsiHrHeroM84-icon {
  background: #fff3dc;
  color: #c28b20;
}

.rsiHrHeroM84 .rsiHrHeroM84-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiHrHeroM84 .rsiHrHeroM84-chip strong {
  display: block;
  margin-bottom: 4px;
  color: #183651;
  font-size: 12px;
  font-weight: 500;
}

.rsiHrHeroM84 .rsiHrHeroM84-chip div > span {
  display: block;
  color: #7d8795;
  font-size: 9px;
  line-height: 1.5;
}

.rsiHrHeroM84 .rsiHrHeroM84-status {
  width: 6px;
  height: 6px;
  margin-left: 5px;
  border-radius: 50%;
  background: #37b891;
  box-shadow: 0 0 0 4px #37b89115;
}

/* CSS animations */
@keyframes rsiM84-enter {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes rsiM84-kioskFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes rsiM84-chipFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

@keyframes rsiM84-shadow {
  0%, 100% { transform: scaleX(1); opacity: .8; }
  50% { transform: scaleX(.88); opacity: .5; }
}

@keyframes rsiM84-glow {
  0%, 100% { transform: scale(.95); opacity: .7; }
  50% { transform: scale(1.08); opacity: 1; }
}

@keyframes rsiM84-orbit {
  to { transform: rotate(360deg); }
}

@keyframes rsiM84-shine {
  0%, 65% { left: -80%; }
  90%, 100% { left: 150%; }
}

/* Tablet */
@media (max-width: 960px) {
  .rsiHrHeroM84 .rsiHrHeroM84-wrap {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-content {
    max-width: 740px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-art {
    width: min(520px, 100%);
    min-height: 480px;
    margin-inline: auto;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-kiosk {
    width: 300px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-chipOne {
    left: 0;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-chipTwo {
    right: 0;
  }
}

/* Mobile */
@media (max-width: 520px) {
  .rsiHrHeroM84 {
    padding: 32px 18px 28px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-breadcrumb {
    margin-bottom: 25px;
    font-size: 9px;
    gap: 8px;
  }

  .rsiHrHeroM84 h1 {
    font-size: clamp(32px, 8.5vw, 43px);
    letter-spacing: -.8px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-description {
    font-size: 14px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-art {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    min-height: 0;
    padding-bottom: 8px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-kiosk {
    width: 250px;
    max-width: 80%;
    margin-inline: calc((100% - min(250px, 80%)) / 2);
  }

  .rsiHrHeroM84 .rsiHrHeroM84-halo,
  .rsiHrHeroM84 .rsiHrHeroM84-ring {
    top: 20px;
    width: 95%;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-chip {
    position: relative;
    inset: auto;
    flex: 1 1 145px;
    padding: 11px;
    gap: 8px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-chip strong {
    font-size: 11px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-icon {
    width: 30px;
    height: 30px;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-platform {
    top: 350px;
    bottom: auto;
  }

  .rsiHrHeroM84 .rsiHrHeroM84-status {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiHrHeroM84 *,
  .rsiHrHeroM84 *::before,
  .rsiHrHeroM84 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiTrustB72,
.rsiTrustB72 * {
    box-sizing: border-box;
}

.rsiTrustB72 {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 28px 16px;
    background: #ffffff;
    font-family: inherit;
}

.rsiTrustB72 .rsiTrustB72-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
    max-width: 1240px;
    min-width: 0;
    margin: 0 auto;
    padding: 0;
}

.rsiTrustB72 .rsiTrustB72-item {
    --trust-accent: #dca33c;
    min-width: 0;
    padding: 12px 14px;
    text-align: center;
    animation: rsiTrustB72-appear .7s ease both;
}

.rsiTrustB72 .rsiTrustB72-item + .rsiTrustB72-item {
    border-left: 1px solid #e9edf2;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(2) {
    --trust-accent: #35aabd;
    animation-delay: .1s;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(3) {
    --trust-accent: #9472d2;
    animation-delay: .2s;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(4) {
    --trust-accent: #df7895;
    animation-delay: .3s;
}

.rsiTrustB72 .rsiTrustB72-value {
    margin: 0;
    color: #175282;
    font-size: clamp(20px, 2vw, 26px);
    font-weight: 500;
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: anywhere;
    transition: color .3s ease;
}

.rsiTrustB72 .rsiTrustB72-item p {
    margin: 6px 0 0;
    padding: 0;
    color: #7b8390;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    white-space: normal;
    overflow-wrap: anywhere;
}

.rsiTrustB72 .rsiTrustB72-item::after {
    content: "";
    display: block;
    width: 26px;
    height: 2px;
    margin: 11px auto 0;
    border-radius: 4px;
    background: var(--trust-accent);
    animation: rsiTrustB72-line 4s ease-in-out infinite;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(2)::after {
    animation-delay: -1s;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(3)::after {
    animation-delay: -2s;
}

.rsiTrustB72 .rsiTrustB72-item:nth-child(4)::after {
    animation-delay: -3s;
}

.rsiTrustB72 .rsiTrustB72-item:hover .rsiTrustB72-value {
    color: #e73d58;
}

@keyframes rsiTrustB72-appear {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes rsiTrustB72-line {
    0%, 100% {
        transform: scaleX(.65);
        opacity: .6;
    }
    50% {
        transform: scaleX(1);
        opacity: 1;
    }
}

@media (max-width: 767px) {
    .rsiTrustB72 .rsiTrustB72-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 18px;
    }

    .rsiTrustB72 .rsiTrustB72-item:nth-child(3) {
        border-left: 0;
    }
}

@media (max-width: 420px) {
    .rsiTrustB72 {
        padding: 22px 12px;
    }

    .rsiTrustB72 .rsiTrustB72-item {
        padding: 10px 8px;
    }

    .rsiTrustB72 .rsiTrustB72-value {
        font-size: 18px;
    }

    .rsiTrustB72 .rsiTrustB72-item p {
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiTrustB72 *,
    .rsiTrustB72 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiKioskGalleryT64,
.rsiKioskGalleryT64 * {
    box-sizing: border-box;
}

.rsiKioskGalleryT64 {
    width: 100%;
    min-width: 0;
    padding: 35px 18px;
    background: #fff;
    font-family: inherit;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card {
    --gallery-accent: #175282;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    width: 100%;
    margin: 0;
    padding: 10px;
    overflow: hidden;
    border: 1px solid #e6eaf0;
    border-radius: 17px;
    background: #fff;
    color: #203750;
    font: inherit;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 5px 18px #12304b05;
    animation: rsiGalleryT64-reveal .7s ease both;
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:nth-child(2) {
    --gallery-accent: #9270ce;
    animation-delay: .1s;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:nth-child(3) {
    --gallery-accent: #27a4b7;
    animation-delay: .2s;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:nth-child(4) {
    --gallery-accent: #ca963c;
    animation-delay: .3s;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:nth-child(5) {
    --gallery-accent: #d97691;
    animation-delay: .4s;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card > img {
    display: block;
    width: 100%;
    height: 210px;
    padding: 8px;
    border-radius: 11px;
    background: #f7f9fb;
    object-fit: contain;
    transition: filter .4s ease;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-caption {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    margin-top: auto;
    padding: 14px 3px 3px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-caption i {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 27px;
    height: 27px;
    border-radius: 50%;
    background: #f1f4f8;
    color: var(--gallery-accent);
    font-size: 17px;
    font-style: normal;
    transition: background .3s ease, color .3s ease;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 18px;
    right: 18px;
    height: 2px;
    border-radius: 3px;
    background: var(--gallery-accent);
    transform: scaleX(.3);
    transform-origin: center;
    transition: transform .4s ease;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:hover {
    transform: translateY(-6px);
    border-color: var(--gallery-accent);
    box-shadow: 0 15px 28px #12304b10;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:hover::after {
    transform: scaleX(1);
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:hover > img {
    filter: saturate(1.12);
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-card:hover
.rsiKioskGalleryT64-caption i {
    background: var(--gallery-accent);
    color: #fff;
}

.rsiKioskGalleryT64 button:focus-visible {
    outline: 3px solid #27a4b7;
    outline-offset: 4px;
}

/* Native dialog lightbox */
.rsiKioskGalleryT64 .rsiKioskGalleryT64-lightbox {
    width: min(950px, calc(100% - 32px));
    max-width: calc(100% - 32px);
    max-height: 90dvh;
    margin: auto;
    padding: 50px 20px 20px;
    overflow-y: auto;
    border: 0;
    border-radius: 18px;
    background: #fff;
    color: #203750;
    box-shadow: 0 25px 80px #0004;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-lightbox::backdrop {
    background: rgb(8 20 36 / 82%);
    backdrop-filter: blur(5px);
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-lightbox[open] {
    animation: rsiGalleryT64-reveal .25s ease both;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-close {
    position: absolute;
    top: 10px;
    right: 12px;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f0f3f7;
    color: #203750;
    font-size: 26px;
    cursor: pointer;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-close:hover {
    background: #e73d58;
    color: #fff;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-preview {
    display: block;
    width: 100%;
    max-height: 65dvh;
    object-fit: contain;
}

.rsiKioskGalleryT64 .rsiKioskGalleryT64-description {
    margin: 15px 0 0;
    color: #707c8c;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
}

@keyframes rsiGalleryT64-reveal {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (max-width: 1050px) {
    .rsiKioskGalleryT64 .rsiKioskGalleryT64-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .rsiKioskGalleryT64 .rsiKioskGalleryT64-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .rsiKioskGalleryT64 .rsiKioskGalleryT64-card > img {
        height: 190px;
    }
}

@media (max-width: 420px) {
    .rsiKioskGalleryT64 {
        padding: 25px 12px;
    }

    .rsiKioskGalleryT64 .rsiKioskGalleryT64-card {
        padding: 7px;
        border-radius: 13px;
    }

    .rsiKioskGalleryT64 .rsiKioskGalleryT64-card > img {
        height: 155px;
        padding: 5px;
    }

    .rsiKioskGalleryT64 .rsiKioskGalleryT64-caption {
        font-size: 11px;
        gap: 5px;
    }

    .rsiKioskGalleryT64 .rsiKioskGalleryT64-caption i {
        width: 23px;
        height: 23px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiKioskGalleryT64 *,
    .rsiKioskGalleryT64 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiHrModulesC86 {
  --rsiC86-ink: #17385f;
  --rsiC86-muted: #697584;
  width: 100%;
  min-width: 0;
  padding: clamp(42px, 6vw, 78px) 20px;
  background: #fff;
  color: var(--rsiC86-ink);
  font-family: inherit;
}

.rsiHrModulesC86,
.rsiHrModulesC86 * {
  box-sizing: border-box;
}

.rsiHrModulesC86 .rsiHrModulesC86-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiHrModulesC86 .rsiHrModulesC86-intro {
  max-width: 850px;
  margin: 0 auto 38px;
  text-align: center;
}

.rsiHrModulesC86 h2 {
  margin: 0 0 14px;
  color: var(--rsiC86-ink);
  font-size: clamp(27px, 3vw, 39px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.7px;
}

.rsiHrModulesC86 .rsiHrModulesC86-intro p {
  max-width: 680px;
  margin: 0 auto;
  color: var(--rsiC86-muted);
  font-size: 15px;
  line-height: 1.8;
}

/* Consistent image + content layout */
.rsiHrModulesC86 .rsiHrModulesC86-module {
  --rsiC86-accent: #8864cc;
  --rsiC86-tint: #f3eefc;
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.6fr);
  align-items: center;
  gap: clamp(24px, 4vw, 50px);
  min-width: 0;
  padding: 30px 0;
  border-bottom: 1px solid #e9edf2;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(2) {
  --rsiC86-accent: #279fb4;
  --rsiC86-tint: #eaf8fb;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(3) {
  --rsiC86-accent: #c49035;
  --rsiC86-tint: #fff6e7;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(4) {
  --rsiC86-accent: #ce7696;
  --rsiC86-tint: #fff0f5;
  border-bottom: 0;
}

/* AI image frame */
.rsiHrModulesC86 .rsiHrModulesC86-visual {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #edf0f5;
  border-radius: 24px;
  background: #f8f9fc;
  isolation: isolate;
}

.rsiHrModulesC86 .rsiHrModulesC86-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  animation: rsiC86-imageBreathe 8s ease-in-out infinite;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(even)
.rsiHrModulesC86-visual img {
  animation-delay: -4s;
}

.rsiHrModulesC86 .rsiHrModulesC86-number {
  position: absolute;
  z-index: 2;
  top: 14px;
  left: 14px;
  display: grid;
  place-items: center;
  width: 37px;
  height: 37px;
  border: 1px solid #ffffffb3;
  border-radius: 12px;
  background: #ffffffed;
  color: var(--rsiC86-accent);
  font-size: 13px;
  font-weight: 500;
}

/* Animated accent underneath image */
.rsiHrModulesC86 .rsiHrModulesC86-visual::after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 20%;
  right: 20%;
  height: 3px;
  border-radius: 5px;
  background: var(--rsiC86-accent);
  animation: rsiC86-accent 5s ease-in-out infinite;
}

.rsiHrModulesC86 .rsiHrModulesC86-content {
  min-width: 0;
  text-align: left;
}

.rsiHrModulesC86 h3 {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0 0 22px;
  color: var(--rsiC86-ink);
  font-size: clamp(21px, 2vw, 26px);
  font-weight: 500;
  line-height: 1.35;
}

.rsiHrModulesC86 h3::before {
  content: "";
  width: 4px;
  height: 25px;
  flex-shrink: 0;
  border-radius: 5px;
  background: var(--rsiC86-accent);
}

/* Feature bullets */
.rsiHrModulesC86 .rsiHrModulesC86-content ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 12px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li {
  position: relative;
  min-width: 0;
  min-height: 44px;
  padding: 10px 10px 10px 39px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--rsiC86-muted);
  font-size: 13px;
  line-height: 1.8;
  overflow-wrap: anywhere;
  transition:
    background .3s ease,
    border-color .3s ease;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li::before {
  content: "✓";
  position: absolute;
  left: 8px;
  top: 13px;
  display: grid;
  place-items: center;
  width: 21px;
  height: 21px;
  border-radius: 7px;
  background: var(--rsiC86-tint);
  color: var(--rsiC86-accent);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li:hover {
  border-color: #e9edf2;
  background: #fafbfd;
}

.rsiHrModulesC86 .rsiHrModulesC86-content a {
  color: var(--rsiC86-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color .25s;
}

.rsiHrModulesC86 .rsiHrModulesC86-content a:hover {
  color: #e73d58;
}

.rsiHrModulesC86 .rsiHrModulesC86-content strong {
  font-weight: 500;
}

.rsiHrModulesC86 a:focus-visible {
  outline: 2px solid var(--rsiC86-accent);
  outline-offset: 4px;
}

/* CSS-only animation */
@keyframes rsiC86-imageBreathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.035); }
}

@keyframes rsiC86-accent {
  0%, 100% { transform: scaleX(.65); opacity: .6; }
  50% { transform: scaleX(1); opacity: 1; }
}

/* Tablet */
@media (max-width: 1000px) {
  .rsiHrModulesC86 .rsiHrModulesC86-module {
    grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
    gap: 25px;
  }

  .rsiHrModulesC86 .rsiHrModulesC86-content ul {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

/* Mobile */
@media (max-width: 650px) {
  .rsiHrModulesC86 {
    padding: 40px 16px;
  }

  .rsiHrModulesC86 .rsiHrModulesC86-intro {
    margin-bottom: 15px;
  }

  .rsiHrModulesC86 .rsiHrModulesC86-module {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 28px 0;
  }

  .rsiHrModulesC86 .rsiHrModulesC86-visual {
    width: min(320px, 100%);
    margin-inline: auto;
    border-radius: 19px;
  }

  .rsiHrModulesC86 h3 {
    margin-bottom: 14px;
  }

  .rsiHrModulesC86 .rsiHrModulesC86-intro p {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiHrModulesC86 *,
  .rsiHrModulesC86 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiHrModulesC86 {
    background: #f5f7fb;
}

/* Two boxes per row */
.rsiHrModulesC86 .rsiHrModulesC86-wrap {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.rsiHrModulesC86 .rsiHrModulesC86-intro {
    grid-column: 1 / -1;
    margin: 0 auto 12px;
}

.rsiHrModulesC86 .rsiHrModulesC86-intro p {
    font-size: 18px;
    line-height: 1.8;
}

/* Feature box */
.rsiHrModulesC86 .rsiHrModulesC86-module {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 24px;
    min-width: 0;
    padding: 28px;
    border: 1px solid #e2d9f3;
    border-radius: 24px;
    background: #f2ecfc;
    transition: transform .3s ease, box-shadow .3s ease;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(2) {
    background: #eaf7fb;
    border-color: #d4eaf1;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(3) {
    background: #fff5e6;
    border-color: #f1e2c9;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(4) {
    background: #fff0f5;
    border: 1px solid #f0dce5;
}

.rsiHrModulesC86 .rsiHrModulesC86-module:hover {
    transform: translateY(-5px);
    box-shadow: 0 16px 35px #17385f0c;
}

/* Consistent image size */
.rsiHrModulesC86 .rsiHrModulesC86-visual {
    width: 100%;
    max-width: none;
    margin: 0;
    border: 1px solid #ffffff;
    border-radius: 18px;
    background: #ffffffb3;
}

.rsiHrModulesC86 .rsiHrModulesC86-visual img {
    width: 100%;
    height: 260px;
    aspect-ratio: auto;
    object-fit: contain;
}

.rsiHrModulesC86 h3 {
    margin-bottom: 18px;
    font-size: 26px;
    font-weight: 500;
}

/* Larger bullet text */
.rsiHrModulesC86 .rsiHrModulesC86-content ul {
    grid-template-columns: 1fr;
    gap: 10px;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li {
    padding: 12px 12px 12px 43px;
    border: 1px solid #ffffff90;
    border-radius: 12px;
    background: #ffffffa6;
    color: #536174;
    font-size: 16px;
    line-height: 1.8;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li::before {
    top: 16px;
    left: 12px;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li:hover {
    background: #fff;
    border-color: #fff;
}

@media (max-width: 767px) {
    .rsiHrModulesC86 .rsiHrModulesC86-wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-module {
        padding: 22px;
        gap: 22px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-visual img {
        height: 240px;
    }

    .rsiHrModulesC86 h3 {
        font-size: 23px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-intro p {
        font-size: 16px;
    }
}

@media (max-width: 420px) {
    .rsiHrModulesC86 .rsiHrModulesC86-module {
        padding: 17px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-visual img {
        height: 210px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-content li {
        font-size: 15px;
    }
}
.rsiHrModulesC86 {
    padding: 45px 20px;
    background: #f5f7fa;
}

.rsiHrModulesC86 .rsiHrModulesC86-wrap {
    gap: 20px;
}

.rsiHrModulesC86 .rsiHrModulesC86-intro p {
    font-size: 15px;
    line-height: 1.7;
}

.rsiHrModulesC86 .rsiHrModulesC86-module,
.rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(n) {
    padding: 20px;
    gap: 18px;
    background: #fff;
    border: 1px solid #e5e9ef;
    border-radius: 16px;
}

.rsiHrModulesC86 .rsiHrModulesC86-visual {
    border: 0;
    border-radius: 12px;
    background: #f8f9fb;
}

.rsiHrModulesC86 .rsiHrModulesC86-visual img {
    height: 180px;
    object-fit: contain;
}

.rsiHrModulesC86 h3 {
    margin-bottom: 12px;
    font-size: 21px;
    font-weight: 500;
}

.rsiHrModulesC86 .rsiHrModulesC86-content ul {
    gap: 4px;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li {
    min-height: 0;
    padding: 7px 0 7px 30px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #687383;
    font-size: 14px;
    line-height: 1.7;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li::before {
    top: 10px;
    left: 0;
    width: 18px;
    height: 18px;
    background: #eef2f7;
    color: #175282;
    font-size: 11px;
}

.rsiHrModulesC86 .rsiHrModulesC86-content li:hover {
    background: transparent;
    border: 0;
}

@media (max-width: 767px) {
    .rsiHrModulesC86 {
        padding: 35px 16px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-module:nth-of-type(n) {
        padding: 18px;
    }

    .rsiHrModulesC86 .rsiHrModulesC86-visual img {
        height: 170px;
    }

    .rsiHrModulesC86 h3 {
        font-size: 20px;
    }
}
.rsiHrKioskD78,
.rsiHrKioskD78 * {
    box-sizing: border-box;
}

.rsiHrKioskD78 {
    position: relative;
    isolation: isolate;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: 30px 20px;
    background: #14345b;
    color: #fff;
    font-family: inherit;
}

.rsiHrKioskD78::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(
        circle at 83% 50%,
        #3478a536,
        transparent 40%
    );
}

.rsiHrKioskD78 .rsiHrKioskD78-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 320px);
    align-items: center;
    gap: 40px;
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
}

.rsiHrKioskD78 .rsiHrKioskD78-content {
    min-width: 0;
    text-align: left;
}

.rsiHrKioskD78 h2 {
    margin: 0 0 16px;
    color: #ffb319;
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: -.5px;
}

.rsiHrKioskD78 p {
    max-width: 760px;
    margin: 0 0 24px;
    color: #dce6f1;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.85;
}

.rsiHrKioskD78 .rsiHrKioskD78-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    max-width: 100%;
    min-height: 48px;
    padding: 12px 20px;
    overflow: hidden;
    border-radius: 9px;
    background: #ffb319;
    color: #18314f;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}

.rsiHrKioskD78 .rsiHrKioskD78-button::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -80%;
    width: 40%;
    height: 200%;
    background: linear-gradient(
        90deg, transparent, #ffffff65, transparent
    );
    transform: skewX(-20deg);
    animation: rsiD78-shine 7s ease-in-out infinite;
}

.rsiHrKioskD78 .rsiHrKioskD78-button > span {
    font-size: 21px;
}

.rsiHrKioskD78 .rsiHrKioskD78-button:hover {
    background: #e73d58;
    color: #fff;
    transform: translateY(-3px);
}

.rsiHrKioskD78 .rsiHrKioskD78-button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 5px;
}

/* AI kiosk visual */
.rsiHrKioskD78 .rsiHrKioskD78-art {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    padding: 10px 0;
    isolation: isolate;
}

.rsiHrKioskD78 .rsiHrKioskD78-art img {
    position: relative;
    z-index: 2;
    display: block;
    width: 220px;
    max-width: 100%;
    height: auto;
    filter: drop-shadow(0 18px 18px #071c3130);
    animation: rsiD78-float 7s ease-in-out infinite;
}

.rsiHrKioskD78 .rsiHrKioskD78-orbit {
    position: absolute;
    width: 95%;
    max-width: 300px;
    aspect-ratio: 1;
    border: 1px solid #ffffff18;
    border-radius: 50%;
}

.rsiHrKioskD78 .rsiHrKioskD78-orbit::before {
    content: "";
    position: absolute;
    inset: 15px;
    border: 1px dashed #ffffff20;
    border-radius: 50%;
    animation: rsiD78-rotate 40s linear infinite;
}

.rsiHrKioskD78 .rsiHrKioskD78-orbit::after {
    content: "";
    position: absolute;
    top: 15%;
    right: 13%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ffb319;
    box-shadow: 0 0 15px #ffb31955;
}

.rsiHrKioskD78 .rsiHrKioskD78-shadow {
    position: absolute;
    bottom: 0;
    width: 160px;
    max-width: 70%;
    height: 17px;
    border-radius: 50%;
    background: #071c3145;
    filter: blur(8px);
    animation: rsiD78-shadow 7s ease-in-out infinite;
}

@keyframes rsiD78-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@keyframes rsiD78-shadow {
    0%, 100% { transform: scaleX(1); opacity: .8; }
    50% { transform: scaleX(.85); opacity: .5; }
}

@keyframes rsiD78-rotate {
    to { transform: rotate(360deg); }
}

@keyframes rsiD78-shine {
    0%, 70% { left: -80%; }
    95%, 100% { left: 150%; }
}

@media (max-width: 900px) {
    .rsiHrKioskD78 .rsiHrKioskD78-wrap {
        grid-template-columns: minmax(0, 1fr) minmax(0, 230px);
        gap: 24px;
    }

    .rsiHrKioskD78 .rsiHrKioskD78-art img {
        width: 190px;
    }
}

@media (max-width: 600px) {
    .rsiHrKioskD78 {
        padding: 35px 18px;
    }

    .rsiHrKioskD78 .rsiHrKioskD78-wrap {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsiHrKioskD78 p {
        font-size: 14px;
    }

    .rsiHrKioskD78 .rsiHrKioskD78-art {
        width: min(280px, 100%);
        margin-inline: auto;
    }

    .rsiHrKioskD78 .rsiHrKioskD78-art img {
        width: 180px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiHrKioskD78 *,
    .rsiHrKioskD78 *::before,
    .rsiHrKioskD78 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiHrBenefitsL49,
.rsiHrBenefitsL49 * {
    box-sizing: border-box;
}

.rsiHrBenefitsL49 {
    width: 100%;
    min-width: 0;
    padding: clamp(40px, 5vw, 65px) 20px;
    background: #f6f8fb;
    color: #17385f;
    font-family: inherit;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-wrap {
    width: 100%;
    max-width: 1240px;
    min-width: 0;
    margin-inline: auto;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-intro {
    max-width: 760px;
    margin: 0 auto 30px;
    text-align: center;
}

.rsiHrBenefitsL49 h2 {
    margin: 0 0 13px;
    color: #17385f;
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -.6px;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-intro p {
    max-width: 630px;
    margin: 0 auto;
    color: #748092;
    font-size: 15px;
    line-height: 1.75;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

/* Uniform white cards */
.rsiHrBenefitsL49 .rsiHrBenefitsL49-card {
    --benefit-accent: #8670c6;
    --benefit-soft: #f2eefb;
    position: relative;
    min-width: 0;
    padding: 25px;
    overflow: hidden;
    border: 1px solid #e5eaf1;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 5px 18px #17385f03;
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:nth-child(2) {
    --benefit-accent: #269fb4;
    --benefit-soft: #eaf8fb;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:nth-child(3) {
    --benefit-accent: #c28e35;
    --benefit-soft: #fff6e7;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    height: 3px;
    border-radius: 5px;
    background: var(--benefit-accent);
    transform: scaleX(.15);
    transform-origin: left;
    transition: transform .4s ease;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:hover {
    transform: translateY(-5px);
    border-color: var(--benefit-accent);
    box-shadow: 0 15px 30px #17385f0a;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:hover::after {
    transform: scaleX(1);
}

/* Icons */
.rsiHrBenefitsL49 .rsiHrBenefitsL49-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 19px;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-icon {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    border-radius: 15px;
    background: var(--benefit-soft);
    color: var(--benefit-accent);
    animation: rsiBenefitsL49-float 6s ease-in-out infinite;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:nth-child(2)
.rsiHrBenefitsL49-icon {
    animation-delay: -2s;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card:nth-child(3)
.rsiHrBenefitsL49-icon {
    animation-delay: -4s;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-icon svg {
    width: 28px;
    height: 28px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-number {
    color: var(--benefit-accent);
    font-size: 26px;
    font-weight: 500;
    line-height: 1;
    opacity: .3;
}

.rsiHrBenefitsL49 h3 {
    margin: 0 0 20px;
    color: #17385f;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.3px;
}

/* Benefits list */
.rsiHrBenefitsL49 .rsiHrBenefitsL49-card ul {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0 0 6px;
    list-style: none;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card li {
    position: relative;
    min-width: 0;
    padding-left: 29px;
    color: #6b7686;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.rsiHrBenefitsL49 .rsiHrBenefitsL49-card li::before {
    content: "✓";
    position: absolute;
    top: 3px;
    left: 0;
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 6px;
    background: var(--benefit-soft);
    color: var(--benefit-accent);
    font-size: 11px;
    line-height: 1;
}

/* Subtle CSS animation */
@keyframes rsiBenefitsL49-float {
    0%, 100% {
        transform: translateY(0) rotate(0);
    }
    50% {
        transform: translateY(-4px) rotate(-3deg);
    }
}

/* Tablet */
@media (max-width: 1000px) {
    .rsiHrBenefitsL49 .rsiHrBenefitsL49-grid {
        gap: 14px;
    }

    .rsiHrBenefitsL49 .rsiHrBenefitsL49-card {
        padding: 20px;
    }

    .rsiHrBenefitsL49 h3 {
        font-size: 19px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .rsiHrBenefitsL49 {
        padding: 38px 16px;
    }

    .rsiHrBenefitsL49 .rsiHrBenefitsL49-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .rsiHrBenefitsL49 .rsiHrBenefitsL49-card {
        padding: 23px;
    }

    .rsiHrBenefitsL49 h3 {
        font-size: 21px;
        margin-bottom: 17px;
    }

    .rsiHrBenefitsL49 .rsiHrBenefitsL49-intro p {
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiHrBenefitsL49 *,
    .rsiHrBenefitsL49 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiHrFaqP83,
.rsiHrFaqP83 * {
    box-sizing: border-box;
}

.rsiHrFaqP83 {
    width: 100%;
    min-width: 0;
    padding: clamp(40px, 5vw, 65px) 20px;
    background: #fff;
    color: #17385f;
    font-family: inherit;
}

.rsiHrFaqP83 .rsiHrFaqP83-wrap {
    width: 100%;
    max-width: 1100px;
    min-width: 0;
    margin-inline: auto;
}

.rsiHrFaqP83 .rsiHrFaqP83-intro {
    margin-bottom: 30px;
    text-align: center;
}

.rsiHrFaqP83 h2 {
    margin: 0;
    color: #17385f;
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -.6px;
}

.rsiHrFaqP83 .rsiHrFaqP83-list {
    display: grid;
    gap: 13px;
}

.rsiHrFaqP83 .rsiHrFaqP83-item {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e5eaf1;
    border-radius: 14px;
    background: #fff;
    transition:
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiHrFaqP83 .rsiHrFaqP83-item[open] {
    border-color: #c7d9e9;
    box-shadow: 0 8px 24px #17385f07;
}

.rsiHrFaqP83 .rsiHrFaqP83-item summary {
    position: relative;
    display: block;
    margin: 0;
    padding: 21px 73px 21px 23px;
    list-style: none;
    cursor: pointer;
    background: #f8fafc;
    color: #17385f;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    overflow-wrap: anywhere;
    transition: background .3s ease, color .3s ease;
}

.rsiHrFaqP83 .rsiHrFaqP83-item summary::-webkit-details-marker {
    display: none;
}

/* CSS plus / minus */
.rsiHrFaqP83 .rsiHrFaqP83-item summary::before,
.rsiHrFaqP83 .rsiHrFaqP83-item summary::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 27px;
    width: 14px;
    height: 2px;
    border-radius: 3px;
    background: currentColor;
    transform: translateY(-50%);
    transition: transform .3s ease;
}

.rsiHrFaqP83 .rsiHrFaqP83-item summary::after {
    transform: translateY(-50%) rotate(90deg);
}

.rsiHrFaqP83 .rsiHrFaqP83-item[open] summary::after {
    transform: translateY(-50%) rotate(0);
}

.rsiHrFaqP83 .rsiHrFaqP83-item summary:hover {
    background: #e73d58;
    color: #fff;
}

.rsiHrFaqP83 .rsiHrFaqP83-item summary:focus-visible {
    outline: 3px solid #279fb4;
    outline-offset: -4px;
}

.rsiHrFaqP83 .rsiHrFaqP83-answer {
    padding: 0 23px;
}

.rsiHrFaqP83 .rsiHrFaqP83-answer p {
    margin: 0;
    padding: 19px 0 22px;
    color: #6b7686;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.85;
    text-align: left;
    overflow-wrap: anywhere;
}

.rsiHrFaqP83 .rsiHrFaqP83-item[open]
.rsiHrFaqP83-answer {
    animation: rsiFaqP83-reveal .35s ease both;
}

@keyframes rsiFaqP83-reveal {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Smooth opening and closing in supporting browsers */
@supports (interpolate-size: allow-keywords) {
    .rsiHrFaqP83 .rsiHrFaqP83-item {
        interpolate-size: allow-keywords;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-item::details-content {
        height: 0;
        overflow: hidden;
        transition:
            height .35s ease,
            content-visibility .35s allow-discrete;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-item[open]::details-content {
        height: auto;
    }
}

@media (max-width: 600px) {
    .rsiHrFaqP83 {
        padding: 38px 16px;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-intro {
        margin-bottom: 23px;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-item summary {
        padding: 17px 51px 17px 17px;
        font-size: 14px;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-item summary::before,
    .rsiHrFaqP83 .rsiHrFaqP83-item summary::after {
        right: 20px;
        width: 12px;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-answer {
        padding-inline: 17px;
    }

    .rsiHrFaqP83 .rsiHrFaqP83-answer p {
        padding: 16px 0 19px;
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiHrFaqP83 *,
    .rsiHrFaqP83 *::before,
    .rsiHrFaqP83 *::after,
    .rsiHrFaqP83 .rsiHrFaqP83-item::details-content {
        animation: none !important;
        transition: none !important;
    }
}
.rsiHrResourcesJ65,
.rsiHrResourcesJ65 * {
    box-sizing: border-box;
}

.rsiHrResourcesJ65 {
    width: 100%;
    min-width: 0;
    padding: clamp(40px, 5vw, 65px) 20px;
    background: #f5f7fa;
    font-family: inherit;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-wrap {
    width: 100%;
    max-width: 1240px;
    min-width: 0;
    margin-inline: auto;
}

.rsiHrResourcesJ65 h2 {
    margin: 0 0 30px;
    color: #17385f;
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    letter-spacing: -.6px;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card {
    --resource-accent: #175282;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e4e9f0;
    border-radius: 18px;
    background: #fff;
    color: #17385f;
    text-decoration: none;
    box-shadow: 0 5px 18px #17385f04;
    animation: rsiResourcesJ65-appear .7s ease both;
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:nth-child(2) {
    --resource-accent: #8866c6;
    animation-delay: .1s;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:nth-child(3) {
    --resource-accent: #279fb4;
    animation-delay: .2s;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: #edf1f6;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-arrow {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fff;
    color: var(--resource-accent);
    font-size: 23px;
    line-height: 1;
    box-shadow: 0 4px 15px #17385f15;
    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 21px;
    padding: 23px;
}

.rsiHrResourcesJ65 h3 {
    margin: 0;
    color: #17385f;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.5;
    overflow-wrap: anywhere;
    transition: color .3s ease;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-source {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid #edf0f4;
    color: #7c8796;
    font-size: 12px;
    line-height: 1.5;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-source::before {
    content: "";
    width: 6px;
    height: 6px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--resource-accent);
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:hover {
    transform: translateY(-5px);
    border-color: var(--resource-accent);
    box-shadow: 0 15px 32px #17385f0c;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:hover img {
    transform: scale(1.045);
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:hover h3 {
    color: var(--resource-accent);
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:hover
.rsiHrResourcesJ65-arrow {
    transform: rotate(8deg);
    background: var(--resource-accent);
    color: #fff;
}

.rsiHrResourcesJ65 .rsiHrResourcesJ65-card:focus-visible {
    outline: 3px solid #e5ae43;
    outline-offset: 4px;
}

@keyframes rsiResourcesJ65-appear {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (max-width: 950px) {
    .rsiHrResourcesJ65 .rsiHrResourcesJ65-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }
}

@media (max-width: 600px) {
    .rsiHrResourcesJ65 {
        padding: 38px 16px;
    }

    .rsiHrResourcesJ65 .rsiHrResourcesJ65-grid {
        grid-template-columns: 1fr;
    }

    .rsiHrResourcesJ65 h2 {
        margin-bottom: 24px;
    }

    .rsiHrResourcesJ65 .rsiHrResourcesJ65-body {
        padding: 20px;
        gap: 18px;
    }

    .rsiHrResourcesJ65 h3 {
        font-size: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiHrResourcesJ65 * {
        animation: none !important;
        transition: none !important;
    }
}
.rsiHrCtaW92,
.rsiHrCtaW92 * {
    box-sizing: border-box;
}

.rsiHrCtaW92 {
    position: relative;
    isolation: isolate;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: clamp(38px, 5vw, 65px) 20px;
    background: #14345b;
    color: #fff;
    font-family: inherit;
}

/* Decorative CSS rings */
.rsiHrCtaW92::before,
.rsiHrCtaW92::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 320px;
    height: 320px;
    border: 1px solid #ffffff14;
    border-radius: 50%;
    pointer-events: none;
    animation: rsiCtaW92-rings 10s ease-in-out infinite alternate;
}

.rsiHrCtaW92::before {
    top: -210px;
    left: -80px;
    box-shadow: 0 0 0 35px #ffffff04;
}

.rsiHrCtaW92::after {
    right: -80px;
    bottom: -240px;
    box-shadow: 0 0 0 40px #ffffff04;
    animation-delay: -5s;
}

.rsiHrCtaW92 .rsiHrCtaW92-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    width: 100%;
    max-width: 1240px;
    min-width: 0;
    margin-inline: auto;
}

.rsiHrCtaW92 .rsiHrCtaW92-content {
    flex: 1;
    min-width: 0;
    text-align: left;
}

.rsiHrCtaW92 h2 {
    margin: 0 0 13px;
    color: #fff;
    font-size: clamp(26px, 2.8vw, 36px);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -.5px;
}

.rsiHrCtaW92 p {
    margin: 0;
    color: #d2dfed;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
}

.rsiHrCtaW92 .rsiHrCtaW92-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    gap: 20px;
    max-width: 100%;
    min-height: 52px;
    padding: 13px 23px;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: 10px;
    background: #ffb319;
    color: #18314f;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

.rsiHrCtaW92 .rsiHrCtaW92-button::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -80%;
    width: 40%;
    height: 200%;
    background: linear-gradient(
        90deg, transparent, #ffffff70, transparent
    );
    transform: skewX(-20deg);
    pointer-events: none;
    animation: rsiCtaW92-shine 7s ease-in-out infinite;
}

.rsiHrCtaW92 .rsiHrCtaW92-button > span {
    font-size: 22px;
    line-height: 1;
    transition: transform .3s ease;
}

.rsiHrCtaW92 .rsiHrCtaW92-button:hover {
    transform: translateY(-3px);
    background: #e73d58;
    color: #fff;
    box-shadow: 0 12px 25px #071b3526;
}

.rsiHrCtaW92 .rsiHrCtaW92-button:hover > span {
    transform: translate(2px, -2px);
}

.rsiHrCtaW92 .rsiHrCtaW92-button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 5px;
}

@keyframes rsiCtaW92-rings {
    from { transform: scale(.9); }
    to { transform: scale(1.15); }
}

@keyframes rsiCtaW92-shine {
    0%, 70% { left: -80%; }
    95%, 100% { left: 150%; }
}

@media (max-width: 850px) {
    .rsiHrCtaW92 .rsiHrCtaW92-wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 23px;
    }
}

@media (max-width: 480px) {
    .rsiHrCtaW92 {
        padding: 36px 16px;
    }

    .rsiHrCtaW92 p {
        font-size: 14px;
    }

    .rsiHrCtaW92 .rsiHrCtaW92-button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiHrCtaW92::before,
    .rsiHrCtaW92::after,
    .rsiHrCtaW92 *,
    .rsiHrCtaW92 *::before {
        animation: none !important;
        transition: none !important;
    }
}
.rsiQmsHeroF61,
.rsiQmsHeroF61 * {
    box-sizing: border-box;
}

.rsiQmsHeroF61 {
    --qms-gold: #ffb51d;
    position: relative;
    isolation: isolate;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: clamp(40px, 5vw, 75px) 20px;
    background: #224f9d;
    color: #fff;
    font-family: inherit;
}

.rsiQmsHeroF61::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(ellipse at 50% 5%, #5494e52b, transparent 60%),
        radial-gradient(ellipse at 0% 100%, #132f691f, transparent 50%);
}

.rsiQmsHeroF61 .rsiQmsHeroF61-wrap {
    width: 100%;
    max-width: 1240px;
    min-width: 0;
    margin-inline: auto;
}

/* Six images in one desktop row */
.rsiQmsHeroF61 .rsiQmsHeroF61-gallery {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: center;
    gap: 22px;
    max-width: 1100px;
    margin: 0 auto 35px;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene {
    --qms-delay: 0s;
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    height: 175px;
    isolation: isolate;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(2) {
    --qms-delay: -1s;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(3) {
    --qms-delay: -2s;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(4) {
    --qms-delay: -3s;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(5) {
    --qms-delay: -4s;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(6) {
    --qms-delay: -5s;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene img {
    position: relative;
    z-index: 2;
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 160px;
    object-fit: contain;
    filter: drop-shadow(0 12px 10px #10265626);
    animation: rsiQmsF61-float 7s ease-in-out infinite;
    animation-delay: var(--qms-delay);
}

/* Layered CSS triangles */
.rsiQmsHeroF61 .rsiQmsHeroF61-triangle {
    position: absolute;
    z-index: -1;
    inset: 10px 0;
    animation: rsiQmsF61-triangleGlow 7s ease-in-out infinite;
    animation-delay: var(--qms-delay);
}

.rsiQmsHeroF61 .rsiQmsHeroF61-triangle::before,
.rsiQmsHeroF61 .rsiQmsHeroF61-triangle::after {
    content: "";
    position: absolute;
    inset: 0;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.rsiQmsHeroF61 .rsiQmsHeroF61-triangle::before {
    background: #a4c9ed55;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-triangle::after {
    inset: 2px 3px;
    background: #2e60aa;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-scene:nth-child(even)
.rsiQmsHeroF61-triangle {
    rotate: 180deg;
}

/* Main copy */
.rsiQmsHeroF61 .rsiQmsHeroF61-content {
    min-width: 0;
    text-align: center;
    animation: rsiQmsF61-enter .8s ease both;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-eyebrow {
    display: block;
    margin-bottom: 14px;
    color: var(--qms-gold);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.rsiQmsHeroF61 h1 {
    max-width: 1100px;
    margin: 0 auto 21px;
    color: #fff;
    font-size: clamp(32px, 3.8vw, 51px);
    font-weight: 500;
    line-height: 1.16;
    letter-spacing: -1px;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-subtitle {
    margin-bottom: 21px;
    color: #eaf3ff;
    font-size: clamp(14px, 1.6vw, 18px);
    font-weight: 500;
    line-height: 1.8;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-subtitle > span {
    display: inline-block;
    margin-inline: 9px;
    color: #8eafd9;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-description {
    max-width: 900px;
    margin: 0 auto;
    color: #e0eafa;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.85;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-description strong {
    color: #fff;
    font-weight: 500;
}

/* Buttons */
.rsiQmsHeroF61 .rsiQmsHeroF61-actions {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 29px;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    max-width: 100%;
    min-height: 51px;
    padding: 13px 23px;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.6;
    text-decoration: none;
    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        transform .3s ease;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-primary {
    background: var(--qms-gold);
    color: #193553;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-primary::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -80%;
    width: 40%;
    height: 200%;
    background: linear-gradient(
        90deg, transparent, #ffffff65, transparent
    );
    transform: skewX(-20deg);
    animation: rsiQmsF61-shine 7s ease-in-out infinite;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-primary > span {
    font-size: 21px;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-secondary {
    background: #ffffff06;
    border-color: #ffffff75;
    color: #fff;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-secondary svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-button:hover {
    transform: translateY(-3px);
    background: #e73d58;
    border-color: #e73d58;
    color: #fff;
}

.rsiQmsHeroF61 .rsiQmsHeroF61-button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 5px;
}

@keyframes rsiQmsF61-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes rsiQmsF61-triangleGlow {
    0%, 100% { opacity: .45; }
    50% { opacity: .9; }
}

@keyframes rsiQmsF61-enter {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes rsiQmsF61-shine {
    0%, 70% { left: -80%; }
    95%, 100% { left: 150%; }
}

/* Tablet */
@media (max-width: 900px) {
    .rsiQmsHeroF61 .rsiQmsHeroF61-gallery {
        gap: 12px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-scene {
        height: 135px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-scene img {
        max-height: 120px;
    }
}

/* Mobile: no slider or horizontal scroll */
@media (max-width: 650px) {
    .rsiQmsHeroF61 {
        padding: 32px 16px 40px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 15px;
        max-width: 450px;
        margin-bottom: 28px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-scene {
        height: 120px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-scene img {
        max-height: 109px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-eyebrow {
        font-size: 10px;
        letter-spacing: .8px;
    }

    .rsiQmsHeroF61 h1 {
        font-size: clamp(29px, 7.5vw, 39px);
        letter-spacing: -.6px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-description {
        font-size: 14px;
        text-align: left;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-subtitle > span {
        margin-inline: 4px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-actions {
        gap: 11px;
    }

    .rsiQmsHeroF61 .rsiQmsHeroF61-button {
        width: 100%;
        padding-inline: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiQmsHeroF61 *,
    .rsiQmsHeroF61 *::before,
    .rsiQmsHeroF61 *::after {
        animation: none !important;
        transition: none !important;
    }
}
.rsiQmsImpactN74,
.rsiQmsImpactN74 * {
  box-sizing: border-box;
}

.rsiQmsImpactN74 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 70px) 20px;
  background: #f4f6f9;
  color: #17385f;
  font-family: inherit;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-group + .rsiQmsImpactN74-group {
  margin-top: 42px;
}

.rsiQmsImpactN74 h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 0 25px;
  color: #2253a0;
  font-size: clamp(27px, 3vw, 36px);
  font-weight: 500;
  line-height: 1.3;
}

.rsiQmsImpactN74 h2 > span {
  display: grid;
  place-items: center;
  width: 35px;
  height: 35px;
  border-radius: 11px;
  background: #e8eef9;
  font-size: 24px;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-growth h2 > span {
  background: #e6f4ef;
  color: #2c977a;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card {
  --impact-accent: #487bbb;
  --impact-soft: #edf3fc;
  position: relative;
  min-width: 0;
  padding: 25px;
  overflow: hidden;
  border: 1px solid #e4e9f0;
  border-radius: 17px;
  background: #fff;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:nth-child(2) {
  --impact-accent: #a27a32;
  --impact-soft: #fff5e5;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:nth-child(3) {
  --impact-accent: #8968bf;
  --impact-soft: #f2edfb;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:first-child {
  --impact-accent: #299d89;
  --impact-soft: #eaf8f3;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:nth-child(2) {
  --impact-accent: #299caf;
  --impact-soft: #eaf7fb;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:nth-child(3) {
  --impact-accent: #ce7594;
  --impact-soft: #fff0f5;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25px;
  right: 25px;
  height: 3px;
  border-radius: 4px;
  background: var(--impact-accent);
  transform: scaleX(.15);
  transform-origin: left;
  transition: transform .4s ease;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:hover {
  transform: translateY(-5px);
  border-color: var(--impact-accent);
  box-shadow: 0 14px 30px #17385f0a;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:hover::after {
  transform: scaleX(1);
}

.rsiQmsImpactN74 .rsiQmsImpactN74-icon {
  display: grid;
  place-items: center;
  width: 49px;
  height: 49px;
  margin-bottom: 18px;
  border-radius: 14px;
  background: var(--impact-soft);
  color: var(--impact-accent);
  animation: rsiImpactN74-float 6s ease-in-out infinite;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:nth-child(2)
.rsiQmsImpactN74-icon {
  animation-delay: -2s;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-card:nth-child(3)
.rsiQmsImpactN74-icon {
  animation-delay: -4s;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-clock {
  transform-origin: 16px 17px;
  animation: rsiImpactN74-clock 8s ease-in-out infinite;
}

.rsiQmsImpactN74 h3 {
  margin: 0 0 12px;
  color: #17385f;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.35;
}

.rsiQmsImpactN74 p {
  margin: 0;
  color: #697586;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  overflow-wrap: anywhere;
}

@keyframes rsiImpactN74-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@keyframes rsiImpactN74-clock {
  0%, 100% { transform: rotate(-12deg); }
  50% { transform: rotate(18deg); }
}

@media (max-width: 950px) {
  .rsiQmsImpactN74 .rsiQmsImpactN74-grid {
    gap: 14px;
  }

  .rsiQmsImpactN74 .rsiQmsImpactN74-card {
    padding: 20px;
  }

  .rsiQmsImpactN74 h3 {
    font-size: 19px;
  }
}

@media (max-width: 700px) {
  .rsiQmsImpactN74 {
    padding: 38px 16px;
  }

  .rsiQmsImpactN74 .rsiQmsImpactN74-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .rsiQmsImpactN74 .rsiQmsImpactN74-group + .rsiQmsImpactN74-group {
    margin-top: 32px;
  }

  .rsiQmsImpactN74 .rsiQmsImpactN74-card {
    padding: 23px;
  }

  .rsiQmsImpactN74 h3 {
    font-size: 21px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsImpactN74 *,
  .rsiQmsImpactN74 *::after {
    animation: none !important;
    transition: none !important;
  }
}
/* Remove previous floating animation */
.rsiQmsImpactN74 .rsiQmsImpactN74-icon {
    animation: none;
}

.rsiQmsImpactN74 .rsiQmsImpactN74-icon svg {
    overflow: visible;
    transform-origin: center;
    transform-box: fill-box;
}

/* 1. Cost: gentle wallet movement */
.rsiQmsImpactN74 .rsiQmsImpactN74-group:first-child
.rsiQmsImpactN74-card:nth-child(1) svg {
    animation: rsiImpactN74-wallet 4s ease-in-out infinite;
}

/* 2. Waiting time: rotating clock hands */
.rsiQmsImpactN74 .rsiQmsImpactN74-clock {
    transform-box: view-box;
    transform-origin: 16px 17px;
    animation: rsiImpactN74-clockHands 12s linear infinite;
}

/* 3. Customer turnover: moving directional arrows */
.rsiQmsImpactN74 .rsiQmsImpactN74-group:first-child
.rsiQmsImpactN74-card:nth-child(3) svg path:last-child {
    animation: rsiImpactN74-flow 3s ease-in-out infinite;
}

/* 4. Productivity: lightning pulse */
.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:nth-child(1) svg {
    animation: rsiImpactN74-energy 3s ease-in-out infinite;
}

/* 5. Sales: animated trend line */
.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:nth-child(2) svg path:nth-child(2) {
    stroke-dasharray: 60;
    stroke-dashoffset: 0;
    animation: rsiImpactN74-trend 4s ease-in-out infinite;
}

/* 6. Satisfaction: cheerful face movement */
.rsiQmsImpactN74 .rsiQmsImpactN74-growth
.rsiQmsImpactN74-card:nth-child(3) svg {
    animation: rsiImpactN74-smile 4s ease-in-out infinite;
}

@keyframes rsiImpactN74-wallet {
    0%, 65%, 100% { transform: rotate(0); }
    72% { transform: rotate(-8deg); }
    80% { transform: rotate(6deg); }
    88% { transform: rotate(-3deg); }
}

@keyframes rsiImpactN74-clockHands {
    from { transform: rotate(0); }
    to { transform: rotate(360deg); }
}

@keyframes rsiImpactN74-flow {
    0%, 100% {
        transform: translateX(0);
        opacity: .6;
    }
    50% {
        transform: translateX(2px);
        opacity: 1;
    }
}

@keyframes rsiImpactN74-energy {
    0%, 100% {
        transform: scale(1);
        fill: transparent;
    }
    50% {
        transform: scale(1.1);
        fill: #299d8925;
    }
}

@keyframes rsiImpactN74-trend {
    0% {
        stroke-dashoffset: 60;
        opacity: .3;
    }
    45%, 85% {
        stroke-dashoffset: 0;
        opacity: 1;
    }
    100% {
        stroke-dashoffset: 0;
        opacity: .3;
    }
}

@keyframes rsiImpactN74-smile {
    0%, 60%, 100% { transform: rotate(0) scale(1); }
    72% { transform: rotate(-7deg) scale(1.06); }
    85% { transform: rotate(5deg) scale(1.06); }
}

@media (prefers-reduced-motion: reduce) {
    .rsiQmsImpactN74 .rsiQmsImpactN74-icon,
    .rsiQmsImpactN74 .rsiQmsImpactN74-icon svg,
    .rsiQmsImpactN74 .rsiQmsImpactN74-icon svg path {
        animation: none !important;
    }
}
.rsiQueueTabsH87,
.rsiQueueTabsH87 * {
  box-sizing: border-box;
}

.rsiQueueTabsH87 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 70px) 20px;
  background: #fff;
  color: #17385f;
  font-family: inherit;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQueueTabsH87 h2 {
  margin: 0 0 30px;
  color: #2253a0;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  letter-spacing: -.6px;
}

/* Wrapping tabs: no horizontal slider */
.rsiQueueTabsH87 .rsiQueueTabsH87-nav {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 22px;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab {
  position: relative;
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  margin: 0;
  padding: 13px 11px;
  overflow: hidden;
  border: 1px solid #e4eaf2;
  border-radius: 12px;
  background: #f7f9fc;
  color: #61718a;
  font: inherit;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
  transition:
    background .3s ease,
    color .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  border-radius: 8px;
  background: #eaf0f8;
  color: #2253a0;
  font-size: 10px;
  transition: background .3s ease, color .3s ease;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab:hover {
  border-color: #9bb5db;
  background: #eff4fb;
  color: #2253a0;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab[aria-selected="true"] {
  border-color: #2253a0;
  background: #2253a0;
  color: #fff;
  box-shadow: 0 7px 18px #2253a01a;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab[aria-selected="true"] > span {
  background: #ffffff20;
  color: #ffca62;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 15px;
  right: 15px;
  height: 2px;
  background: #ffb51d;
  transform: scaleX(0);
  transition: transform .35s ease;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab[aria-selected="true"]::after {
  transform: scaleX(1);
}

.rsiQueueTabsH87 .rsiQueueTabsH87-tab:focus-visible,
.rsiQueueTabsH87 .rsiQueueTabsH87-panel:focus-visible {
  outline: 3px solid #dca639;
  outline-offset: 4px;
}

/* Content panel */
.rsiQueueTabsH87 .rsiQueueTabsH87-panels {
  min-width: 0;
  border: 1px solid #e7ecf3;
  border-radius: 22px;
  background: #f7f9fc;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(25px, 4vw, 55px);
  padding: clamp(23px, 3vw, 40px);
  border-radius: inherit;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-panel[hidden] {
  display: none;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-copy {
  min-width: 0;
  text-align: left;
  animation: rsiQH87-copyIn .45s ease both;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-number {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 16px;
  border: 1px solid #e1e9f5;
  border-radius: 12px;
  background: #fff;
  color: #2253a0;
  font-size: 13px;
  font-weight: 500;
}

.rsiQueueTabsH87 h3 {
  margin: 0 0 16px;
  color: #17385f;
  font-size: clamp(24px, 2.5vw, 31px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.4px;
}

.rsiQueueTabsH87 p {
  margin: 0;
  color: #68778a;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

/* Original images */
.rsiQueueTabsH87 .rsiQueueTabsH87-art {
  position: relative;
  min-width: 0;
  padding: 15px;
  overflow: hidden;
  border: 1px solid #e8edf4;
  border-radius: 17px;
  background: #fff;
  animation: rsiQH87-imageIn .55s ease both;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-art::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 30%;
  right: 30%;
  height: 3px;
  border-radius: 4px;
  background: #ffb51d;
  animation: rsiQH87-accent 5s ease-in-out infinite;
}

.rsiQueueTabsH87 .rsiQueueTabsH87-art img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 548 / 329;
  object-fit: contain;
  animation: rsiQH87-imageFloat 7s ease-in-out infinite;
}

/* CSS animations */
@keyframes rsiQH87-copyIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes rsiQH87-imageIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes rsiQH87-imageFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes rsiQH87-accent {
  0%, 100% { transform: scaleX(.6); opacity: .6; }
  50% { transform: scaleX(1); opacity: 1; }
}

/* Tablet */
@media (max-width: 1050px) {
  .rsiQueueTabsH87 .rsiQueueTabsH87-nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 800px) {
  .rsiQueueTabsH87 .rsiQueueTabsH87-panel {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-art {
    width: 100%;
    max-width: 548px;
    margin-inline: auto;
  }
}

/* Mobile */
@media (max-width: 520px) {
  .rsiQueueTabsH87 {
    padding: 38px 16px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 16px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-tab {
    padding: 11px 9px;
    gap: 7px;
    font-size: 11px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-tab > span {
    width: 23px;
    height: 23px;
    font-size: 9px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-panel {
    padding: 21px 17px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-panels {
    border-radius: 16px;
  }

  .rsiQueueTabsH87 p {
    font-size: 14px;
  }

  .rsiQueueTabsH87 .rsiQueueTabsH87-art {
    padding: 10px;
    border-radius: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQueueTabsH87 *,
  .rsiQueueTabsH87 *::before,
  .rsiQueueTabsH87 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsExploreB96,
.rsiQmsExploreB96 * {
  box-sizing: border-box;
}

.rsiQmsExploreB96 {
  width: 100%;
  min-width: 0;
  padding: clamp(42px, 6vw, 75px) 20px;
  background: #fff;
  color: #17385f;
  font-family: inherit;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQmsExploreB96 h2 {
  margin: 0 0 28px;
  color: #17385f;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.7px;
  text-align: center;
}

/* Pill navigation */
.rsiQmsExploreB96 .rsiQmsExploreB96-nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 32px;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-nav button {
  position: relative;
  max-width: 100%;
  margin: 0;
  padding: 12px 18px;
  border: 1px solid #e3e9f1;
  border-radius: 50px;
  background: #fff;
  color: #68788b;
  font: inherit;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
  transition:
    color .3s ease,
    background .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-nav button:hover {
  border-color: #91afd6;
  background: #f3f7fc;
  color: #2253a0;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-nav
button[aria-selected="true"] {
  border-color: #173f78;
  background: #173f78;
  color: #fff;
  box-shadow: 0 6px 18px #173f781c;
}

/* Open editorial layout */
.rsiQmsExploreB96 .rsiQmsExploreB96-display {
  position: relative;
  min-width: 0;
  border-top: 1px solid #e9edf3;
  padding-top: 32px;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 5vw, 65px);
  min-width: 0;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-panel[hidden] {
  display: none;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-copy {
  min-width: 0;
  text-align: left;
  animation: rsiQB96-copyIn .5s ease both;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-number {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  color: #8999ad;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-number::before {
  content: "";
  width: 30px;
  height: 2px;
  border-radius: 3px;
  background: #eeb249;
}

.rsiQmsExploreB96 h3 {
  margin: 0 0 19px;
  color: #17385f;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.6px;
}

.rsiQmsExploreB96 p {
  margin: 0;
  color: #6c7889;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.9;
  overflow-wrap: anywhere;
}

/* Image with layered backdrop */
.rsiQmsExploreB96 .rsiQmsExploreB96-visual {
  position: relative;
  isolation: isolate;
  min-width: 0;
  padding: 28px 12px;
  animation: rsiQB96-imageIn .6s ease both;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-visual::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 4% 3%;
  border-radius: 35% 15% 28% 14%;
  background: #f0f5fb;
  animation: rsiQB96-shape 10s ease-in-out infinite alternate;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-visual::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8% 7%;
  border: 1px dashed #c9d8eb;
  border-radius: 25% 20% 30% 18%;
  transform: rotate(-5deg);
  animation: rsiQB96-outline 9s ease-in-out infinite alternate;
}

.rsiQmsExploreB96 .rsiQmsExploreB96-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 548 / 329;
  object-fit: contain;
  filter: drop-shadow(0 12px 12px #17385f0b);
  animation: rsiQB96-float 7s ease-in-out infinite;
}

.rsiQmsExploreB96 button:focus-visible,
.rsiQmsExploreB96 [role="tabpanel"]:focus-visible {
  outline: 3px solid #dda63b;
  outline-offset: 5px;
}

/* CSS-only visual animations */
@keyframes rsiQB96-copyIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes rsiQB96-imageIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes rsiQB96-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

@keyframes rsiQB96-shape {
  from { border-radius: 35% 15% 28% 14%; }
  to { border-radius: 18% 30% 16% 32%; }
}

@keyframes rsiQB96-outline {
  from { transform: rotate(-5deg) scale(.96); }
  to { transform: rotate(4deg) scale(1); }
}

@media (max-width: 850px) {
  .rsiQmsExploreB96 .rsiQmsExploreB96-panel {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiQmsExploreB96 .rsiQmsExploreB96-visual {
    width: min(560px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 550px) {
  .rsiQmsExploreB96 {
    padding: 38px 16px;
  }

  .rsiQmsExploreB96 .rsiQmsExploreB96-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 23px;
  }

  .rsiQmsExploreB96 .rsiQmsExploreB96-nav button {
    min-width: 0;
    padding: 11px 9px;
    border-radius: 12px;
    font-size: 11px;
  }

  .rsiQmsExploreB96 .rsiQmsExploreB96-display {
    padding-top: 25px;
  }

  .rsiQmsExploreB96 p {
    font-size: 14px;
  }

  .rsiQmsExploreB96 .rsiQmsExploreB96-visual {
    padding: 22px 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsExploreB96 *,
  .rsiQmsExploreB96 *::before,
  .rsiQmsExploreB96 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsSoftwareR52,
.rsiQmsSoftwareR52 * {
  box-sizing: border-box;
}

.rsiQmsSoftwareR52 {
  width: 100%;
  min-width: 0;
  padding: clamp(42px, 6vw, 75px) 20px;
  background: #f3f6fa;
  color: #17385f;
  font-family: inherit;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-wrap {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.3fr);
  align-items: center;
  gap: clamp(30px, 5vw, 65px);
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

/* Screenshot composition */
.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery {
  position: relative;
  isolation: isolate;
  display: grid;
  gap: 22px;
  min-width: 0;
  padding: 15px 20px 15px 0;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 0 0 25px;
  border: 1px solid #dce5f1;
  border-radius: 25px;
  background: #eaf0f8;
}

/* Animated connection line */
.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 20%;
  bottom: 20%;
  right: 9px;
  width: 2px;
  background: linear-gradient(
    to bottom,
    transparent,
    #7ca8d7,
    #d6b26d,
    transparent
  );
  background-size: 100% 200%;
  animation: rsiSoftwareR52-connect 6s linear infinite;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot {
  position: relative;
  min-width: 0;
  width: calc(100% - 16px);
  margin: 0;
  padding: 12px;
  border: 1px solid #e0e7ef;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 25px #17385f08;
  animation: rsiSoftwareR52-float 8s ease-in-out infinite;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot:nth-child(2) {
  justify-self: end;
  animation-delay: -4s;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot figcaption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 2px 3px 12px;
  color: #7b899a;
  font-size: 10px;
  line-height: 1.5;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot figcaption > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #365679;
  font-weight: 500;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot figcaption i {
  width: 6px;
  height: 6px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #35a7b9;
  box-shadow: 0 0 0 4px #35a7b910;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot:nth-child(2)
figcaption i {
  background: #b58c3f;
  box-shadow: 0 0 0 4px #b58c3f10;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 9px;
}

/* Content */
.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-content {
  min-width: 0;
  text-align: left;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 14px;
  color: #d88335;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.rsiQmsSoftwareR52 .rsiQmsSoftwareR52-label::before {
  content: "";
  width: 24px;
  height: 2px;
  border-radius: 3px;
  background: currentColor;
}

.rsiQmsSoftwareR52 h2 {
  margin: 0 0 24px;
  color: #17385f;
  font-size: clamp(27px, 2.8vw, 37px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.6px;
}

.rsiQmsSoftwareR52 p {
  margin: 0 0 20px;
  color: #68778b;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

.rsiQmsSoftwareR52 p:last-child {
  margin-bottom: 0;
}

@keyframes rsiSoftwareR52-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes rsiSoftwareR52-connect {
  from { background-position: 0 0; }
  to { background-position: 0 200%; }
}

/* Tablet */
@media (max-width: 900px) {
  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-wrap {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-content {
    order: -1;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    padding: 18px;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery::before {
    inset: 0;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot {
    width: 100%;
  }
}

/* Mobile */
@media (max-width: 550px) {
  .rsiQmsSoftwareR52 {
    padding: 38px 16px;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-gallery {
    grid-template-columns: 1fr;
    gap: 17px;
    padding: 14px;
    width: min(420px, 100%);
    margin-inline: auto;
  }

  .rsiQmsSoftwareR52 .rsiQmsSoftwareR52-shot {
    padding: 10px;
  }

  .rsiQmsSoftwareR52 p {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsSoftwareR52 *,
  .rsiQmsSoftwareR52 *::before,
  .rsiQmsSoftwareR52 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiPeripheralG73,
.rsiPeripheralG73 * {
  box-sizing: border-box;
}

.rsiPeripheralG73 {
  width: 100%;
  min-width: 0;
  padding: clamp(42px, 5vw, 70px) 20px;
  background: #224f9d;
  color: #fff;
  font-family: inherit;
}

.rsiPeripheralG73 .rsiPeripheralG73-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiPeripheralG73 .rsiPeripheralG73-intro {
  max-width: 950px;
  margin: 0 auto 38px;
  text-align: center;
}

.rsiPeripheralG73 h2 {
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.6px;
}

.rsiPeripheralG73 .rsiPeripheralG73-intro p {
  margin: 0;
  color: #dce8fa;
  font-size: 15px;
  line-height: 1.8;
}

.rsiPeripheralG73 .rsiPeripheralG73-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 30px 16px;
}

/* Uniform item */
.rsiPeripheralG73 .rsiPeripheralG73-item {
  --peripheral-color: #77d5ff;
  --peripheral-delay: 0s;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  padding: 12px 5px;
  text-align: center;
}

.rsiPeripheralG73 .rsiPeripheralG73-item:nth-child(4n + 2) {
  --peripheral-color: #ffce79;
  --peripheral-delay: -1.5s;
}

.rsiPeripheralG73 .rsiPeripheralG73-item:nth-child(4n + 3) {
  --peripheral-color: #c7b3ff;
  --peripheral-delay: -3s;
}

.rsiPeripheralG73 .rsiPeripheralG73-item:nth-child(4n + 4) {
  --peripheral-color: #8ce3d2;
  --peripheral-delay: -4.5s;
}

/* CSS 3D-style icon tile */
.rsiPeripheralG73 .rsiPeripheralG73-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 87px;
  height: 87px;
  margin-bottom: 19px;
  border: 1px solid #ffffff48;
  border-radius: 24px;
  background: linear-gradient(145deg, #4d7dc6, #204887);
  color: var(--peripheral-color);
  box-shadow:
    inset 2px 2px 3px #ffffff24,
    inset -3px -3px 6px #102d634d,
    0 7px 0 #183b77,
    0 14px 19px #10295735;
  animation: rsiPeripheralG73-float 6s ease-in-out infinite;
  animation-delay: var(--peripheral-delay);
}

.rsiPeripheralG73 .rsiPeripheralG73-icon::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 15px;
  right: 15px;
  height: 1px;
  background: linear-gradient(
    90deg, transparent, #ffffff65, transparent
  );
}

.rsiPeripheralG73 .rsiPeripheralG73-icon svg {
  display: block;
  width: 46px;
  height: 46px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 3px 1px #0b2c6690);
  transition: transform .35s ease;
}

.rsiPeripheralG73 .rsiPeripheralG73-item:hover svg {
  transform: translateY(-2px) scale(1.08);
}

.rsiPeripheralG73 h3 {
  margin: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

/* Animated scan lines */
.rsiPeripheralG73 .rsiPeripheralG73-scan {
  stroke: #ffce79;
  animation: rsiPeripheralG73-scan 3.5s ease-in-out infinite;
}

/* Touch, RFID and biometric effects */
.rsiPeripheralG73 .rsiPeripheralG73-signal {
  animation: rsiPeripheralG73-signal 3s ease-in-out infinite;
  animation-delay: var(--peripheral-delay);
}

@keyframes rsiPeripheralG73-float {
  0%, 100% {
    transform: translateY(0) rotate(-2deg);
  }
  50% {
    transform: translateY(-5px) rotate(2deg);
  }
}

@keyframes rsiPeripheralG73-scan {
  0%, 100% {
    transform: translateY(-6px);
    opacity: .45;
  }
  50% {
    transform: translateY(6px);
    opacity: 1;
  }
}

@keyframes rsiPeripheralG73-signal {
  0%, 100% { opacity: .45; }
  50% { opacity: 1; }
}

/* Tablet */
@media (max-width: 1050px) {
  .rsiPeripheralG73 .rsiPeripheralG73-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px 14px;
  }
}

/* Mobile */
@media (max-width: 650px) {
  .rsiPeripheralG73 {
    padding: 38px 16px;
  }

  .rsiPeripheralG73 .rsiPeripheralG73-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 10px;
  }

  .rsiPeripheralG73 .rsiPeripheralG73-icon {
    width: 72px;
    height: 72px;
    border-radius: 20px;
    margin-bottom: 16px;
  }

  .rsiPeripheralG73 .rsiPeripheralG73-icon svg {
    width: 39px;
    height: 39px;
  }

  .rsiPeripheralG73 h3 {
    font-size: 12px;
  }

  .rsiPeripheralG73 .rsiPeripheralG73-intro p {
    font-size: 14px;
  }
}

@media (max-width: 360px) {
  .rsiPeripheralG73 .rsiPeripheralG73-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiPeripheralG73 *,
  .rsiPeripheralG73 *::before,
  .rsiPeripheralG73 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsAppsV68,
.rsiQmsAppsV68 * {
  box-sizing: border-box;
}

.rsiQmsAppsV68 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 70px) 20px;
  background: #f5f7fa;
  color: #17385f;
  font-family: inherit;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQmsAppsV68 h2 {
  margin: 0 0 32px;
  color: #17385f;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  letter-spacing: -.6px;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 17px;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item {
  --app-accent: #3977ba;
  --app-soft: #edf4fc;
  --app-delay: 0s;
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
  min-width: 0;
  padding: 24px 12px 20px;
  overflow: hidden;
  border: 1px solid #e5eaf1;
  border-radius: 16px;
  background: #fff;
  text-align: center;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item:nth-child(4n + 2) {
  --app-accent: #a17b34;
  --app-soft: #fff6e7;
  --app-delay: -1.5s;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item:nth-child(4n + 3) {
  --app-accent: #8a68c6;
  --app-soft: #f3eefb;
  --app-delay: -3s;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item:nth-child(4n + 4) {
  --app-accent: #269d9e;
  --app-soft: #eaf8f7;
  --app-delay: -4.5s;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 22px;
  right: 22px;
  height: 2px;
  border-radius: 3px;
  background: var(--app-accent);
  transform: scaleX(.15);
  transition: transform .35s ease;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item:hover {
  transform: translateY(-5px);
  border-color: var(--app-accent);
  box-shadow: 0 12px 25px #17385f08;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-item:hover::after {
  transform: scaleX(1);
}

/* Raised icon tiles */
.rsiQmsAppsV68 .rsiQmsAppsV68-icon {
  display: grid;
  place-items: center;
  width: 67px;
  height: 67px;
  margin-bottom: 20px;
  border: 1px solid #ffffff;
  border-radius: 19px;
  background: linear-gradient(145deg, #fff, var(--app-soft));
  color: var(--app-accent);
  box-shadow:
    inset 1px 1px 2px #fff,
    0 4px 0 var(--app-soft),
    0 9px 15px #17385f09;
  animation: rsiAppsV68-float 6s ease-in-out infinite;
  animation-delay: var(--app-delay);
}

.rsiQmsAppsV68 .rsiQmsAppsV68-icon svg {
  display: block;
  width: 39px;
  height: 39px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiQmsAppsV68 h3 {
  margin: 0;
  color: #3a506c;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-pulse {
  animation: rsiAppsV68-pulse 3s ease-in-out infinite;
}

.rsiQmsAppsV68 .rsiQmsAppsV68-flight {
  animation: rsiAppsV68-flight 4s ease-in-out infinite;
}

@keyframes rsiAppsV68-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@keyframes rsiAppsV68-pulse {
  0%, 100% { opacity: .4; }
  50% { opacity: 1; }
}

@keyframes rsiAppsV68-flight {
  0%, 100% { transform: translate(0, 0); }
  50% { transform: translate(2px, -2px); }
}

@media (max-width: 1050px) {
  .rsiQmsAppsV68 .rsiQmsAppsV68-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 750px) {
  .rsiQmsAppsV68 .rsiQmsAppsV68-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }
}

@media (max-width: 480px) {
  .rsiQmsAppsV68 {
    padding: 38px 16px;
  }

  .rsiQmsAppsV68 .rsiQmsAppsV68-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rsiQmsAppsV68 .rsiQmsAppsV68-item {
    padding: 21px 10px 18px;
  }

  .rsiQmsAppsV68 h3 {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsAppsV68 *,
  .rsiQmsAppsV68 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsRelatedD42,
.rsiQmsRelatedD42 * {
  box-sizing: border-box;
}

.rsiQmsRelatedD42 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 65px) 20px;
  background: #f5f7fa;
  font-family: inherit;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQmsRelatedD42 h2 {
  margin: 0 0 25px;
  color: #17385f;
  font-size: clamp(26px, 3vw, 35px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.5px;
  text-align: left;
}

.rsiQmsRelatedD42 a {
  text-decoration: none;
}

.rsiQmsRelatedD42 a:focus-visible {
  outline: 3px solid #dca742;
  outline-offset: 4px;
}

/* Solution links */
.rsiQmsRelatedD42 .rsiQmsRelatedD42-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links li {
  --related-accent: #477bb8;
  min-width: 0;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links li:nth-child(3n + 2) {
  --related-accent: #9270c8;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links li:nth-child(3n) {
  --related-accent: #299eaa;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  height: 100%;
  padding: 17px 19px;
  border: 1px solid #e4eaf1;
  border-radius: 12px;
  background: #fff;
  color: #435873;
  transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links a::before {
  content: "";
  width: 6px;
  height: 6px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--related-accent);
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links a > span {
  flex: 1;
  min-width: 0;
  font-size: 14px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links i {
  color: var(--related-accent);
  font-size: 21px;
  font-style: normal;
  transition: transform .3s ease;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links a:hover {
  border-color: var(--related-accent);
  box-shadow: 0 6px 18px #17385f06;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-links a:hover i {
  transform: translate(2px, -2px);
}

/* Separate blog area */
.rsiQmsRelatedD42 .rsiQmsRelatedD42-blogs {
  margin-top: 42px;
  padding-top: 35px;
  border-top: 1px solid #e0e6ef;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card {
  --blog-accent: #477bb8;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e4eaf1;
  border-radius: 16px;
  background: #fff;
  animation: rsiRelatedD42-enter .7s ease both;
  transition:
    transform .3s ease,
    box-shadow .3s ease,
    border-color .3s ease;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:nth-child(2) {
  --blog-accent: #8e6ac6;
  animation-delay: .1s;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:nth-child(3) {
  --blog-accent: #b58b3e;
  animation-delay: .2s;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:nth-child(4) {
  --blog-accent: #279eae;
  animation-delay: .3s;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: #eaf0f7;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-image > span {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border-radius: 50%;
  background: #fff;
  color: var(--blog-accent);
  font-size: 21px;
  transition: background .3s ease, color .3s ease;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 20px;
  padding: 19px;
}

.rsiQmsRelatedD42 h3 {
  margin: 0;
  color: #17385f;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-body > span {
  margin-top: auto;
  padding-top: 13px;
  border-top: 1px solid #edf0f4;
  color: #8490a0;
  font-size: 11px;
  line-height: 1.5;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:hover {
  transform: translateY(-5px);
  border-color: var(--blog-accent);
  box-shadow: 0 12px 25px #17385f09;
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:hover img {
  transform: scale(1.05);
}

.rsiQmsRelatedD42 .rsiQmsRelatedD42-card:hover
.rsiQmsRelatedD42-image > span {
  background: var(--blog-accent);
  color: #fff;
}

@keyframes rsiRelatedD42-enter {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (max-width: 1000px) {
  .rsiQmsRelatedD42 .rsiQmsRelatedD42-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 650px) {
  .rsiQmsRelatedD42 {
    padding: 38px 16px;
  }

  .rsiQmsRelatedD42 .rsiQmsRelatedD42-links {
    grid-template-columns: 1fr;
  }

  .rsiQmsRelatedD42 .rsiQmsRelatedD42-links a {
    padding: 14px;
  }
}

@media (max-width: 450px) {
  .rsiQmsRelatedD42 .rsiQmsRelatedD42-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsRelatedD42 * {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsFaqM92,
.rsiQmsFaqM92 * {
  box-sizing: border-box;
}

.rsiQmsFaqM92 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 65px) 20px;
  background: #fff;
  color: #17385f;
  font-family: inherit;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-wrap {
  width: 100%;
  max-width: 1100px;
  min-width: 0;
  margin-inline: auto;
}

.rsiQmsFaqM92 h2 {
  margin: 0 0 30px;
  color: #17385f;
  font-size: clamp(27px, 3vw, 37px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.6px;
  text-align: center;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-list {
  display: grid;
  gap: 13px;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e3e9f1;
  border-radius: 13px;
  background: #fff;
  transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item[open] {
  border-color: #b9cde7;
  box-shadow: 0 7px 22px #17385f06;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item summary {
  position: relative;
  display: block;
  margin: 0;
  padding: 21px 65px 21px 23px;
  list-style: none;
  background: #fff;
  color: #17385f;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  cursor: pointer;
  overflow-wrap: anywhere;
  transition: background .3s ease, color .3s ease;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item summary::-webkit-details-marker {
  display: none;
}

/* Animated plus and minus */
.rsiQmsFaqM92 .rsiQmsFaqM92-item summary::before,
.rsiQmsFaqM92 .rsiQmsFaqM92-item summary::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 14px;
  height: 2px;
  border-radius: 3px;
  background: currentColor;
  transform: translateY(-50%);
  transition: transform .3s ease;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item summary::after {
  transform: translateY(-50%) rotate(90deg);
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item[open] summary::after {
  transform: translateY(-50%) rotate(0);
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item summary:hover {
  background: #e73d58;
  color: #fff;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item summary:focus-visible {
  outline: 3px solid #dca742;
  outline-offset: -4px;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-answer {
  padding: 0 23px;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-answer p {
  margin: 0;
  padding: 0 0 22px;
  color: #69778a;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
  text-align: left;
  overflow-wrap: anywhere;
}

.rsiQmsFaqM92 .rsiQmsFaqM92-item[open] .rsiQmsFaqM92-answer {
  animation: rsiFaqM92-reveal .35s ease both;
}

@keyframes rsiFaqM92-reveal {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Smooth accordion in supporting browsers */
@supports (interpolate-size: allow-keywords) {
  .rsiQmsFaqM92 .rsiQmsFaqM92-item {
    interpolate-size: allow-keywords;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-item::details-content {
    height: 0;
    overflow: hidden;
    transition:
      height .35s ease,
      content-visibility .35s allow-discrete;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-item[open]::details-content {
    height: auto;
  }
}

@media (max-width: 600px) {
  .rsiQmsFaqM92 {
    padding: 38px 16px;
  }

  .rsiQmsFaqM92 h2 {
    margin-bottom: 24px;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-item summary {
    padding: 17px 49px 17px 17px;
    font-size: 14px;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-item summary::before,
  .rsiQmsFaqM92 .rsiQmsFaqM92-item summary::after {
    right: 19px;
    width: 12px;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-answer {
    padding-inline: 17px;
  }

  .rsiQmsFaqM92 .rsiQmsFaqM92-answer p {
    padding-bottom: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiQmsFaqM92 *,
  .rsiQmsFaqM92 *::before,
  .rsiQmsFaqM92 *::after,
  .rsiQmsFaqM92 .rsiQmsFaqM92-item::details-content {
    animation: none !important;
    transition: none !important;
  }
}
.rsiQmsNavT82,
.rsiQmsNavT82 * {
    box-sizing: border-box;
}

.rsiQmsNavT82 {
    width: 100%;
    min-width: 0;
    padding: 24px 20px;
    background: #fff;
    font-family: inherit;
}

.rsiQmsNavT82 .rsiQmsNavT82-wrap {
    display: flex;
    align-items: stretch;
    gap: 14px;
    width: 100%;
    max-width: 1360px;
    min-width: 0;
    margin-inline: auto;
}

/* Navigation panel */
.rsiQmsNavT82 .rsiQmsNavT82-links {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: stretch;
    flex: 1;
    min-width: 0;
    margin: 0;
    padding: 7px;
    list-style: none;
    border: 1px solid #e4eaf2;
    border-radius: 16px;
    background: #f3f6fa;
}

.rsiQmsNavT82 .rsiQmsNavT82-links li {
    display: flex;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.rsiQmsNavT82 .rsiQmsNavT82-links a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 62px;
    padding: 13px 10px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    color: #60718a;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition:
        background .25s ease,
        color .25s ease,
        box-shadow .25s ease;
}

/* Small animated underline */
.rsiQmsNavT82 .rsiQmsNavT82-links a::after {
    content: "";
    position: absolute;
    bottom: 7px;
    left: calc(50% - 12px);
    width: 24px;
    height: 3px;
    border-radius: 5px;
    background: #efb648;
    transform: scaleX(0);
    transition: transform .3s ease;
}

.rsiQmsNavT82 .rsiQmsNavT82-links a:hover {
    background: #fff;
    color: #174b85;
    box-shadow: 0 4px 12px #17385f08;
}

.rsiQmsNavT82 .rsiQmsNavT82-links a:hover::after {
    transform: scaleX(1);
}

.rsiQmsNavT82 .rsiQmsNavT82-links a[aria-current="page"] {
    background: #173f72;
    color: #fff;
    box-shadow:
        inset 0 1px 0 #ffffff18,
        0 5px 12px #173f721c;
}

.rsiQmsNavT82 .rsiQmsNavT82-links a[aria-current="page"]::after {
    transform: scaleX(1);
}

/* Separate brochure button */
.rsiQmsNavT82 .rsiQmsNavT82-download {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 210px;
    gap: 12px;
    min-width: 0;
    max-width: 100%;
    padding: 17px;
    overflow: hidden;
    border: 1px solid #efbb56;
    border-radius: 16px;
    background: #fff4dc;
    color: #77551c;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.6;
    text-align: left;
    text-decoration: none;
    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

.rsiQmsNavT82 .rsiQmsNavT82-download svg {
    position: relative;
    z-index: 1;
    width: 25px;
    height: 25px;
    flex-shrink: 0;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
    animation: rsiNavT82v3-download 4s ease-in-out infinite;
}

.rsiQmsNavT82 .rsiQmsNavT82-download > span {
    position: relative;
    z-index: 1;
    max-width: 135px;
}

.rsiQmsNavT82 .rsiQmsNavT82-download::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -80%;
    width: 40%;
    height: 200%;
    background: linear-gradient(
        90deg, transparent, #ffffff90, transparent
    );
    transform: skewX(-20deg);
    pointer-events: none;
    animation: rsiNavT82v3-shine 8s ease-in-out infinite;
}

.rsiQmsNavT82 .rsiQmsNavT82-download:hover {
    border-color: #e73d58;
    background: #e73d58;
    color: #fff;
}

.rsiQmsNavT82 a:focus-visible {
    outline: 3px solid #2ca4bb;
    outline-offset: 3px;
}

@keyframes rsiNavT82v3-download {
    0%, 65%, 100% { transform: translateY(0); }
    80% { transform: translateY(3px); }
}

@keyframes rsiNavT82v3-shine {
    0%, 75% { left: -80%; }
    95%, 100% { left: 160%; }
}

/* Tablet */
@media (max-width: 1100px) {
    .rsiQmsNavT82 .rsiQmsNavT82-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-links a {
        min-height: 50px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-download {
        flex-basis: 190px;
    }
}

/* Mobile */
@media (max-width: 700px) {
    .rsiQmsNavT82 {
        padding: 18px 16px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-wrap {
        flex-direction: column;
        gap: 11px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-links {
        flex: none;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        padding: 6px;
        border-radius: 14px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-links a {
        min-height: 54px;
        padding: 12px 8px;
        font-size: 12px;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-download {
        flex: none;
        width: 100%;
        min-height: 54px;
        padding: 13px 18px;
        border-radius: 12px;
        text-align: center;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-download > span {
        max-width: none;
    }

    .rsiQmsNavT82 .rsiQmsNavT82-download svg {
        width: 21px;
        height: 21px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiQmsNavT82 *,
    .rsiQmsNavT82 *::before,
    .rsiQmsNavT82 *::after {
        animation: none !important;
        transition: none !important;
    }
}


















































.rsiExperienceQ28,
.rsiExperienceQ28 * {
  box-sizing: border-box;
}

.rsiExperienceQ28 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 6vw, 80px) 20px;
  background: #fff;
  font-family: inherit;
}

.rsiExperienceQ28 .rsiExperienceQ28-wrap {
  width: 100%;
  max-width: 1280px;
  min-width: 0;
  margin-inline: auto;
}

.rsiExperienceQ28 .rsiExperienceQ28-top {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: 35px;
  margin-bottom: 42px;
}

.rsiExperienceQ28 .rsiExperienceQ28-copy {
  min-width: 0;
}

.rsiExperienceQ28 .rsiExperienceQ28-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 19px;
  color: #6d859b;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.rsiExperienceQ28 .rsiExperienceQ28-eyebrow i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #2d78b4;
  box-shadow: 0 0 0 5px #2d78b410;
}

.rsiExperienceQ28 h2 {
    margin: 0 0 24px;
    color: #172f47;
    font-size: clamp(31px, 3.5vw, 58px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -2.1px;
}

.rsiExperienceQ28 h2 > span {
  display: block;
  margin-top: 4px;
  color: #2d78b4;
}

.rsiExperienceQ28 h2 > em {
  position: relative;
  display: inline-block;
  isolation: isolate;
  margin-top: 7px;
  font-style: normal;
}

.rsiExperienceQ28 h2 > em::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 9px;
  border-radius: 3px;
  background: #f5dfaf;
}

.rsiExperienceQ28 .rsiExperienceQ28-copy p {
  margin: 0;
  color: #657b90;
  font-size: 15px;
  line-height: 1.85;
}

/* Artboard */
.rsiExperienceQ28 .rsiExperienceQ28-art {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: 560px;
  aspect-ratio: 560 / 440;
  margin-inline: auto;
  container-type: inline-size;
}

/* Soft concentric rings */
.rsiExperienceQ28 .rsiExperienceQ28-rings {
  position: absolute;
  inset: 10% 9% 8%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, #edf7ff, transparent 70%);
}

.rsiExperienceQ28 .rsiExperienceQ28-rings i {
  position: absolute;
  inset: 5%;
  border: 1px solid #dbeaf6;
  border-radius: 50%;
  animation: rsiQ28-ripple 9s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-rings i:nth-child(2) {
  inset: 15%;
  animation-delay: -3s;
}

.rsiExperienceQ28 .rsiExperienceQ28-rings i:nth-child(3) {
  inset: 25%;
  animation-delay: -6s;
}

.rsiExperienceQ28 .rsiExperienceQ28-location {
  position: absolute;
  top: 2%;
  left: 20%;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid #e4edf5;
  border-radius: 30px;
  background: #fff;
  color: #7890a5;
  font-size: clamp(7px, 1.9cqi, 11px);
}

.rsiExperienceQ28 .rsiExperienceQ28-location i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #39ad91;
}

/* Upright kiosk: no rotation */
.rsiExperienceQ28 .rsiExperienceQ28-kioskWrap {
  position: absolute;
  z-index: 2;
  top: 12%;
  left: 30%;
  width: 39%;
  height: 80%;
}

.rsiExperienceQ28 .rsiExperienceQ28-kioskWrap::after {
  content: "";
  position: absolute;
  bottom: -1%;
  left: 12%;
  right: 12%;
  height: 5%;
  border-radius: 50%;
  background: #7899b529;
  filter: blur(7px);
}

.rsiExperienceQ28 .rsiExperienceQ28-kioskWrap img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom;
  filter: drop-shadow(7px 10px 10px #17385f13);
  animation: rsiQ28-kiosk 9s ease-in-out infinite;
}

/* Queue card */
.rsiExperienceQ28 .rsiExperienceQ28-queue {
  position: absolute;
  z-index: 3;
  top: 24%;
  left: 0;
  width: 29%;
  padding: 4% 3%;
  border: 1px solid #dae8f3;
  border-radius: 16px;
  background: linear-gradient(145deg, #fff, #fbfdff);
  box-shadow:
    0 5px 0 #eaf1f7,
    0 18px 30px #17385f0c;
  text-align: center;
  animation: rsiQ28-float 7s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-cardLabel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-bottom: 13px;
  color: #617e96;
  font-size: clamp(7px, 1.7cqi, 10px);
  letter-spacing: 1px;
}

.rsiExperienceQ28 .rsiExperienceQ28-cardLabel i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #31b28d;
  animation: rsiQ28-live 2.5s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-serving,
.rsiExperienceQ28 .rsiExperienceQ28-counter {
  color: #8a9cad;
  font-size: clamp(7px, 1.8cqi, 10px);
}

.rsiExperienceQ28 .rsiExperienceQ28-queue > strong {
  display: block;
  margin: 5px 0;
  color: #2d78b4;
  font-size: clamp(23px, 6.5cqi, 37px);
  font-weight: 500;
  line-height: 1.2;
}

.rsiExperienceQ28 .rsiExperienceQ28-divider {
  margin: 13px 0 9px;
  border-top: 1px dashed #d6e5f1;
}

.rsiExperienceQ28 .rsiExperienceQ28-queueRow {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 0;
  color: #7392ad;
  font-size: clamp(7px, 1.9cqi, 10px);
  animation: rsiQ28-row 5s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-queueRow:nth-last-child(2) {
  animation-delay: .5s;
}

.rsiExperienceQ28 .rsiExperienceQ28-queueRow:last-child {
  animation-delay: 1s;
}

.rsiExperienceQ28 .rsiExperienceQ28-queueRow > i {
  flex: 1;
  height: 3px;
  border-radius: 3px;
  background: #eaf2f9;
}

.rsiExperienceQ28 .rsiExperienceQ28-queueRow > small {
  font-size: inherit;
  color: #91a3b3;
}

/* Feedback card */
.rsiExperienceQ28 .rsiExperienceQ28-feedback {
  position: absolute;
  z-index: 3;
  top: 22%;
  right: 0;
  width: 29%;
  padding: 4% 2%;
  border: 1px solid #eee1c8;
  border-radius: 18px;
  background: linear-gradient(145deg, #fffefa, #fff6e4);
  box-shadow:
    0 5px 0 #f1e8d5,
    0 18px 28px #17385f0a;
  text-align: center;
  animation: rsiQ28-float 7s ease-in-out infinite;
  animation-delay: -3.5s;
}

.rsiExperienceQ28 .rsiExperienceQ28-feedbackTitle {
  color: #9a845d;
  font-size: clamp(7px, 1.9cqi, 11px);
}

.rsiExperienceQ28 .rsiExperienceQ28-face {
  position: relative;
  width: 56%;
  aspect-ratio: 1;
  margin: 14px auto 12px;
  border: 1px solid #e9b744;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 22%, #ffedb6, #f8c850 58%, #d99b28);
  box-shadow:
    inset 2px 3px 4px #fff4cb,
    inset -3px -5px 7px #b67c2526,
    0 5px 0 #d4a039,
    0 10px 12px #bb8a2920;
}

.rsiExperienceQ28 .rsiExperienceQ28-face i {
  position: absolute;
  top: 32%;
  left: 27%;
  width: 8%;
  height: 12%;
  border-radius: 50%;
  background: #6d4919;
  animation: rsiQ28-blink 6s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-face i:nth-child(2) {
  left: auto;
  right: 27%;
}

.rsiExperienceQ28 .rsiExperienceQ28-face b {
  position: absolute;
  top: 44%;
  left: 27%;
  width: 46%;
  height: 29%;
  border-bottom: 3px solid #6d4919;
  border-radius: 0 0 50% 50%;
}

.rsiExperienceQ28 .rsiExperienceQ28-stars {
  display: flex;
  justify-content: center;
  gap: 3px;
  margin: 8px 0;
}

.rsiExperienceQ28 .rsiExperienceQ28-stars span {
  color: #d8a137;
  font-size: clamp(11px, 3.3cqi, 19px);
  text-shadow: 0 2px 0 #bb872822;
  animation: rsiQ28-star 4s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-stars span:nth-child(2) {
  animation-delay: .2s;
}
.rsiExperienceQ28 .rsiExperienceQ28-stars span:nth-child(3) {
  animation-delay: .4s;
}
.rsiExperienceQ28 .rsiExperienceQ28-stars span:nth-child(4) {
  animation-delay: .6s;
}
.rsiExperienceQ28 .rsiExperienceQ28-stars span:nth-child(5) {
  animation-delay: .8s;
}

.rsiExperienceQ28 .rsiExperienceQ28-feedback small {
  display: block;
  color: #ab9774;
  font-size: clamp(6px, 1.6cqi, 9px);
  line-height: 1.5;
}

/* Animated confirmation */
.rsiExperienceQ28 .rsiExperienceQ28-notice {
  position: absolute;
  z-index: 4;
  bottom: 2%;
  right: 0;
  display: flex;
  align-items: center;
  gap: 9px;
  width: 43%;
  padding: 12px;
  border: 1px solid #e0eee8;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 25px #17385f09;
  animation: rsiQ28-notice 8s ease-in-out infinite;
}

.rsiExperienceQ28 .rsiExperienceQ28-notice > span {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: #e9f7f0;
  color: #32a17c;
}

.rsiExperienceQ28 .rsiExperienceQ28-notice strong {
  display: block;
  color: #456c61;
  font-size: clamp(8px, 2cqi, 11px);
  font-weight: 500;
}

.rsiExperienceQ28 .rsiExperienceQ28-notice small {
  display: block;
  margin-top: 3px;
  color: #94a49d;
  font-size: clamp(7px, 1.7cqi, 9px);
}

/* Services */
.rsiExperienceQ28 .rsiExperienceQ28-services {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.rsiExperienceQ28 .rsiExperienceQ28-services > a {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 21px;
  border: 1px solid #e4ebf2;
  border-radius: 14px;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 9px 24px #17385f09;
  transition: transform .3s, background .3s, box-shadow .3s;
}

.rsiExperienceQ28 .rsiExperienceQ28-serviceTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 22px;
}

.rsiExperienceQ28 .rsiExperienceQ28-icon {
  display: grid;
  place-items: center;
  width: 45px;
  height: 45px;
  border-radius: 13px;
  background: #edf5fc;
  color: #2d78b4;
  box-shadow: 0 3px 0 #e3edf6;
}

.rsiExperienceQ28 .rsiExperienceQ28-icon svg {
  width: 27px;
  height: 27px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiExperienceQ28 .rsiExperienceQ28-index {
  color: #a6b9ca;
  font-size: 12px;
}

.rsiExperienceQ28 h3 {
  margin: 0 0 14px;
  color: #173b5f;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.4;
  transition: color .3s;
}

.rsiExperienceQ28 .rsiExperienceQ28-services p {
  margin: 0 0 24px;
  color: #687e92;
  font-size: 14px;
  line-height: 1.75;
  transition: color .3s;
}

.rsiExperienceQ28 .rsiExperienceQ28-arrow {
  align-self: flex-start;
  margin-top: auto;
  color: #2d78b4;
  font-size: 25px;
  transition: transform .3s, color .3s;
}

.rsiExperienceQ28 .rsiExperienceQ28-services > a:first-child,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover {
  background: #2d78b4;
}

.rsiExperienceQ28 .rsiExperienceQ28-services > a:first-child h3,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:first-child p,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:first-child .rsiExperienceQ28-arrow,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover h3,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover p,
.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover .rsiExperienceQ28-arrow {
  color: #fff;
}

.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 30px #17385f18;
}

.rsiExperienceQ28 .rsiExperienceQ28-services > a:hover
.rsiExperienceQ28-arrow {
  transform: translate(3px, -3px);
}

.rsiExperienceQ28 a:focus-visible {
  outline: 3px solid #dba83e;
  outline-offset: 4px;
}

/* Animations */
@keyframes rsiQ28-ripple {
  0%, 100% { transform: scale(.94); opacity: .35; }
  50% { transform: scale(1.04); opacity: 1; }
}
@keyframes rsiQ28-kiosk {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
@keyframes rsiQ28-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
@keyframes rsiQ28-live {
  0%, 100% { box-shadow: 0 0 0 0 #31b28d20; }
  50% { box-shadow: 0 0 0 4px #31b28d05; }
}
@keyframes rsiQ28-row {
  0%, 70%, 100% { opacity: .6; }
  35% { opacity: 1; }
}
@keyframes rsiQ28-blink {
  0%, 43%, 49%, 100% { transform: scaleY(1); }
  46% { transform: scaleY(.15); }
}
@keyframes rsiQ28-star {
  0%, 65%, 100% { transform: scale(1); opacity: .6; }
  30% { transform: translateY(-3px) scale(1.12); opacity: 1; }
}
@keyframes rsiQ28-notice {
  0%, 100% { transform: translateY(3px); }
  50% { transform: translateY(-3px); }
}

/* Responsive */
@media (max-width: 1100px) {
  .rsiExperienceQ28 .rsiExperienceQ28-services {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 850px) {
  .rsiExperienceQ28 .rsiExperienceQ28-top {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-services {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .rsiExperienceQ28 {
    padding: 35px 16px;
  }

  .rsiExperienceQ28 h2 {
    letter-spacing: -.7px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-copy p {
    font-size: 14px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-services {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-queue,
  .rsiExperienceQ28 .rsiExperienceQ28-feedback {
    border-radius: 11px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-notice {
    padding: 8px;
    gap: 6px;
  }

  .rsiExperienceQ28 .rsiExperienceQ28-notice > span {
    width: 23px;
    height: 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiExperienceQ28 *,
  .rsiExperienceQ28 *::before,
  .rsiExperienceQ28 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiAiAgentsM46,
.rsiAiAgentsM46 * {
  box-sizing: border-box;
}

.rsiAiAgentsM46 {
  width: 100%;
  min-width: 0;
  padding: clamp(40px, 5vw, 70px) 20px;
  background: #f6f7fa;
  font-family: inherit;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-intro {
  max-width: 900px;
  margin: 0 auto 32px;
  text-align: center;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  color: #7a85a0;
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-label i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #8c71cc;
  box-shadow: 0 0 0 5px #8c71cc10;
}

.rsiAiAgentsM46 h2 {
  margin: 0 0 15px;
  color: #17385f;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.7px;
}

.rsiAiAgentsM46 h2 > span {
  color: #2d78b4;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-intro p {
  margin: 0;
  color: #6d7b8e;
  font-size: 15px;
  line-height: 1.8;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

/* White cards with individual accents */
.rsiAiAgentsM46 .rsiAiAgentsM46-card {
  --agent-color: #447fba;
  --agent-soft: #eaf3fc;
  --agent-delay: 0s;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 20px;
  overflow: hidden;
  border: 1px solid #e5eaf2;
  border-radius: 19px;
  background: #fff;
  text-align: center;
  box-shadow: 0 7px 20px #17385f04;
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card:nth-child(2) {
  --agent-color: #8a69c4;
  --agent-soft: #f2edfc;
  --agent-delay: -1.5s;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card:nth-child(3) {
  --agent-color: #289d9a;
  --agent-soft: #eaf8f5;
  --agent-delay: -3s;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card:nth-child(4) {
  --agent-color: #b18a3b;
  --agent-soft: #fff6e7;
  --agent-delay: -4.5s;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  right: 25%;
  height: 3px;
  border-radius: 4px;
  background: var(--agent-color);
  transform: scaleX(.3);
  transition: transform .35s ease;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card:hover {
  transform: translateY(-6px);
  border-color: var(--agent-color);
  box-shadow: 0 17px 30px #17385f0c;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card:hover::after {
  transform: scaleX(1);
}

/* Robot illustration area */
.rsiAiAgentsM46 .rsiAiAgentsM46-visual {
  position: relative;
  display: grid;
  place-items: center;
  height: 155px;
  margin-bottom: 19px;
  overflow: hidden;
  border-radius: 13px;
  background: radial-gradient(
    circle at center, var(--agent-soft), #fff 75%
  );
}

.rsiAiAgentsM46 .rsiAiAgentsM46-orbit {
  position: absolute;
  width: 120px;
  height: 120px;
  border: 1px dashed var(--agent-color);
  border-radius: 50%;
  opacity: .18;
  animation: rsiAgentM46-orbit 35s linear infinite;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-robot {
  position: relative;
  width: 105px;
  height: 105px;
  animation: rsiAgentM46-float 6s ease-in-out infinite;
  animation-delay: var(--agent-delay);
}

.rsiAiAgentsM46 .rsiAiAgentsM46-robot::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 25%;
  right: 25%;
  height: 7px;
  border-radius: 50%;
  background: var(--agent-color);
  opacity: .12;
  filter: blur(4px);
}

.rsiAiAgentsM46 .rsiAiAgentsM46-robot svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: #fff;
  stroke: var(--agent-color);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(3px 5px 0 var(--agent-soft));
}

.rsiAiAgentsM46 .rsiAiAgentsM46-robot .rsiAiAgentsM46-head,
.rsiAiAgentsM46 .rsiAiAgentsM46-robot .rsiAiAgentsM46-body {
  fill: #f8fbff;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-robot .rsiAiAgentsM46-face {
  fill: var(--agent-soft);
}

.rsiAiAgentsM46 .rsiAiAgentsM46-eyes {
  stroke-width: 4;
  transform-box: fill-box;
  transform-origin: center;
  animation: rsiAgentM46-blink 6s ease-in-out infinite;
  animation-delay: var(--agent-delay);
}

/* Floating mini tiles */
.rsiAiAgentsM46 .rsiAiAgentsM46-mini {
  position: absolute;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid #edf0f5;
  border-radius: 9px;
  background: #fff;
  color: var(--agent-color);
  font-size: 17px;
  box-shadow: 0 5px 10px #17385f08;
  animation: rsiAgentM46-float 5s ease-in-out infinite;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-miniOne {
  top: 23px;
  right: 14%;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-miniTwo {
  bottom: 24px;
  left: 12%;
  animation-delay: -2.5s;
}

.rsiAiAgentsM46 h3 {
  margin: 0 0 13px;
  color: #233e5e;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.35;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-card > p {
  margin: 0 0 25px;
  color: #718095;
  font-size: 14px;
  line-height: 1.75;
}

/* Full-width card button */
.rsiAiAgentsM46 .rsiAiAgentsM46-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 45px;
  margin-top: auto;
  padding: 11px 15px;
  border: 1px solid #e4eaf2;
  border-radius: 10px;
  background: #fff;
  color: var(--agent-color);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  transition:
    background .3s ease,
    border-color .3s ease,
    color .3s ease;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-button > span {
  font-size: 20px;
  transition: transform .3s ease;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-button:hover {
  background: var(--agent-color);
  border-color: var(--agent-color);
  color: #fff;
}

.rsiAiAgentsM46 .rsiAiAgentsM46-button:hover > span {
  transform: translate(2px, -2px);
}

.rsiAiAgentsM46 a:focus-visible {
  outline: 3px solid var(--agent-color);
  outline-offset: 4px;
}

@keyframes rsiAgentM46-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes rsiAgentM46-blink {
  0%, 43%, 49%, 100% { transform: scaleY(1); }
  46% { transform: scaleY(.1); }
}

@keyframes rsiAgentM46-orbit {
  to { transform: rotate(360deg); }
}

@media (max-width: 1000px) {
  .rsiAiAgentsM46 .rsiAiAgentsM46-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 550px) {
  .rsiAiAgentsM46 {
    padding: 38px 16px;
  }

  .rsiAiAgentsM46 .rsiAiAgentsM46-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .rsiAiAgentsM46 .rsiAiAgentsM46-visual {
    height: 145px;
  }

  .rsiAiAgentsM46 .rsiAiAgentsM46-intro p {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiAiAgentsM46 *,
  .rsiAiAgentsM46 *::before,
  .rsiAiAgentsM46 *::after {
    animation: none !important;
    transition: none !important;
  }
}
.rsiServicesV92,
.rsiServicesV92 * {
  box-sizing: border-box;
}

.rsiServicesV92 {
  --service-blue: #2d78b4;
  width: 100%;
  min-width: 0;
  padding: clamp(42px, 6vw, 80px) 20px;
  background: #fff;
  color: #172330;
  font-family: inherit;
}

.rsiServicesV92 .rsiServicesV92-wrap {
  width: 100%;
  max-width: 1240px;
  min-width: 0;
  margin-inline: auto;
}

/* Section introduction */
.rsiServicesV92 .rsiServicesV92-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 32px;
}

.rsiServicesV92 .rsiServicesV92-line {
  display: block;
  width: 52px;
  height: 3px;
  margin-bottom: 14px;
  border-radius: 4px;
  background: var(--service-blue);
  transform-origin: left;
  animation: rsiV92-line 6s ease-in-out infinite;
}

.rsiServicesV92 h2 {
  margin: 0;
  color: #172330;
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -1px;
}

.rsiServicesV92 .rsiServicesV92-intro > p {
  margin: 0 0 4px;
  color: #6c7b8b;
  font-size: 16px;
  line-height: 1.6;
}

/* Three cards per row */
.rsiServicesV92 .rsiServicesV92-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 23px;
}

.rsiServicesV92 .rsiServicesV92-card {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 29px;
  overflow: hidden;
  border: 1px solid #e4eaf1;
  border-radius: 18px;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 6px 20px #17233004;
  transition:
    transform .35s ease,
    border-color .35s ease,
    box-shadow .35s ease;
}

/* Blue background slides in on hover */
.rsiServicesV92 .rsiServicesV92-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: #246ba5;
  transform: translateY(101%);
  transition: transform .45s cubic-bezier(.2,.7,.2,1);
}

.rsiServicesV92 .rsiServicesV92-card:hover,
.rsiServicesV92 .rsiServicesV92-card:focus-visible {
  transform: translateY(-5px);
  border-color: #246ba5;
  box-shadow: 0 18px 35px #17385f15;
}

.rsiServicesV92 .rsiServicesV92-card:hover::before,
.rsiServicesV92 .rsiServicesV92-card:focus-visible::before {
  transform: translateY(0);
}

.rsiServicesV92 .rsiServicesV92-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 24px;
}

/* Raised custom icon */
.rsiServicesV92 .rsiServicesV92-icon {
  display: grid;
  place-items: center;
  width: 67px;
  height: 67px;
  border: 1px solid #e8f0f7;
  border-radius: 19px;
  background: linear-gradient(145deg, #fff, #e9f3fc);
  color: #2d78b4;
  box-shadow:
    0 4px 0 #e3edf6,
    0 9px 14px #17385f07;
}

.rsiServicesV92 .rsiServicesV92-icon svg {
  display: block;
  width: 38px;
  height: 38px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rsiServicesV92 .rsiServicesV92-number {
  color: #c4ced9;
  font-size: 25px;
  font-weight: 500;
  line-height: 1;
  transition: color .35s ease;
}

.rsiServicesV92 h3 {
  margin: 0 0 15px;
  color: #172330;
  font-size: 23px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -.4px;
  transition: color .35s ease;
}

.rsiServicesV92 .rsiServicesV92-card > p {
  margin: 0 0 26px;
  color: #6c7b8b;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: anywhere;
  transition: color .35s ease;
}

.rsiServicesV92 .rsiServicesV92-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid #edf0f4;
    color: #000000;
    font-size: 14px;
    font-weight: 600;
  transition: color .35s ease, border-color .35s ease;
}

.rsiServicesV92 .rsiServicesV92-bottom i {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #e1eaf3;
  border-radius: 50%;
  color: #2d78b4;
  font-size: 21px;
  font-style: normal;
  transition:
    transform .35s ease,
    background .35s ease,
    border-color .35s ease,
    color .35s ease;
}

.rsiServicesV92 .rsiServicesV92-card:hover h3,
.rsiServicesV92 .rsiServicesV92-card:focus-visible h3 {
  color: #fff;
}

.rsiServicesV92 .rsiServicesV92-card:hover > p,
.rsiServicesV92 .rsiServicesV92-card:focus-visible > p {
  color: #e0edf8;
}

.rsiServicesV92 .rsiServicesV92-card:hover .rsiServicesV92-number,
.rsiServicesV92 .rsiServicesV92-card:focus-visible .rsiServicesV92-number {
  color: #ffffff70;
}

.rsiServicesV92 .rsiServicesV92-card:hover .rsiServicesV92-bottom,
.rsiServicesV92 .rsiServicesV92-card:focus-visible .rsiServicesV92-bottom {
  color: #fff;
  border-color: #ffffff25;
}

.rsiServicesV92 .rsiServicesV92-card:hover .rsiServicesV92-bottom i,
.rsiServicesV92 .rsiServicesV92-card:focus-visible .rsiServicesV92-bottom i {
  transform: rotate(8deg);
  border-color: #fff;
  background: #fff;
  color: #246ba5;
}

.rsiServicesV92 .rsiServicesV92-card:focus-visible {
  outline: 3px solid #172330;
  outline-offset: 4px;
}

/* Individual CSS icon animations */
.rsiServicesV92 .rsiServicesV92-cursor {
  animation: rsiV92-cursor 5s ease-in-out infinite;
}

.rsiServicesV92 .rsiServicesV92-code {
  animation: rsiV92-pulse 4s ease-in-out infinite;
}

.rsiServicesV92 .rsiServicesV92-print {
  animation: rsiV92-print 4s ease-in-out infinite;
}

.rsiServicesV92 .rsiServicesV92-module {
  animation: rsiV92-pulse 4s ease-in-out infinite;
  animation-delay: -2s;
}

.rsiServicesV92 .rsiServicesV92-apps {
  animation: rsiV92-print 5s ease-in-out infinite;
}

.rsiServicesV92 .rsiServicesV92-waves {
  animation: rsiV92-pulse 3s ease-in-out infinite;
}

@keyframes rsiV92-line {
  0%, 100% { transform: scaleX(.7); }
  50% { transform: scaleX(1); }
}

@keyframes rsiV92-cursor {
  0%, 100% { transform: translate(0, 0); }
  50% { transform: translate(-3px, -3px); }
}

@keyframes rsiV92-pulse {
  0%, 100% { opacity: .4; }
  50% { opacity: 1; }
}

@keyframes rsiV92-print {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(2px); }
}

/* Tablet */
@media (max-width: 1000px) {
  .rsiServicesV92 .rsiServicesV92-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .rsiServicesV92 .rsiServicesV92-card {
    padding: 25px;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .rsiServicesV92 {
    padding: 38px 16px;
  }

  .rsiServicesV92 .rsiServicesV92-intro {
    gap: 12px;
    margin-bottom: 25px;
  }

  .rsiServicesV92 .rsiServicesV92-intro > p {
    font-size: 14px;
  }

  .rsiServicesV92 .rsiServicesV92-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .rsiServicesV92 .rsiServicesV92-card {
    padding: 24px;
  }

  .rsiServicesV92 h3 {
    font-size: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rsiServicesV92 *,
  .rsiServicesV92 *::before,
  .rsiServicesV92 *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ===== RSI PURE CSS TABS — C97 ===== */

.rsiC97 {
    --c97-blue: #2879bc;
    --c97-dark: #182431;
    --c97-text: #637080;
    --c97-line: #e2e9f0;
    padding: clamp(38px, 6vw, 75px) 18px;
    background: #f5f7fa;
    color: var(--c97-dark);
    font-family: inherit;
}

.rsiC97,
.rsiC97 *,
.rsiC97 *::before,
.rsiC97 *::after {
    box-sizing: border-box;
}

.rsiC97-wrap {
    max-width: 1240px;
    margin: auto;
    min-width: 0;
}

.rsiC97-intro {
    margin-bottom: 28px;
}

.rsiC97-intro > span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 11px;
    color: var(--c97-blue);
    font-size: 12px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.rsiC97-intro > span::before {
    content: "";
    width: 30px;
    height: 3px;
    background: var(--c97-blue);
    border-radius: 3px;
    transform-origin: left;
    animation: c97Line 4s ease-in-out infinite;
}

.rsiC97-intro h2 {
    margin: 0;
    font-size: clamp(29px, 3.5vw, 43px);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: -.8px;
}

/* Accessible native CSS controls */

.rsiC97-choice {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

/* Tabs contain text only */

.rsiC97-menu {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    padding: 9px;
    margin-bottom: 22px;
    border: 1px solid var(--c97-line);
    border-radius: 17px;
    background: #fff;
}

.rsiC97-menu label {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 55px;
    padding: 13px 10px;
    border: 1px solid transparent;
    border-radius: 11px;
    color: #617080;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
    cursor: pointer;
    transition:
        background .25s ease,
        color .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.rsiC97-menu label:hover {
    background: #eef5fc;
    color: var(--c97-blue);
}

#rsiC97-1:checked ~ .rsiC97-menu label[for="rsiC97-1"],
#rsiC97-2:checked ~ .rsiC97-menu label[for="rsiC97-2"],
#rsiC97-3:checked ~ .rsiC97-menu label[for="rsiC97-3"],
#rsiC97-4:checked ~ .rsiC97-menu label[for="rsiC97-4"],
#rsiC97-5:checked ~ .rsiC97-menu label[for="rsiC97-5"],
#rsiC97-6:checked ~ .rsiC97-menu label[for="rsiC97-6"] {
    background: var(--c97-blue);
    border-color: var(--c97-blue);
    color: #fff;
    box-shadow: 0 6px 16px rgb(40 121 188 / 20%);
}

#rsiC97-1:focus-visible ~ .rsiC97-menu label[for="rsiC97-1"],
#rsiC97-2:focus-visible ~ .rsiC97-menu label[for="rsiC97-2"],
#rsiC97-3:focus-visible ~ .rsiC97-menu label[for="rsiC97-3"],
#rsiC97-4:focus-visible ~ .rsiC97-menu label[for="rsiC97-4"],
#rsiC97-5:focus-visible ~ .rsiC97-menu label[for="rsiC97-5"],
#rsiC97-6:focus-visible ~ .rsiC97-menu label[for="rsiC97-6"] {
    outline: 3px solid #8bbce4;
    outline-offset: 3px;
}

/* CSS panel switching */

.rsiC97-panel {
    display: none;
    min-width: 0;
    padding: clamp(23px, 3.5vw, 42px);
    border: 1px solid var(--c97-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 15px 40px rgb(23 45 67 / 4%);
}

#rsiC97-1:checked ~ .rsiC97-panels .rsiC97-panel--1,
#rsiC97-2:checked ~ .rsiC97-panels .rsiC97-panel--2,
#rsiC97-3:checked ~ .rsiC97-panels .rsiC97-panel--3,
#rsiC97-4:checked ~ .rsiC97-panels .rsiC97-panel--4,
#rsiC97-5:checked ~ .rsiC97-panels .rsiC97-panel--5,
#rsiC97-6:checked ~ .rsiC97-panels .rsiC97-panel--6 {
    display: block;
    animation: c97Reveal .5s ease both;
}

.rsiC97-feature {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(230px, 340px);
    gap: 30px;
    align-items: center;
    margin-bottom: 25px;
    padding-bottom: 26px;
    border-bottom: 1px solid #edf1f5;
}

.rsiC97-feature > div {
    min-width: 0;
}

.rsiC97-kicker {
    display: block;
    margin-bottom: 11px;
    color: var(--c97-blue);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.rsiC97 h3 {
    margin: 0 0 17px;
    font-size: clamp(24px, 2.8vw, 33px);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.5px;
}

.rsiC97 p {
    margin: 0 0 19px;
    color: var(--c97-text);
    font-size: 15px;
    line-height: 1.9;
    overflow-wrap: anywhere;
}

.rsiC97 p:last-child {
    margin-bottom: 0;
}

.rsiC97 h4 {
    margin: 26px 0 17px;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.5;
}

.rsiC97 a {
    color: var(--c97-blue);
    text-underline-offset: 4px;
}

.rsiC97 strong {
    font-weight: 500;
}

.rsiC97-lead {
    padding: 17px 20px;
    border-left: 3px solid var(--c97-blue);
    border-radius: 0 11px 11px 0;
    background: #f1f6fc;
    color: #36526e !important;
}

/* Bullets */

.rsiC97-list {
    display: grid;
    gap: 10px;
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}

.rsiC97-list > li {
    position: relative;
    min-width: 0;
    padding: 13px 17px 13px 40px;
    border: 1px solid #e6edf4;
    border-radius: 11px;
    background: #f9fbfd;
    color: #5e6d7c;
    font-size: 14px;
    line-height: 1.85;
    overflow-wrap: anywhere;
    transition: background .25s ease, border-color .25s ease;
}

.rsiC97-list > li::before {
    content: "";
    position: absolute;
    left: 17px;
    top: 21px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--c97-blue);
    box-shadow: 0 0 0 4px #e6f0f9;
}

.rsiC97-list > li:hover {
    background: #f0f6fc;
    border-color: #c9dff1;
}

.rsiC97-list ul {
    display: grid;
    gap: 7px;
    margin: 12px 0 0;
    padding-left: 20px;
    list-style: disc;
}

.rsiC97-list ul li::marker {
    color: var(--c97-blue);
}

.rsiC97-categories,
.rsiC97-list--two {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
}

.rsiC97-categories {
    margin: 24px 0;
    align-items: start;
}

.rsiC97-category {
    min-width: 0;
    padding: 21px;
    border: 1px solid var(--c97-line);
    border-radius: 15px;
}

.rsiC97-category h4 {
    margin: 0 0 17px;
    padding-left: 12px;
    border-left: 3px solid var(--c97-blue);
    font-size: 17px;
}

.rsiC97-category .rsiC97-list {
    margin: 0;
}

.rsiC97-category .rsiC97-list > li {
    padding: 0 0 0 20px;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 13px;
}

.rsiC97-category .rsiC97-list > li::before {
    left: 1px;
    top: 9px;
    width: 5px;
    height: 5px;
    box-shadow: none;
}

/* Buttons and contact */

.rsiC97-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 24px 0;
}

.rsiC97-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    min-height: 48px;
    padding: 13px 20px;
    border: 1px solid var(--c97-blue);
    border-radius: 10px;
    background: var(--c97-blue);
    color: #fff !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: transform .25s ease, background .25s ease;
}

.rsiC97-btn::after {
    content: "↗";
    font-size: 19px;
}

.rsiC97-btn--outline {
    background: #fff;
    color: var(--c97-blue) !important;
}

.rsiC97-btn:hover {
    transform: translateY(-3px);
    background: #1b5c91;
    color: #fff !important;
}

.rsiC97-address {
    padding: 22px;
    border: 1px solid #e1eaf3;
    border-radius: 14px;
    background: #f4f8fc;
}

.rsiC97-address p {
    margin: 0;
    font-size: 14px;
    line-height: 2;
}

/* =========================================
   CSS ILLUSTRATIONS — NO IMAGE DEPENDENCIES
   ========================================= */

.rsiC97-art {
    position: relative;
    width: 100%;
    max-width: 340px;
    aspect-ratio: 340 / 230;
    margin-inline: auto;
    overflow: hidden;
    border: 1px solid #e2ebf4;
    border-radius: 22px;
    background:
        radial-gradient(circle at 75% 22%, #e3effb, transparent 48%),
        linear-gradient(140deg, #f9fcff, #edf3f9);
    container-type: inline-size;
}

.rsiC97-art::before {
    content: "";
    position: absolute;
    width: 65%;
    aspect-ratio: 1;
    left: 17.5%;
    top: 4%;
    border: 1px solid #d9e6f3;
    border-radius: 50%;
    box-shadow: 0 0 0 22px rgb(255 255 255 / 40%);
}

.rsiC97-art::after {
    content: "";
    position: absolute;
    left: 19%;
    right: 19%;
    bottom: 12%;
    height: 7%;
    border-radius: 50%;
    background: #bfcede;
    filter: blur(9px);
    opacity: .38;
}

.rsiC97-artTag {
    position: absolute;
    z-index: 4;
    left: 7%;
    bottom: 8%;
    padding: 7px 11px;
    border: 1px solid #e1eaf3;
    border-radius: 8px;
    background: #fff;
    color: #41617e;
    font-size: clamp(9px, 3cqw, 11px);
    box-shadow: 0 5px 15px rgb(42 70 98 / 7%);
}

/* 1: Company / team illustration */

.rsiC97-office {
    position: absolute;
    z-index: 1;
    left: 25%;
    top: 15%;
    width: 50%;
    height: 59%;
    padding: 12%;
    border: 1px solid #c6dcec;
    border-radius: 11px 11px 0 0;
    background: linear-gradient(120deg, #fff, #dceaf6);
    box-shadow: 8px 8px 0 #d1e0ee;
}

.rsiC97-windows {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    height: 100%;
}

.rsiC97-windows i {
    border-radius: 3px;
    background: #7ba9cf;
    animation: c97Window 4s ease-in-out infinite;
}

.rsiC97-windows i:nth-child(2n) {
    animation-delay: -2s;
}

.rsiC97-person {
    position: absolute;
    z-index: 3;
    bottom: 20%;
    width: 13%;
    height: 29%;
    border-radius: 45% 45% 13% 13%;
    background: linear-gradient(100deg, #5495ca, #246ba5);
    box-shadow: 4px 4px 0 #d1e0ee;
    animation: c97Float 5s ease-in-out infinite;
}

.rsiC97-person::before {
    content: "";
    position: absolute;
    top: -40%;
    left: 19%;
    width: 62%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #ecc5a7;
    box-shadow: inset 0 5px 0 #334a61;
}

.rsiC97-person--a {
    left: 20%;
}

.rsiC97-person--b {
    left: 44%;
    bottom: 16%;
    background: linear-gradient(100deg, #5a718b, #273d55);
    animation-delay: -1.5s;
}

.rsiC97-person--c {
    right: 19%;
    background: linear-gradient(100deg, #9ab5d0, #638bb2);
    animation-delay: -3s;
}

/* 2: Connected business modules */

.rsiC97-hub {
    position: absolute;
    z-index: 3;
    top: 30%;
    left: 36%;
    display: grid;
    place-items: center;
    width: 28%;
    aspect-ratio: 1;
    border: 5px solid #fff;
    border-radius: 22%;
    background: linear-gradient(140deg, #5c9ed4, #2569a3);
    color: #fff;
    font-size: clamp(12px, 5cqw, 19px);
    font-weight: 500;
    box-shadow: 0 7px 0 #c1d5e7, 0 12px 22px #cfdeeb;
    animation: c97Float 5s ease-in-out infinite;
}

.rsiC97-module {
    position: absolute;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 28%;
    height: 22%;
    border: 1px solid #d7e5f1;
    border-radius: 11px;
    background: #fff;
    color: #526d88;
    font-size: clamp(9px, 3.1cqw, 12px);
    box-shadow: 0 5px 0 #e0eaf3;
    animation: c97Float 5s ease-in-out infinite;
}

.rsiC97-module--a { left: 7%; top: 13%; }
.rsiC97-module--b { right: 7%; top: 13%; animation-delay: -1s; }
.rsiC97-module--c { left: 7%; bottom: 19%; animation-delay: -2s; }
.rsiC97-module--d { right: 7%; bottom: 19%; animation-delay: -3s; }

.rsiC97-connect {
    position: absolute;
    z-index: 1;
    top: 25%;
    left: 21%;
    width: 58%;
    height: 40%;
    border: 2px dashed #a9c7e2;
    border-radius: 30%;
    animation: c97Connect 4s ease-in-out infinite;
}

/* 3: Queue ticket machine */

.rsiC97-machine {
    position: absolute;
    z-index: 2;
    left: 18%;
    top: 15%;
    width: 31%;
    height: 63%;
    border: 1px solid #d6e2ee;
    border-radius: 13px 13px 6px 6px;
    background: linear-gradient(100deg, #fff, #dfebf5);
    box-shadow: 7px 6px 0 #cad9e8;
}

.rsiC97-machine::before {
    content: "";
    position: absolute;
    left: 12%;
    right: 12%;
    top: 10%;
    height: 37%;
    border: 5px solid #263b50;
    border-radius: 7px;
    background: linear-gradient(135deg, #74b4e2, #2e76ac);
}

.rsiC97-machine::after {
    content: "";
    position: absolute;
    left: 24%;
    right: 24%;
    top: 58%;
    height: 5px;
    border-radius: 4px;
    background: #354d64;
}

.rsiC97-ticket {
    position: absolute;
    z-index: 4;
    top: 53%;
    left: 27%;
    display: grid;
    place-content: center;
    width: 16%;
    height: 21%;
    border: 1px solid #d9e4ef;
    border-radius: 0 0 4px 4px;
    background: #fff;
    color: var(--c97-blue);
    font-size: clamp(10px, 3.6cqw, 14px);
    box-shadow: 0 4px 9px #cbd9e8;
    animation: c97Ticket 4s ease-in-out infinite;
}

.rsiC97-queueBoard {
    position: absolute;
    z-index: 3;
    right: 9%;
    top: 25%;
    width: 39%;
    padding: 10px;
    border: 1px solid #dce7f1;
    border-radius: 11px;
    background: #fff;
    box-shadow: 0 7px 18px rgb(39 75 107 / 10%);
    animation: c97Float 5s ease-in-out infinite;
}

.rsiC97-queueBoard span {
    display: block;
    padding: 6px 3px;
    color: #667e94;
    font-size: clamp(8px, 3cqw, 11px);
    border-bottom: 1px solid #edf2f7;
}

.rsiC97-queueBoard b {
    display: block;
    padding: 7px 3px;
    color: var(--c97-blue);
    font-size: clamp(13px, 5cqw, 19px);
    font-weight: 500;
}

.rsiC97-queueBoard span:last-child {
    border-bottom: 0;
    animation: c97Window 3s ease-in-out infinite;
}

/* 4: Performance dashboard */

.rsiC97-dashboard {
    position: absolute;
    z-index: 2;
    inset: 15% 10% 22%;
    border: 5px solid #fff;
    border-radius: 12px;
    background: #f7fbff;
    box-shadow: 0 7px 0 #c5d7e8, 0 14px 25px #d5e2ed;
}

.rsiC97-dashboard::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 17%;
    border-bottom: 1px solid #dfeaf4;
    border-radius: 7px 7px 0 0;
    background:
        radial-gradient(circle at 6% 50%, #8facca 2px, transparent 3px),
        radial-gradient(circle at 11% 50%, #a8c1d8 2px, transparent 3px),
        radial-gradient(circle at 16% 50%, #c0d3e5 2px, transparent 3px),
        #edf4fb;
}

.rsiC97-bars {
    position: absolute;
    display: flex;
    align-items: flex-end;
    gap: 11%;
    left: 8%;
    bottom: 13%;
    width: 43%;
    height: 58%;
    border-bottom: 1px solid #ccddec;
}

.rsiC97-bars i {
    flex: 1;
    height: 45%;
    border-radius: 4px 4px 0 0;
    background: linear-gradient(#65a3d3, #2879bc);
    transform-origin: bottom;
    animation: c97Bars 4s ease-in-out infinite;
}

.rsiC97-bars i:nth-child(2) {
    height: 72%;
    animation-delay: -.6s;
}

.rsiC97-bars i:nth-child(3) {
    height: 58%;
    animation-delay: -1.2s;
}

.rsiC97-bars i:nth-child(4) {
    height: 95%;
    animation-delay: -1.8s;
}

.rsiC97-donut {
    position: absolute;
    right: 8%;
    top: 32%;
    width: 29%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: conic-gradient(#2879bc 0 68%, #abcce7 68% 85%, #e2edf6 85%);
    animation: c97Donut 6s ease-in-out infinite;
}

.rsiC97-donut::after {
    content: "KPI";
    position: absolute;
    inset: 23%;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #4d7193;
    font-size: clamp(9px, 3.1cqw, 12px);
}

/* 5: Interactive kiosk */

.rsiC97-kiosk {
    position: absolute;
    z-index: 3;
    left: 35%;
    top: 12%;
    width: 30%;
    height: 68%;
    border: 1px solid #d2dfeb;
    border-radius: 11px 11px 5px 5px;
    background: linear-gradient(100deg, #fff 12%, #edf4fa 65%, #cbdcea);
    box-shadow: 7px 5px 0 #c6d6e5;
    animation: c97Float 6s ease-in-out infinite;
}

.rsiC97-kiosk::before {
    content: "";
    position: absolute;
    left: -6%;
    right: -6%;
    top: 4%;
    height: 36%;
    border: 6px solid #26394c;
    border-radius: 8px;
    background:
        linear-gradient(#b5daef, #b5daef) 23% 30% / 49% 7% no-repeat,
        linear-gradient(#d2e9f8, #d2e9f8) 23% 50% / 59% 7% no-repeat,
        linear-gradient(#7bb5df, #7bb5df) 23% 73% / 35% 12% no-repeat,
        #eaf6fe;
}

.rsiC97-kiosk::after {
    content: "";
    position: absolute;
    left: -21%;
    right: -21%;
    bottom: -5%;
    height: 9%;
    border-radius: 50% 50% 6px 6px;
    background: linear-gradient(#dbe6ef, #b9cbdc);
}

.rsiC97-kioskSlot {
    position: absolute;
    left: 27%;
    right: 27%;
    top: 56%;
    height: 5%;
    border-radius: 4px;
    background: #36506a;
}

.rsiC97-kioskSlot::after {
    content: "";
    position: absolute;
    left: 15%;
    right: 15%;
    top: 100%;
    height: 20px;
    border: 1px solid #d1dfeb;
    background: #fff;
    transform-origin: top;
    animation: c97Paper 4s ease-in-out infinite;
}

.rsiC97-chip {
    position: absolute;
    z-index: 4;
    display: grid;
    place-items: center;
    width: 22%;
    height: 18%;
    border: 1px solid #d6e5f1;
    border-radius: 11px;
    background: #fff;
    color: #53728e;
    font-size: clamp(9px, 3.2cqw, 12px);
    box-shadow: 0 5px 13px #d7e3ee;
    animation: c97Float 4s ease-in-out infinite;
}

.rsiC97-chip--a { left: 6%; top: 22%; }
.rsiC97-chip--b { right: 6%; top: 34%; animation-delay: -2s; }

/* 6: Contact / collaboration */

.rsiC97-envelope {
    position: absolute;
    z-index: 2;
    left: 23%;
    top: 34%;
    width: 54%;
    height: 40%;
    border: 1px solid #a9c9e2;
    border-radius: 9px;
    background: linear-gradient(130deg, #b8d6ec, #6da6d2);
    box-shadow: 0 7px 0 #d1e0ed;
    animation: c97Float 5s ease-in-out infinite;
}

.rsiC97-envelope::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0;
    background: linear-gradient(140deg, #c5def0, #8fbce0);
    clip-path: polygon(0 0, 50% 59%, 100% 0);
}

.rsiC97-letter {
    position: absolute;
    z-index: 1;
    left: 31%;
    top: 19%;
    width: 38%;
    height: 40%;
    border: 1px solid #dce7f1;
    border-radius: 8px;
    background:
        linear-gradient(#a9c7df, #a9c7df) 50% 25% / 65% 4% no-repeat,
        linear-gradient(#d3e2ef, #d3e2ef) 50% 42% / 65% 4% no-repeat,
        linear-gradient(#d3e2ef, #d3e2ef) 32% 59% / 42% 4% no-repeat,
        #fff;
    animation: c97Letter 5s ease-in-out infinite;
}

.rsiC97-bubble {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    right: 9%;
    top: 16%;
    width: 25%;
    height: 23%;
    border: 1px solid #d6e4f0;
    border-radius: 13px 13px 13px 2px;
    background: #fff;
    box-shadow: 0 5px 12px #d8e4ef;
    animation: c97Float 4s ease-in-out infinite;
}

.rsiC97-bubble i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #5894c5;
    animation: c97Dots 1.5s ease-in-out infinite;
}

.rsiC97-bubble i:nth-child(2) { animation-delay: .2s; }
.rsiC97-bubble i:nth-child(3) { animation-delay: .4s; }

/* ANIMATIONS */

@keyframes c97Reveal {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes c97Float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes c97Line {
    0%, 100% { transform: scaleX(1); }
    50% { transform: scaleX(.6); }
}

@keyframes c97Window {
    0%, 100% { opacity: 1; }
    50% { opacity: .45; }
}

@keyframes c97Connect {
    0%, 100% { opacity: .4; }
    50% { opacity: 1; }
}

@keyframes c97Ticket {
    0%, 100% { transform: translateY(-4px); }
    50% { transform: translateY(5px); }
}

@keyframes c97Bars {
    0%, 100% { transform: scaleY(.7); }
    50% { transform: scaleY(1); }
}

@keyframes c97Donut {
    0%, 100% { transform: rotate(-12deg); }
    50% { transform: rotate(12deg); }
}

@keyframes c97Paper {
    0%, 100% { transform: scaleY(.35); }
    50% { transform: scaleY(1); }
}

@keyframes c97Letter {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@keyframes c97Dots {
    0%, 70%, 100% { transform: translateY(0); opacity: .45; }
    35% { transform: translateY(-4px); opacity: 1; }
}

/* RESPONSIVE */

@media (max-width: 1000px) {
    .rsiC97-menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .rsiC97-feature {
        grid-template-columns: minmax(0, 1fr) 270px;
        gap: 22px;
    }
}

@media (max-width: 760px) {
    .rsiC97-feature {
        grid-template-columns: 1fr;
    }

    .rsiC97-art {
        max-width: 340px;
    }

    .rsiC97-categories,
    .rsiC97-list--two {
        grid-template-columns: 1fr;
    }

    .rsiC97-menu label {
        font-size: 13px;
    }
}

@media (max-width: 440px) {
    .rsiC97 {
        padding: 35px 14px;
    }

    .rsiC97-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
        padding: 7px;
        border-radius: 14px;
    }

    .rsiC97-menu label {
        min-height: 46px;
        padding: 10px 6px;
        font-size: 12px;
    }

    .rsiC97-panel {
        padding: 22px 17px;
        border-radius: 17px;
    }

    .rsiC97 p {
        font-size: 14px;
    }

    .rsiC97-list > li {
        font-size: 13px;
    }

    .rsiC97-btn {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiC97 *,
    .rsiC97 *::before,
    .rsiC97 *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* ===== COLORFUL CSS ILLUSTRATIONS — RSI C97 ===== */

/* Illustration backgrounds */
.rsiC97-panel--1 .rsiC97-art {
    background:
        radial-gradient(circle at 80% 20%, #ffe1bf, transparent 55%),
        linear-gradient(140deg, #fffaf3, #f2eaff);
}

.rsiC97-panel--2 .rsiC97-art {
    background:
        radial-gradient(circle at 75% 20%, #eadcff, transparent 55%),
        linear-gradient(140deg, #faf6ff, #eafaf4);
}

.rsiC97-panel--3 .rsiC97-art {
    background:
        radial-gradient(circle at 80% 20%, #ffe0cf, transparent 55%),
        linear-gradient(140deg, #fff8f0, #fff0ef);
}

.rsiC97-panel--4 .rsiC97-art {
    background:
        radial-gradient(circle at 80% 20%, #d9f7e6, transparent 55%),
        linear-gradient(140deg, #f2fff8, #f1ebff);
}

.rsiC97-panel--5 .rsiC97-art {
    background:
        radial-gradient(circle at 80% 20%, #ffe7ad, transparent 55%),
        linear-gradient(140deg, #fffbef, #f4eaff);
}

.rsiC97-panel--6 .rsiC97-art {
    background:
        radial-gradient(circle at 80% 20%, #ffd8e8, transparent 55%),
        linear-gradient(140deg, #fff4f8, #f0eaff);
}

.rsiC97-art {
    border-color: #e9e2ed;
}

.rsiC97-art::before {
    border-color: rgb(156 128 179 / 18%);
}

.rsiC97-art::after {
    background: #b6a0c3;
}

.rsiC97-artTag {
    border-color: #eee5ee;
    color: #736079;
    box-shadow: 0 5px 15px rgb(94 52 112 / 7%);
}

/* ===== 1. COMPANY: lavender building + colorful team ===== */

.rsiC97-office {
    border-color: #dfcef0;
    background: linear-gradient(120deg, #fff, #e7d9f6);
    box-shadow: 8px 8px 0 #d5bfe8;
}

.rsiC97-windows i {
    background: #b08bd0;
}

.rsiC97-windows i:nth-child(3n) {
    background: #edb75c;
}

.rsiC97-person--a {
    background: linear-gradient(110deg, #ffb365, #e77f47);
    box-shadow: 4px 4px 0 #ead3c0;
}

.rsiC97-person--b {
    background: linear-gradient(110deg, #ab82dc, #7950b1);
    box-shadow: 4px 4px 0 #dfcfee;
}

.rsiC97-person--c {
    background: linear-gradient(110deg, #71cbb3, #349b85);
    box-shadow: 4px 4px 0 #c6e3d9;
}

.rsiC97-person::before {
    background: #ecc2a1;
    box-shadow: inset 0 5px 0 #50404b;
}

/* ===== 2. BUSINESS: multicolor connected modules ===== */

.rsiC97-hub {
    background: linear-gradient(140deg, #ac82e1, #7545b5);
    box-shadow:
        0 7px 0 #d4bce9,
        0 12px 22px #e6d9f0;
}

.rsiC97-module--a {
    border-color: #f1d3b6;
    background: #fff6e9;
    color: #ad702c;
    box-shadow: 0 5px 0 #f0dec5;
}

.rsiC97-module--b {
    border-color: #ded0f0;
    background: #f5edff;
    color: #8252b7;
    box-shadow: 0 5px 0 #e2d4f1;
}

.rsiC97-module--c {
    border-color: #c5e6d9;
    background: #edfbf4;
    color: #36856b;
    box-shadow: 0 5px 0 #cfeadf;
}

.rsiC97-module--d {
    border-color: #f1cad8;
    background: #fff0f5;
    color: #bb5b7e;
    box-shadow: 0 5px 0 #f0d5df;
}

.rsiC97-connect {
    border-color: #b797d3;
}

/* ===== 3. QUEUE: coral machine + orange display ===== */

.rsiC97-machine {
    border-color: #ead7cb;
    background: linear-gradient(100deg, #fffaf5, #f0d9ca);
    box-shadow: 7px 6px 0 #e5c5b1;
}

.rsiC97-machine::before {
    border-color: #59494b;
    background: linear-gradient(135deg, #ffcb87, #ed8c67);
}

.rsiC97-machine::after {
    background: #785b54;
}

.rsiC97-ticket {
    border-color: #ead7cc;
    color: #cf7445;
    box-shadow: 0 4px 9px #e6caba;
}

.rsiC97-queueBoard {
    border-color: #f1d7c5;
    background: #fffdf9;
    box-shadow: 0 7px 18px rgb(150 92 49 / 10%);
}

.rsiC97-queueBoard b {
    color: #e0803c;
}

.rsiC97-queueBoard span {
    color: #92715d;
    border-bottom-color: #f5e8dc;
}

.rsiC97-queueBoard span:last-child {
    color: #4d9d80;
}

/* ===== 4. KPI: multicolor bars + multicolor donut ===== */

.rsiC97-dashboard {
    background: #fffdfd;
    box-shadow:
        0 7px 0 #d7cce8,
        0 14px 25px #e4ddec;
}

.rsiC97-dashboard::before {
    border-bottom-color: #e9e1ef;
    background:
        radial-gradient(circle at 6% 50%, #ef9a9a 2px, transparent 3px),
        radial-gradient(circle at 11% 50%, #e9bc65 2px, transparent 3px),
        radial-gradient(circle at 16% 50%, #7cc7a3 2px, transparent 3px),
        #f5eff9;
}

.rsiC97-bars {
    border-bottom-color: #e0d7ea;
}

.rsiC97-bars i:nth-child(1) {
    background: linear-gradient(#ffca7d, #ee9b42);
}

.rsiC97-bars i:nth-child(2) {
    background: linear-gradient(#ad91e6, #8662c3);
}

.rsiC97-bars i:nth-child(3) {
    background: linear-gradient(#f4a1b5, #dd738e);
}

.rsiC97-bars i:nth-child(4) {
    background: linear-gradient(#83d4b4, #42aa85);
}

.rsiC97-donut {
    background: conic-gradient(
        #9671d0 0 38%,
        #f2b454 38% 63%,
        #65bd99 63% 84%,
        #e789a4 84% 100%
    );
}

.rsiC97-donut::after {
    background: #fffdfd;
    color: #8968ae;
}

/* ===== 5. KIOSK: white body + purple screen + colorful chips ===== */

.rsiC97-kiosk {
    border-color: #dfd6e8;
    background: linear-gradient(
        100deg,
        #fff 12%,
        #f5f0fa 65%,
        #dbcee8
    );
    box-shadow: 7px 5px 0 #cfbfdd;
}

.rsiC97-kiosk::before {
    border-color: #43354f;
    background:
        linear-gradient(#bd9edf, #bd9edf)
        23% 30% / 49% 7% no-repeat,

        linear-gradient(#deccef, #deccef)
        23% 50% / 59% 7% no-repeat,

        linear-gradient(#efb85d, #efb85d)
        23% 73% / 35% 12% no-repeat,

        #faf3ff;
}

.rsiC97-kiosk::after {
    background: linear-gradient(#e9e0f0, #c9b9d8);
}

.rsiC97-kioskSlot {
    background: #695372;
}

.rsiC97-kioskSlot::after {
    border-color: #e5dbea;
}

.rsiC97-chip--a {
    border-color: #eed79f;
    background: #fff6dc;
    color: #ac8430;
    box-shadow: 0 5px 13px #eddfbc;
}

.rsiC97-chip--b {
    border-color: #d9c4ee;
    background: #f7efff;
    color: #9162b9;
    box-shadow: 0 5px 13px #e2d4ed;
}

/* ===== 6. CONTACT: peach envelope + pink conversation ===== */

.rsiC97-envelope {
    border-color: #e3b08f;
    background: linear-gradient(130deg, #f6c59d, #e69a78);
    box-shadow: 0 7px 0 #ebcdbf;
}

.rsiC97-envelope::before {
    background: linear-gradient(140deg, #ffd7b4, #efaf8b);
}

.rsiC97-letter {
    border-color: #eddce6;
    background:
        linear-gradient(#c5a2d8, #c5a2d8)
        50% 25% / 65% 4% no-repeat,

        linear-gradient(#e3cfe8, #e3cfe8)
        50% 42% / 65% 4% no-repeat,

        linear-gradient(#e3cfe8, #e3cfe8)
        32% 59% / 42% 4% no-repeat,

        #fffdfd;
}

.rsiC97-bubble {
    border-color: #edc5d8;
    background: #fff3f8;
    box-shadow: 0 5px 12px #efd5e2;
}

.rsiC97-bubble i {
    background: #cb79a2;
}
/* ===== CONNECTED TABS + CONTENT REDESIGN ===== */

.rsiC97 {
    padding: clamp(35px, 5vw, 65px) 18px;
    background: #fff;
}

.rsiC97-wrap {
    max-width: 1240px;
}

/* Remove extra introductory title */
.rsiC97-intro {
    display: none;
}

/* ================= TABS ================= */

.rsiC97-menu {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: stretch;
    gap: 5px;
    padding: 0 16px;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.rsiC97-menu label {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 65px;
    padding: 17px 12px;
    border: 1px solid transparent;
    border-bottom: 0;
    border-radius: 14px 14px 0 0;
    background: transparent;
    color: #4f5b69;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    box-shadow: none;
    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

/* Small animated underline */
.rsiC97-menu label::after {
    content: "";
    position: absolute;
    left: 28%;
    right: 28%;
    bottom: 11px;
    height: 3px;
    border-radius: 5px;
    background: #2879bc;
    transform: scaleX(0);
    transition: transform .3s ease;
}

.rsiC97-menu label:hover {
    background: #f5f7fa;
    color: #2879bc;
}

.rsiC97-menu label:hover::after {
    transform: scaleX(.55);
}

/* Selected tab joins the content surface */
#rsiC97-1:checked ~ .rsiC97-menu label[for="rsiC97-1"],
#rsiC97-2:checked ~ .rsiC97-menu label[for="rsiC97-2"],
#rsiC97-3:checked ~ .rsiC97-menu label[for="rsiC97-3"],
#rsiC97-4:checked ~ .rsiC97-menu label[for="rsiC97-4"],
#rsiC97-5:checked ~ .rsiC97-menu label[for="rsiC97-5"],
#rsiC97-6:checked ~ .rsiC97-menu label[for="rsiC97-6"] {
    border-color: #e4e9ef;
    background: #f5f7fa;
    color: #182431;
    box-shadow: none;
}

#rsiC97-1:checked ~ .rsiC97-menu label[for="rsiC97-1"]::after,
#rsiC97-2:checked ~ .rsiC97-menu label[for="rsiC97-2"]::after,
#rsiC97-3:checked ~ .rsiC97-menu label[for="rsiC97-3"]::after,
#rsiC97-4:checked ~ .rsiC97-menu label[for="rsiC97-4"]::after,
#rsiC97-5:checked ~ .rsiC97-menu label[for="rsiC97-5"]::after,
#rsiC97-6:checked ~ .rsiC97-menu label[for="rsiC97-6"]::after {
    transform: scaleX(1);
}

/* ================= CONTENT SURFACE ================= */

.rsiC97-panels {
    position: relative;
    min-width: 0;
    margin-top: -1px;
}

.rsiC97-panel {
    padding: clamp(25px, 4vw, 46px);
    border: 1px solid #e4e9ef;
    border-radius: 18px;
    background: #f5f7fa;
    box-shadow: 0 18px 45px rgb(30 48 67 / 4%);
}

.rsiC97-feature {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
    gap: clamp(24px, 4vw, 50px);
    align-items: center;
    margin: 0 0 27px;
    padding: 0 0 27px;
    border-bottom: 1px solid #dfe6ee;
}

.rsiC97-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #2879bc;
    font-size: 11px;
    letter-spacing: 1.6px;
}

.rsiC97-kicker::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 4px #e2edf7;
}

.rsiC97 h3 {
    max-width: 720px;
    margin: 0 0 18px;
    color: #172330;
    font-size: clamp(25px, 2.8vw, 35px);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.6px;
}

.rsiC97 h4 {
    margin: 29px 0 18px;
    color: #223242;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5;
}

.rsiC97 p {
    margin: 0 0 22px;
    color: #5b6877;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.95;
    text-align: left;
}

.rsiC97-feature p {
    max-width: 680px;
    margin-bottom: 0;
    color: #526375;
    font-size: 16px;
    line-height: 1.85;
}

.rsiC97 p:last-child {
    margin-bottom: 0;
}

.rsiC97 strong {
    font-weight: 500;
}

.rsiC97 a:not(.rsiC97-btn) {
    color: #246fae;
    text-decoration-color: #adcbe4;
    text-underline-offset: 4px;
    transition: color .25s ease;
}

.rsiC97 a:not(.rsiC97-btn):hover {
    color: #172330;
}

.rsiC97-lead {
    padding: 19px 22px;
    border-left: 3px solid #2879bc;
    border-radius: 0 12px 12px 0;
    background: #fff;
    color: #344d65 !important;
}

/* ================= COLORFUL ARTWORK ================= */

.rsiC97-art {
    max-width: 320px;
    border-radius: 20px;
    box-shadow:
        0 7px 0 rgb(221 226 233 / 55%),
        0 15px 25px rgb(39 54 74 / 5%);
}

/* ================= BULLETS ================= */

.rsiC97-list {
    gap: 11px;
    margin-bottom: 24px;
}

.rsiC97-list > li {
    padding: 15px 20px 15px 47px;
    border: 1px solid #e3e9f0;
    border-radius: 12px;
    background: #fff;
    color: #586777;
    font-size: 14px;
    line-height: 1.85;
    transition:
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiC97-list > li::before {
    left: 20px;
    top: 24px;
    width: 7px;
    height: 7px;
    background: #2879bc;
    box-shadow: 0 0 0 5px #edf4fb;
}

.rsiC97-list > li:hover {
    border-color: #c4d9ec;
    background: #fbfdff;
    box-shadow: 0 6px 17px rgb(40 85 125 / 5%);
}

.rsiC97-list ul {
    gap: 9px;
    margin-top: 13px;
}

/* ================= SERVICE GROUPS ================= */

.rsiC97-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin: 27px 0;
}

.rsiC97-category {
    position: relative;
    min-width: 0;
    padding: 25px;
    border: 1px solid #e1e7ef;
    border-radius: 15px;
    background: #fff;
    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

.rsiC97-category:hover {
    border-color: #c1d7eb;
    box-shadow: 0 10px 25px rgb(28 65 98 / 5%);
}

.rsiC97-category h4 {
    margin: 0 0 19px;
    padding: 0 0 14px;
    border-left: 0;
    border-bottom: 1px solid #eaf0f5;
    font-size: 18px;
}

.rsiC97-category .rsiC97-list {
    gap: 12px;
    margin: 0;
}

.rsiC97-category .rsiC97-list > li {
    padding: 0 0 0 20px;
    border: 0;
    background: transparent;
    box-shadow: none;
    font-size: 14px;
}

.rsiC97-category .rsiC97-list > li::before {
    left: 1px;
    top: 10px;
    width: 5px;
    height: 5px;
    box-shadow: none;
}

/* ================= BUTTONS ================= */

.rsiC97-actions {
    gap: 13px;
    margin: 27px 0;
}

.rsiC97-btn {
    min-height: 49px;
    padding: 14px 23px;
    border-radius: 9px;
    box-shadow: 0 6px 15px rgb(40 121 188 / 10%);
}

.rsiC97-btn--outline {
    background: #fff;
    box-shadow: none;
}

.rsiC97-btn:hover {
    background: #1c5f96;
    transform: translateY(-3px);
}

.rsiC97-address {
    margin-top: 24px;
    padding: 24px;
    border: 1px solid #e0e7ef;
    border-radius: 14px;
    background: #fff;
}

/* ================= RESPONSIVE ================= */

@media (max-width: 1000px) {
    .rsiC97-menu {
        gap: 3px;
        padding-inline: 8px;
    }

    .rsiC97-menu label {
        min-height: 61px;
        padding-inline: 7px;
        font-size: 12px;
    }

    .rsiC97-feature {
        grid-template-columns: minmax(0, 1fr) 270px;
        gap: 25px;
    }
}

@media (max-width: 760px) {
    .rsiC97-menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        margin-bottom: 14px;
        padding: 0;
    }

    .rsiC97-menu label {
        min-height: 53px;
        padding: 13px 7px 17px;
        border: 1px solid #e4e9ef;
        border-radius: 10px;
        background: #fff;
        font-size: 13px;
    }

    .rsiC97-menu label::after {
        bottom: 7px;
        height: 2px;
    }

    .rsiC97-panels {
        margin-top: 0;
    }

    .rsiC97-panel {
        border-radius: 15px;
    }

    .rsiC97-feature {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-bottom: 24px;
        padding-bottom: 26px;
    }

    .rsiC97-art {
        width: 100%;
        max-width: 320px;
    }

    .rsiC97-categories,
    .rsiC97-list--two {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 440px) {
    .rsiC97 {
        padding: 32px 14px;
    }

    .rsiC97-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rsiC97-menu label {
        min-height: 49px;
        font-size: 12px;
    }

    .rsiC97-panel {
        padding: 23px 17px;
    }

    .rsiC97 h3 {
        font-size: 25px;
    }

    .rsiC97 p,
    .rsiC97-feature p {
        font-size: 14px;
        line-height: 1.9;
    }

    .rsiC97-list > li {
        padding: 13px 14px 13px 37px;
        font-size: 13px;
    }

    .rsiC97-list > li::before {
        left: 16px;
        top: 22px;
        width: 6px;
        height: 6px;
        box-shadow: 0 0 0 4px #edf4fb;
    }

    .rsiC97-category {
        padding: 20px 17px;
    }

    .rsiC97-category .rsiC97-list > li {
        padding-left: 19px;
        font-size: 13px;
    }

    .rsiC97-category .rsiC97-list > li::before {
        left: 1px;
        top: 9px;
        box-shadow: none;
    }

    .rsiC97-address {
        padding: 19px;
    }
}


















/* ================= RSI COMPANY TABS Z61 ================= */

.rsiZ61 {
    --z-blue: #2879bc;
    --z-dark: #182431;
    --z-text: #5e6c7b;
    --z-border: #dfe6ee;
    padding: clamp(32px, 5vw, 65px) 18px;
    background: #fff;
    color: var(--z-dark);
    font-family: inherit;
}

.rsiZ61,
.rsiZ61 *,
.rsiZ61 *::before,
.rsiZ61 *::after {
    box-sizing: border-box;
}

.rsiZ61-wrap {
    max-width: 1240px;
    margin: auto;
    min-width: 0;
}

.rsiZ61-radio {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

/* ================= TEXT-ONLY TABS ================= */

.rsiZ61-menu {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 5px;
    padding: 0 15px;
}

.rsiZ61-menu label {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 65px;
    padding: 16px 10px 21px;
    border: 1px solid transparent;
    border-bottom: 0;
    border-radius: 13px 13px 0 0;
    color: #526171;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
    cursor: pointer;
    transition: background .25s ease, color .25s ease;
}

.rsiZ61-menu label::after {
    content: "";
    position: absolute;
    left: 28%;
    right: 28%;
    bottom: 11px;
    height: 3px;
    border-radius: 5px;
    background: var(--z-blue);
    transform: scaleX(0);
    transition: transform .3s ease;
}

.rsiZ61-menu label:hover {
    background: #f5f7fa;
    color: var(--z-blue);
}

#rsiZ61-a:checked ~ .rsiZ61-menu label[for="rsiZ61-a"],
#rsiZ61-b:checked ~ .rsiZ61-menu label[for="rsiZ61-b"],
#rsiZ61-c:checked ~ .rsiZ61-menu label[for="rsiZ61-c"],
#rsiZ61-d:checked ~ .rsiZ61-menu label[for="rsiZ61-d"],
#rsiZ61-e:checked ~ .rsiZ61-menu label[for="rsiZ61-e"],
#rsiZ61-f:checked ~ .rsiZ61-menu label[for="rsiZ61-f"] {
    border-color: var(--z-border);
    background: #f5f7fa;
    color: var(--z-dark);
}

#rsiZ61-a:checked ~ .rsiZ61-menu label[for="rsiZ61-a"]::after,
#rsiZ61-b:checked ~ .rsiZ61-menu label[for="rsiZ61-b"]::after,
#rsiZ61-c:checked ~ .rsiZ61-menu label[for="rsiZ61-c"]::after,
#rsiZ61-d:checked ~ .rsiZ61-menu label[for="rsiZ61-d"]::after,
#rsiZ61-e:checked ~ .rsiZ61-menu label[for="rsiZ61-e"]::after,
#rsiZ61-f:checked ~ .rsiZ61-menu label[for="rsiZ61-f"]::after {
    transform: scaleX(1);
}

#rsiZ61-a:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-a"],
#rsiZ61-b:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-b"],
#rsiZ61-c:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-c"],
#rsiZ61-d:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-d"],
#rsiZ61-e:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-e"],
#rsiZ61-f:focus-visible ~ .rsiZ61-menu label[for="rsiZ61-f"] {
    outline: 3px solid #88b9df;
    outline-offset: 2px;
}

/* ================= PANELS ================= */

.rsiZ61-panels {
    margin-top: -1px;
}

.rsiZ61-panel {
    display: none;
    min-width: 0;
    padding: clamp(23px, 3.5vw, 40px);
    border: 1px solid var(--z-border);
    border-radius: 17px;
    background: #f5f7fa;
}

#rsiZ61-a:checked ~ .rsiZ61-panels .rsiZ61-panel--a,
#rsiZ61-b:checked ~ .rsiZ61-panels .rsiZ61-panel--b,
#rsiZ61-c:checked ~ .rsiZ61-panels .rsiZ61-panel--c,
#rsiZ61-d:checked ~ .rsiZ61-panels .rsiZ61-panel--d,
#rsiZ61-e:checked ~ .rsiZ61-panels .rsiZ61-panel--e,
#rsiZ61-f:checked ~ .rsiZ61-panels .rsiZ61-panel--f {
    display: flow-root;
    animation: z61Reveal .45s ease both;
}

.rsiZ61-kicker {
    display: block;
    padding-top: 5px;
    margin-bottom: 11px;
    color: var(--z-blue);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.rsiZ61 h3 {
    margin: 0 0 19px;
    color: var(--z-dark);
    font-size: clamp(25px, 2.6vw, 33px);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.5px;
}

.rsiZ61 h4 {
    margin: 0 0 12px;
    color: #223242;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
}

.rsiZ61 p {
    margin: 0 0 20px;
    color: var(--z-text);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.95;
    text-align: left;
    overflow-wrap: anywhere;
}

.rsiZ61 strong {
    font-weight: 500;
}

.rsiZ61 a {
    color: #246fae;
    text-underline-offset: 4px;
    text-decoration-color: #b6cfe3;
}

.rsiZ61 a:hover {
    color: #174b75;
}

.rsiZ61 a:focus-visible {
    outline: 3px solid #88b9df;
    outline-offset: 4px;
}

/* Text wraps beside and below the illustration */
.rsiZ61-art {
    position: relative;
    float: right;
    width: 29%;
    max-width: 290px;
    aspect-ratio: 320 / 225;
    margin: 0 0 21px 29px;
    overflow: hidden;
    border: 1px solid #e7dfeb;
    border-radius: 20px;
    container-type: inline-size;
    box-shadow: 0 6px 0 rgb(217 219 228 / 40%);
}

.rsiZ61-art--left {
    float: left;
    margin: 0 29px 21px 0;
}

.rsiZ61-art::before {
    content: "";
    position: absolute;
    left: 19%;
    top: 7%;
    width: 62%;
    aspect-ratio: 1;
    border: 1px solid rgb(157 128 177 / 17%);
    border-radius: 50%;
    box-shadow: 0 0 0 20px rgb(255 255 255 / 30%);
}

.rsiZ61-art::after {
    content: "";
    position: absolute;
    left: 20%;
    right: 20%;
    bottom: 15%;
    height: 7%;
    border-radius: 50%;
    background: #bba7c7;
    filter: blur(9px);
    opacity: .35;
}

.rsiZ61-artTag {
    position: absolute;
    z-index: 5;
    left: 7%;
    bottom: 7%;
    padding: 6px 10px;
    border: 1px solid #ece2ed;
    border-radius: 7px;
    background: #fff;
    color: #78647f;
    font-size: clamp(8px, 3.3cqw, 10px);
}

/* ================= CONTENT GROUPS ================= */

.rsiZ61-group {
    clear: both;
    padding-top: 8px;
    margin-bottom: 24px;
}

.rsiZ61-group h4 {
    padding-bottom: 11px;
    border-bottom: 2px solid #dce5ee;
}

.rsiZ61-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 27px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiZ61-list > li {
    position: relative;
    min-width: 0;
    padding: 13px 0 13px 22px;
    border-bottom: 1px solid #dfe6ee;
    color: #5a6979;
    font-size: 14px;
    line-height: 1.85;
    overflow-wrap: anywhere;
}

.rsiZ61-list > li::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 23px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--z-blue);
    box-shadow: 0 0 0 3px #e3edf7;
}

.rsiZ61-list--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rsiZ61-list--long {
    grid-template-columns: minmax(0, 1fr);
}

/* Fill final row when two-column list has an odd item */
.rsiZ61-list--two > li:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

/* Nested KPI categories */
.rsiZ61-sublist {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 22px;
    margin: 12px 0 0;
    padding: 12px 0 0 18px;
    border-top: 1px solid #e0e7ef;
    list-style: disc;
}

.rsiZ61-sublist li {
    font-size: 13px;
    line-height: 1.8;
}

.rsiZ61-sublist li::marker {
    color: var(--z-blue);
}

.rsiZ61-note {
    clear: both;
    padding: 17px 20px;
    border-left: 3px solid var(--z-blue);
    border-radius: 0 10px 10px 0;
    background: #fff;
    color: #3e5871 !important;
}

.rsiZ61-actions {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 23px 0;
}

.rsiZ61-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    min-height: 49px;
    padding: 13px 21px;
    border: 1px solid var(--z-blue);
    border-radius: 9px;
    background: var(--z-blue);
    color: #fff !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: transform .25s ease, background .25s ease;
}

.rsiZ61-btn::after {
    content: "↗";
    font-size: 19px;
}

.rsiZ61-btn--outline {
    background: #fff;
    color: var(--z-blue) !important;
}

.rsiZ61-btn:hover {
    transform: translateY(-3px);
    background: #1c5e93;
    color: #fff !important;
}

.rsiZ61-address {
    clear: both;
    padding: 21px;
    border: 1px solid #e0e7ef;
    border-radius: 12px;
    background: #fff;
}

.rsiZ61-address p {
    margin: 0;
    font-size: 14px;
    line-height: 2;
}

.rsiZ61-panel > :last-child {
    margin-bottom: 0;
}

/* ================= 1. COMPANY ART ================= */

.rsiZ61-art--company {
    background:
        radial-gradient(circle at 80% 20%, #ffe1bf, transparent 55%),
        linear-gradient(140deg, #fffaf3, #f2eaff);
}

.rsiZ61-office {
    position: absolute;
    z-index: 1;
    left: 26%;
    top: 14%;
    width: 48%;
    height: 59%;
    padding: 10%;
    border: 1px solid #ddc9ed;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(120deg, #fff, #e5d5f4);
    box-shadow: 7px 6px 0 #d3bce8;
}

.rsiZ61-windows {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    height: 100%;
}

.rsiZ61-windows i {
    border-radius: 3px;
    background: #ae86d1;
    animation: z61Glow 4s ease-in-out infinite;
}

.rsiZ61-windows i:nth-child(2n) {
    background: #e9b45c;
    animation-delay: -2s;
}

.rsiZ61-person {
    position: absolute;
    z-index: 3;
    bottom: 23%;
    width: 13%;
    height: 27%;
    border-radius: 45% 45% 12% 12%;
    animation: z61Float 5s ease-in-out infinite;
}

.rsiZ61-person::before {
    content: "";
    position: absolute;
    top: -39%;
    left: 19%;
    width: 62%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #ecc2a1;
    box-shadow: inset 0 5px 0 #50404b;
}

.rsiZ61-person--one {
    left: 20%;
    background: linear-gradient(110deg, #ffb365, #e77f47);
}

.rsiZ61-person--two {
    left: 44%;
    bottom: 19%;
    background: linear-gradient(110deg, #ab82dc, #7950b1);
    animation-delay: -1.5s;
}

.rsiZ61-person--three {
    right: 19%;
    background: linear-gradient(110deg, #71cbb3, #349b85);
    animation-delay: -3s;
}

/* ================= 2. BUSINESS ART ================= */

.rsiZ61-art--business {
    background:
        radial-gradient(circle at 75% 20%, #eadcff, transparent 55%),
        linear-gradient(140deg, #faf6ff, #eafaf4);
}

.rsiZ61-connect {
    position: absolute;
    left: 21%;
    top: 25%;
    width: 58%;
    height: 40%;
    border: 2px dashed #b797d3;
    border-radius: 30%;
    animation: z61Glow 4s ease-in-out infinite;
}

.rsiZ61-hub {
    position: absolute;
    z-index: 3;
    left: 36%;
    top: 30%;
    display: grid;
    place-items: center;
    width: 28%;
    aspect-ratio: 1;
    border: 4px solid #fff;
    border-radius: 20%;
    background: linear-gradient(140deg, #ac82e1, #7545b5);
    color: #fff;
    font-size: clamp(12px, 6cqw, 19px);
    box-shadow: 0 6px 0 #d4bce9;
    animation: z61Float 5s ease-in-out infinite;
}

.rsiZ61-module {
    position: absolute;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 28%;
    height: 21%;
    border: 1px solid;
    border-radius: 10px;
    font-size: clamp(8px, 3.5cqw, 11px);
    animation: z61Float 5s ease-in-out infinite;
}

.rsiZ61-module--one {
    left: 7%; top: 13%;
    border-color: #f1d3b6;
    background: #fff6e9;
    color: #ad702c;
    box-shadow: 0 4px 0 #f0dec5;
}

.rsiZ61-module--two {
    right: 7%; top: 13%;
    border-color: #ded0f0;
    background: #f5edff;
    color: #8252b7;
    box-shadow: 0 4px 0 #e2d4f1;
    animation-delay: -1s;
}

.rsiZ61-module--three {
    left: 7%; bottom: 20%;
    border-color: #c5e6d9;
    background: #edfbf4;
    color: #36856b;
    box-shadow: 0 4px 0 #cfeadf;
    animation-delay: -2s;
}

.rsiZ61-module--four {
    right: 7%; bottom: 20%;
    border-color: #f1cad8;
    background: #fff0f5;
    color: #bb5b7e;
    box-shadow: 0 4px 0 #f0d5df;
    animation-delay: -3s;
}

/* ================= 3. QUEUE ART ================= */

.rsiZ61-art--queue {
    background:
        radial-gradient(circle at 80% 20%, #ffe0cf, transparent 55%),
        linear-gradient(140deg, #fff8f0, #fff0ef);
}

.rsiZ61-machine {
    position: absolute;
    z-index: 2;
    left: 17%;
    top: 14%;
    width: 31%;
    height: 61%;
    border: 1px solid #ead7cb;
    border-radius: 12px 12px 5px 5px;
    background: linear-gradient(100deg, #fffaf5, #f0d9ca);
    box-shadow: 6px 5px 0 #e5c5b1;
}

.rsiZ61-machine::before {
    content: "";
    position: absolute;
    left: 12%;
    right: 12%;
    top: 10%;
    height: 37%;
    border: 5px solid #59494b;
    border-radius: 6px;
    background: linear-gradient(135deg, #ffcb87, #ed8c67);
}

.rsiZ61-machine::after {
    content: "";
    position: absolute;
    left: 24%;
    right: 24%;
    top: 58%;
    height: 5px;
    border-radius: 4px;
    background: #785b54;
}

.rsiZ61-ticket {
    position: absolute;
    z-index: 4;
    top: 51%;
    left: 25%;
    display: grid;
    place-items: center;
    width: 16%;
    height: 20%;
    border: 1px solid #ead7cc;
    border-radius: 0 0 4px 4px;
    background: #fff;
    color: #cf7445;
    font-size: clamp(9px, 4.5cqw, 14px);
    animation: z61Print 4s ease-in-out infinite;
}

.rsiZ61-board {
    position: absolute;
    z-index: 3;
    right: 8%;
    top: 23%;
    width: 40%;
    padding: 8px;
    border: 1px solid #f1d7c5;
    border-radius: 10px;
    background: #fffdf9;
    box-shadow: 0 6px 14px rgb(150 92 49 / 10%);
    animation: z61Float 5s ease-in-out infinite;
}

.rsiZ61-board span {
    display: block;
    padding: 5px 2px;
    color: #92715d;
    font-size: clamp(7px, 3.1cqw, 10px);
    border-bottom: 1px solid #f5e8dc;
}

.rsiZ61-board b {
    display: block;
    padding: 5px 2px;
    color: #e0803c;
    font-size: clamp(12px, 6cqw, 19px);
    font-weight: 500;
}

.rsiZ61-board span:last-child {
    border: 0;
    color: #4d9d80;
    animation: z61Glow 3s ease-in-out infinite;
}

/* ================= 4. KPI ART ================= */

.rsiZ61-art--kpi {
    background:
        radial-gradient(circle at 80% 20%, #d9f7e6, transparent 55%),
        linear-gradient(140deg, #f2fff8, #f1ebff);
}

.rsiZ61-dashboard {
    position: absolute;
    z-index: 2;
    inset: 15% 10% 24%;
    border: 5px solid #fff;
    border-radius: 11px;
    background: #fffdfd;
    box-shadow: 0 6px 0 #d7cce8, 0 12px 20px #e4ddec;
}

.rsiZ61-dashboard::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 17%;
    border-bottom: 1px solid #e9e1ef;
    background:
        radial-gradient(circle at 6% 50%, #ef9a9a 2px, transparent 3px),
        radial-gradient(circle at 11% 50%, #e9bc65 2px, transparent 3px),
        radial-gradient(circle at 16% 50%, #7cc7a3 2px, transparent 3px),
        #f5eff9;
}

.rsiZ61-bars {
    position: absolute;
    display: flex;
    align-items: flex-end;
    gap: 10%;
    left: 8%;
    bottom: 13%;
    width: 43%;
    height: 57%;
    border-bottom: 1px solid #e0d7ea;
}

.rsiZ61-bars i {
    flex: 1;
    height: 45%;
    border-radius: 4px 4px 0 0;
    transform-origin: bottom;
    background: linear-gradient(#ffca7d, #ee9b42);
    animation: z61Bars 4s ease-in-out infinite;
}

.rsiZ61-bars i:nth-child(2) {
    height: 72%;
    background: linear-gradient(#ad91e6, #8662c3);
    animation-delay: -.6s;
}

.rsiZ61-bars i:nth-child(3) {
    height: 58%;
    background: linear-gradient(#f4a1b5, #dd738e);
    animation-delay: -1.2s;
}

.rsiZ61-bars i:nth-child(4) {
    height: 95%;
    background: linear-gradient(#83d4b4, #42aa85);
    animation-delay: -1.8s;
}

.rsiZ61-donut {
    position: absolute;
    right: 8%;
    top: 32%;
    width: 29%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: conic-gradient(
        #9671d0 0 38%,
        #f2b454 38% 63%,
        #65bd99 63% 84%,
        #e789a4 84% 100%
    );
    animation: z61Donut 6s ease-in-out infinite;
}

.rsiZ61-donut::after {
    content: "KPI";
    position: absolute;
    inset: 23%;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fffdfd;
    color: #8968ae;
    font-size: clamp(8px, 3.5cqw, 11px);
}

/* ================= 5. KIOSK ART ================= */

.rsiZ61-art--kiosk {
    background:
        radial-gradient(circle at 80% 20%, #ffe7ad, transparent 55%),
        linear-gradient(140deg, #fffbef, #f4eaff);
}

.rsiZ61-kiosk {
    position: absolute;
    z-index: 3;
    left: 35%;
    top: 11%;
    width: 30%;
    height: 66%;
    border: 1px solid #dfd6e8;
    border-radius: 10px 10px 5px 5px;
    background: linear-gradient(100deg, #fff 12%, #f5f0fa 65%, #dbcee8);
    box-shadow: 6px 5px 0 #cfbfdd;
    animation: z61Float 6s ease-in-out infinite;
}

.rsiZ61-kiosk::before {
    content: "";
    position: absolute;
    left: -6%;
    right: -6%;
    top: 4%;
    height: 36%;
    border: 5px solid #43354f;
    border-radius: 7px;
    background:
        linear-gradient(#bd9edf, #bd9edf) 23% 30% / 49% 7% no-repeat,
        linear-gradient(#deccef, #deccef) 23% 50% / 59% 7% no-repeat,
        linear-gradient(#efb85d, #efb85d) 23% 73% / 35% 12% no-repeat,
        #faf3ff;
}

.rsiZ61-kiosk::after {
    content: "";
    position: absolute;
    left: -21%;
    right: -21%;
    bottom: -5%;
    height: 9%;
    border-radius: 50% 50% 5px 5px;
    background: linear-gradient(#e9e0f0, #c9b9d8);
}

.rsiZ61-slot {
    position: absolute;
    left: 27%;
    right: 27%;
    top: 56%;
    height: 5%;
    border-radius: 4px;
    background: #695372;
}

.rsiZ61-slot::after {
    content: "";
    position: absolute;
    left: 15%;
    right: 15%;
    top: 100%;
    height: 18px;
    border: 1px solid #e5dbea;
    background: #fff;
    transform-origin: top;
    animation: z61Paper 4s ease-in-out infinite;
}

.rsiZ61-chip {
    position: absolute;
    z-index: 4;
    display: grid;
    place-items: center;
    width: 22%;
    height: 18%;
    border: 1px solid;
    border-radius: 10px;
    font-size: clamp(8px, 3.5cqw, 11px);
    animation: z61Float 4s ease-in-out infinite;
}

.rsiZ61-chip--one {
    left: 6%;
    top: 22%;
    border-color: #eed79f;
    background: #fff6dc;
    color: #ac8430;
    box-shadow: 0 4px 10px #eddfbc;
}

.rsiZ61-chip--two {
    right: 6%;
    top: 35%;
    border-color: #d9c4ee;
    background: #f7efff;
    color: #9162b9;
    box-shadow: 0 4px 10px #e2d4ed;
    animation-delay: -2s;
}

/* ================= 6. CONTACT ART ================= */

.rsiZ61-art--contact {
    background:
        radial-gradient(circle at 80% 20%, #ffd8e8, transparent 55%),
        linear-gradient(140deg, #fff4f8, #f0eaff);
}

.rsiZ61-envelope {
    position: absolute;
    z-index: 2;
    left: 23%;
    top: 34%;
    width: 54%;
    height: 38%;
    border: 1px solid #e3b08f;
    border-radius: 8px;
    background: linear-gradient(130deg, #f6c59d, #e69a78);
    box-shadow: 0 6px 0 #ebcdbf;
    animation: z61Float 5s ease-in-out infinite;
}

.rsiZ61-envelope::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(140deg, #ffd7b4, #efaf8b);
    clip-path: polygon(0 0, 50% 59%, 100% 0);
}

.rsiZ61-letter {
    position: absolute;
    z-index: 1;
    left: 31%;
    top: 18%;
    width: 38%;
    height: 40%;
    border: 1px solid #eddce6;
    border-radius: 7px;
    background:
        linear-gradient(#c5a2d8, #c5a2d8) 50% 25% / 65% 4% no-repeat,
        linear-gradient(#e3cfe8, #e3cfe8) 50% 42% / 65% 4% no-repeat,
        linear-gradient(#e3cfe8, #e3cfe8) 32% 59% / 42% 4% no-repeat,
        #fffdfd;
    animation: z61Float 5s ease-in-out infinite reverse;
}

.rsiZ61-bubble {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    right: 9%;
    top: 15%;
    width: 25%;
    height: 23%;
    border: 1px solid #edc5d8;
    border-radius: 12px 12px 12px 2px;
    background: #fff3f8;
    box-shadow: 0 5px 12px #efd5e2;
    animation: z61Float 4s ease-in-out infinite;
}

.rsiZ61-bubble i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #cb79a2;
    animation: z61Dots 1.5s ease-in-out infinite;
}

.rsiZ61-bubble i:nth-child(2) { animation-delay: .2s; }
.rsiZ61-bubble i:nth-child(3) { animation-delay: .4s; }

/* ================= ANIMATION ================= */

@keyframes z61Reveal {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes z61Float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes z61Glow {
    0%, 100% { opacity: 1; }
    50% { opacity: .45; }
}

@keyframes z61Print {
    0%, 100% { transform: translateY(-3px); }
    50% { transform: translateY(5px); }
}

@keyframes z61Bars {
    0%, 100% { transform: scaleY(.65); }
    50% { transform: scaleY(1); }
}

@keyframes z61Donut {
    0%, 100% { transform: rotate(-10deg); }
    50% { transform: rotate(10deg); }
}

@keyframes z61Paper {
    0%, 100% { transform: scaleY(.3); }
    50% { transform: scaleY(1); }
}

@keyframes z61Dots {
    0%, 70%, 100% { transform: translateY(0); opacity: .5; }
    35% { transform: translateY(-4px); opacity: 1; }
}

/* ================= RESPONSIVE ================= */

@media (max-width: 1000px) {
    .rsiZ61-menu {
        gap: 3px;
        padding-inline: 6px;
    }

    .rsiZ61-menu label {
        font-size: 12px;
        padding-inline: 6px;
    }

    .rsiZ61-art {
        width: 33%;
        margin-left: 22px;
    }

    .rsiZ61-art--left {
        margin-left: 0;
        margin-right: 22px;
    }

    .rsiZ61-list--three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rsiZ61-sublist {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 760px) {
    .rsiZ61-menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        padding: 0;
        margin-bottom: 13px;
    }

    .rsiZ61-menu label {
        min-height: 51px;
        padding: 12px 7px 17px;
        border: 1px solid var(--z-border);
        border-radius: 9px;
        font-size: 13px;
    }

    .rsiZ61-menu label::after {
        bottom: 7px;
        height: 2px;
    }

    .rsiZ61-panels {
        margin-top: 0;
    }

    .rsiZ61-art {
        width: 38%;
    }
}

@media (max-width: 580px) {
    .rsiZ61-art,
    .rsiZ61-art--left {
        float: none;
        width: 100%;
        max-width: 270px;
        margin: 0 auto 24px;
    }

    .rsiZ61-list,
    .rsiZ61-list--three {
        grid-template-columns: minmax(0, 1fr);
    }

    .rsiZ61 p {
        font-size: 14px;
    }

    .rsiZ61-list > li {
        font-size: 13px;
    }
}

@media (max-width: 420px) {
    .rsiZ61 {
        padding: 30px 13px;
    }

    .rsiZ61-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rsiZ61-panel {
        padding: 22px 17px;
        border-radius: 13px;
    }

    .rsiZ61-btn {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiZ61 *,
    .rsiZ61 *::before,
    .rsiZ61 *::after {
        animation: none !important;
        transition: none !important;
    }
}
/* ================ RSI PORTFOLIO P86 ================ */

.rsiWorksP86 {
    --p86-blue: #2879bc;
    --p86-dark: #172330;
    --p86-muted: #647283;
    padding: clamp(40px, 6vw, 80px) 18px;
    background: #fff;
    color: var(--p86-dark);
    font-family: inherit;
}

.rsiWorksP86,
.rsiWorksP86 *,
.rsiWorksP86 *::before,
.rsiWorksP86 *::after {
    box-sizing: border-box;
}

.rsiWorksP86-wrap {
    max-width: 1240px;
    min-width: 0;
    margin-inline: auto;
}

.rsiWorksP86-intro {
    margin-bottom: 30px;
}

.rsiWorksP86-intro h2 {
    margin: 0 0 12px;
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.8px;
}

.rsiWorksP86-intro p {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    color: var(--p86-muted);
    font-size: 11px;
    line-height: 1.6;
    letter-spacing: 2px;
}

.rsiWorksP86-intro p::before {
    content: "";
    flex: 0 0 32px;
    height: 3px;
    border-radius: 4px;
    background: var(--p86-blue);
}

/* ================ FEATURED PROJECT ================ */

.rsiWorksP86-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
    margin-bottom: 34px;
    border: 1px solid #e2e8ef;
    border-radius: 23px;
    background: #f5f7fa;
    overflow: hidden;
}

.rsiWorksP86-visual {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 27px;
    overflow: hidden;
    background:
        radial-gradient(circle at 18% 15%, #e2effa, transparent 48%),
        linear-gradient(135deg, #eaf0f6, #f9fbfd);
}

.rsiWorksP86-visual::before {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    top: -110px;
    right: -130px;
    border: 1px solid #d4e2ee;
    border-radius: 50%;
    box-shadow:
        0 0 0 35px rgb(255 255 255 / 30%),
        0 0 0 70px rgb(255 255 255 / 22%);
    animation: p86Halo 7s ease-in-out infinite;
}

.rsiWorksP86-badges {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 25px;
}

.rsiWorksP86-launch,
.rsiWorksP86-live {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 1px solid #dce6ef;
    border-radius: 7px;
    background: rgb(255 255 255 / 90%);
    color: #55728d;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 1px;
}

.rsiWorksP86-live {
    color: #348567;
}

.rsiWorksP86-live i {
    position: relative;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #45a77e;
}

.rsiWorksP86-live i::after {
    content: "";
    position: absolute;
    inset: -4px;
    border: 1px solid #45a77e;
    border-radius: inherit;
    animation: p86Pulse 2s ease-out infinite;
}

.rsiWorksP86-browser {
    position: relative;
    z-index: 1;
    width: 100%;
    border: 5px solid #fff;
    border-radius: 13px;
    background: #fff;
    box-shadow:
        0 8px 0 #dae3ed,
        0 20px 35px rgb(30 60 88 / 12%);
    animation: p86Float 6s ease-in-out infinite;
    overflow: hidden;
}

.rsiWorksP86-browserBar {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 10px;
    border-bottom: 1px solid #e9edf2;
    background: #f6f8fb;
}

.rsiWorksP86-browserBar i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d5dee8;
}

.rsiWorksP86-browserBar i:first-child {
    background: #e6a7a7;
}

.rsiWorksP86-browserBar i:nth-child(2) {
    background: #e4c184;
}

.rsiWorksP86-browserBar i:nth-child(3) {
    background: #98c9b0;
}

.rsiWorksP86-browserBar span {
    flex: 1;
    margin-left: 12px;
    color: #8795a4;
    font-size: 10px;
    text-align: center;
}

.rsiWorksP86-browser img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    object-position: top;
}

.rsiWorksP86-featureBody {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    padding: clamp(25px, 3.4vw, 43px);
}

.rsiWorksP86-client {
    margin-bottom: 15px;
    color: var(--p86-blue);
    font-size: 14px;
    font-weight: 500;
}

.rsiWorksP86-featureBody h3 {
    margin: 0 0 16px;
    font-size: clamp(25px, 2.7vw, 34px);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.5px;
}

.rsiWorksP86-featureBody p {
    margin: 0 0 23px;
    color: var(--p86-muted);
    font-size: 14px;
    line-height: 1.9;
}

.rsiWorksP86-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 26px;
}

.rsiWorksP86-tags span {
    padding: 7px 10px;
    border: 1px solid #dfe6ee;
    border-radius: 6px;
    background: #fff;
    color: #637486;
    font-size: 10px;
    line-height: 1.5;
}

.rsiWorksP86-visit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 14px 20px;
    border: 1px solid var(--p86-blue);
    border-radius: 9px;
    background: var(--p86-blue);
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: background .25s ease, transform .25s ease;
}

.rsiWorksP86-visit span {
    font-size: 19px;
    transition: transform .25s ease;
}

.rsiWorksP86-visit:hover {
    transform: translateY(-3px);
    background: #1d5f95;
}

.rsiWorksP86-visit:hover span {
    transform: translate(2px, -2px);
}

/* ================ FILTERS AND NAVIGATION ================ */

.rsiWorksP86-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 17px;
    margin-bottom: 22px;
}

.rsiWorksP86-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.rsiWorksP86-filter {
    min-height: 41px;
    padding: 10px 20px;
    border: 1px solid #e0e7ef;
    border-radius: 8px;
    background: #fff;
    color: #647283;
    font: inherit;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease;
}

.rsiWorksP86-filter:hover,
.rsiWorksP86-filter[aria-pressed="true"] {
    border-color: var(--p86-blue);
    background: var(--p86-blue);
    color: #fff;
}

.rsiWorksP86-controls {
    display: flex;
    align-items: center;
    gap: 9px;
}

.rsiWorksP86-nav {
    display: grid;
    place-items: center;
    width: 41px;
    height: 41px;
    padding: 0;
    border: 1px solid #dfe6ee;
    border-radius: 50%;
    background: #fff;
    color: #42617d;
    cursor: pointer;
    transition: background .25s ease, color .25s ease;
}

.rsiWorksP86-nav svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiWorksP86-nav:hover:not(:disabled) {
    background: var(--p86-blue);
    color: #fff;
}

.rsiWorksP86-nav:disabled {
    opacity: .35;
    cursor: default;
}

/* ================ PROJECT SLIDER ================ */

.rsiWorksP86-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 44px) / 3);
    gap: 22px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 2px 0 15px;
}

.rsiWorksP86-track::-webkit-scrollbar {
    display: none;
}

.rsiWorksP86-card {
    min-width: 0;
    border: 1px solid #e2e8ef;
    border-radius: 16px;
    background: #fff;
    overflow: hidden;
    scroll-snap-align: start;
    animation: p86Reveal .45s ease both;
    transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiWorksP86-card[hidden] {
    display: none !important;
}

.rsiWorksP86-card:hover {
    border-color: #bcd3e7;
    box-shadow: 0 7px 17px rgb(31 65 94 / 7%);
}

.rsiWorksP86-image {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #edf1f5;
}

.rsiWorksP86-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s cubic-bezier(.2,.65,.3,1);
}

.rsiWorksP86-card[data-cat="web"] .rsiWorksP86-image img {
    object-position: top;
}

.rsiWorksP86-card:hover .rsiWorksP86-image img {
    transform: scale(1.06);
}

.rsiWorksP86-category {
    position: absolute;
    left: 14px;
    top: 14px;
    padding: 6px 9px;
    border: 1px solid rgb(255 255 255 / 80%);
    border-radius: 5px;
    background: rgb(255 255 255 / 93%);
    color: #50687e;
    font-size: 10px;
    font-weight: 500;
}

.rsiWorksP86-cardBody {
    padding: 21px;
}

.rsiWorksP86-cardClient {
    display: block;
    margin-bottom: 11px;
    color: var(--p86-blue);
    font-size: 12px;
    font-weight: 500;
}

.rsiWorksP86-card h3 {
    margin: 0 0 17px;
    color: var(--p86-dark);
    font-size: 19px;
    font-weight: 500;
    line-height: 1.5;
}

.rsiWorksP86-location {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding-top: 13px;
    border-top: 1px solid #edf1f5;
    color: #83909d;
    font-size: 11px;
}

.rsiWorksP86-location svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
}

.rsiWorksP86-status {
    margin: 9px 0 0;
    color: #82909e;
    font-size: 11px;
}

.rsiWorksP86 button:focus-visible,
.rsiWorksP86 a:focus-visible,
.rsiWorksP86-track:focus-visible {
    outline: 3px solid #86b8df;
    outline-offset: 4px;
}

/* ================ CSS ANIMATION ================ */

@keyframes p86Float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes p86Halo {
    0%, 100% { transform: scale(1); opacity: .7; }
    50% { transform: scale(1.1); opacity: 1; }
}

@keyframes p86Pulse {
    from { transform: scale(.5); opacity: .8; }
    to { transform: scale(1.5); opacity: 0; }
}

@keyframes p86Reveal {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ================ RESPONSIVE ================ */

@media (max-width: 950px) {
    .rsiWorksP86-feature {
        grid-template-columns: minmax(0, 1fr);
    }

    .rsiWorksP86-visual {
        padding: 25px;
    }

    .rsiWorksP86-browser {
        max-width: 600px;
        margin-inline: auto;
    }

    .rsiWorksP86-browser img {
        aspect-ratio: 16 / 8;
    }

    .rsiWorksP86-track {
        grid-auto-columns: calc((100% - 20px) / 2);
        gap: 20px;
    }
}

@media (max-width: 580px) {
    .rsiWorksP86 {
        padding: 35px 14px;
    }

    .rsiWorksP86-feature {
        border-radius: 17px;
    }

    .rsiWorksP86-visual {
        padding: 19px;
    }

    .rsiWorksP86-featureBody {
        padding: 25px 20px;
    }

    .rsiWorksP86-toolbar {
        align-items: flex-start;
        gap: 14px;
    }

    .rsiWorksP86-filter {
        padding: 9px 13px;
        font-size: 11px;
    }

    .rsiWorksP86-track {
        grid-auto-columns: 100%;
        gap: 16px;
    }

    .rsiWorksP86-cardBody {
        padding: 19px;
    }

    .rsiWorksP86-intro p {
        font-size: 9px;
        letter-spacing: 1.4px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiWorksP86 *,
    .rsiWorksP86 *::before,
    .rsiWorksP86 *::after {
        animation: none !important;
        transition: none !important;
    }
}

/* ===== RSI CLIENT LOGO WALL — CSS ANIMATION ===== */

.clients-section {
    --rsi-logo-width: 180px;
    --rsi-logo-height: 106px;
    --rsi-logo-gap: 18px;

    padding: clamp(38px, 5vw, 70px) 0;
    background: #f6f8fb;
    overflow: hidden;
    color: #172330;
}

.clients-section,
.clients-section *,
.clients-section *::before,
.clients-section *::after {
    box-sizing: border-box;
}

.clients-section > .container {
    width: min(1240px, 100%);
    margin-inline: auto;
    padding-inline: 20px;
}

.clients-section .section-title {
    margin: 0 0 33px;
    color: #172330;
    font-size: clamp(27px, 3.4vw, 41px);
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
}

.clients-section .section-title span {
    color: #2879bc;
}

/* Soft fading edges */
.clients-section .client-logo-wall {
    display: grid;
    gap: var(--rsi-logo-gap);
    padding-block: 8px;
    overflow: hidden;

    -webkit-mask-image: linear-gradient(
        to right,
        transparent,
        #000 7%,
        #000 93%,
        transparent
    );

    mask-image: linear-gradient(
        to right,
        transparent,
        #000 7%,
        #000 93%,
        transparent
    );
}

/*
Each row already contains two identical sets.
Half the track width equals one complete set.
*/
.clients-section .client-row {
    display: flex;
    flex-wrap: nowrap;
    gap: var(--rsi-logo-gap);
    width: max-content;
    padding-right: var(--rsi-logo-gap);
    animation: rsiClientWallMove 38s linear infinite;
    will-change: transform;
}

.clients-section .client-row.row-two {
    animation-duration: 47.5s;
    animation-direction: reverse;
}

/* Logo cards */
.clients-section .client-logo-card {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 var(--rsi-logo-width);
    width: var(--rsi-logo-width);
    height: var(--rsi-logo-height);
    padding: 19px;
    border: 1px solid #e2e8ef;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 3px 8px rgb(24 47 70 / 3%);

    /* Prevent old card animations from conflicting */
    animation: none !important;

    transition:
        border-color .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}

.clients-section .client-logo-card img {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    object-fit: contain;
    transition: transform .4s ease;
}

.clients-section .client-logo-card:hover {
    border-color: #afcde5;
    box-shadow: 0 5px 14px rgb(40 87 126 / 9%);
}

.clients-section .client-logo-card:hover img {
    transform: scale(1.07);
}

/* Hide duplicate fallback text */
.clients-section .logo-fallback {
    display: none;
}

/* White EPPA logo needs a contrasting surface */
.clients-section .client-logo-card:has(
    img[src*="logo-full-en-white3.png"]
) {
    background: none;
    border-color: #d5d5d5;
}

/* Pause both rows while viewing a logo */
.clients-section .client-logo-wall:hover .client-row,
.clients-section .client-logo-wall:focus-within .client-row {
    animation-play-state: paused;
}

/* Seamless continuous movement */
@keyframes rsiClientWallMove {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

/* Tablet */
@media (max-width: 900px) {
    .clients-section {
        --rsi-logo-width: 155px;
        --rsi-logo-height: 94px;
        --rsi-logo-gap: 14px;
    }

    .clients-section .client-logo-card {
        padding: 16px;
    }
}

/* Mobile */
@media (max-width: 540px) {
    .clients-section {
        --rsi-logo-width: 132px;
        --rsi-logo-height: 83px;
        --rsi-logo-gap: 11px;
    }

    .clients-section .section-title {
        margin-bottom: 25px;
    }

    .clients-section .client-logo-card {
        padding: 13px;
        border-radius: 10px;
    }

    .clients-section .client-logo-wall {
        -webkit-mask-image: linear-gradient(
            to right,
            transparent,
            #000 4%,
            #000 96%,
            transparent
        );

        mask-image: linear-gradient(
            to right,
            transparent,
            #000 4%,
            #000 96%,
            transparent
        );
    }
}

/* Reduced motion: show original logos in a static grid */
@media (prefers-reduced-motion: reduce) {
    .clients-section .client-logo-wall {
        padding-inline: 16px;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .clients-section .client-row {
        display: grid;
        grid-template-columns: repeat(
            auto-fit,
            minmax(min(132px, 100%), 1fr)
        );
        width: 100%;
        padding-right: 0;
        animation: none;
        transform: none;
        will-change: auto;
    }

    .clients-section .client-logo-card {
        width: 100%;
        min-width: 0;
    }

    .clients-section .client-logo-card[aria-hidden="true"] {
        display: none;
    }

    .clients-section .client-logo-card,
    .clients-section .client-logo-card img {
        transition: none;
    }
}
.clients-section_NEW26 {
    padding: 22px 0;
    overflow: hidden;
    background: #ffffff;
}





/* ============== RSI PURE CSS SLIDER C58 ============== */

.rsiCssC58 {
    padding: clamp(38px, 5vw, 65px) 18px;
    background: #f4f7fa;
    color: #192b3b;
    font-family: inherit;
}

.rsiCssC58--blog {
    background: #fff;
}

.rsiCssC58,
.rsiCssC58 *,
.rsiCssC58 *::before,
.rsiCssC58 *::after {
    box-sizing: border-box;
}

.rsiCssC58-wrap {
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
    min-width: 0;
}

.rsiCssC58-title {
    margin-bottom: 29px;
}

.rsiCssC58-title::before {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    margin-bottom: 15px;
    border-radius: 4px;
    background: #2879bc;
}

.rsiCssC58-title h2 {
    margin: 0 0 11px;
    font-size: clamp(30px, 3.5vw, 42px);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: -.6px;
}

.rsiCssC58-title p {
    margin: 0;
    color: #7a8998;
    font-size: 10px;
    line-height: 1.7;
    letter-spacing: 1.8px;
}

/* Responsive slider versions */

.rsiCssC58-view {
    position: relative;
    min-width: 0;
}

.rsiCssC58-view--2,
.rsiCssC58-view--1 {
    display: none;
}

/* Native radio inputs control the slider */

.rsiCssC58-radio {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0;
    clip-path: inset(50%);
    white-space: nowrap;
}

.rsiCssC58-window {
    overflow: hidden;
    padding-block: 4px 14px;
}

.rsiCssC58-track {
    display: flex;
    align-items: stretch;
    width: 100%;
    transform: translateX(0);
    transition: transform .5s cubic-bezier(.22,.61,.36,1);
}

.rsiCssC58-page {
    display: grid;
    grid-template-columns: repeat(var(--c58-columns), minmax(0, 1fr));
    align-items: stretch;
    gap: 22px;
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    padding-inline: 2px;
}

/* White cards */

.rsiCssC58-card {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 27px;
    border: 1px solid #dfe7ef;
    border-radius: 16px;
    background: #fff;
    overflow: hidden;
    transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiCssC58-card:hover {
    border-color: #abcce5;
    box-shadow: inset 0 -3px 0 #2879bc;
}

.rsiCssC58-badge {
    align-self: flex-start;
    margin-bottom: 22px;
    padding: 7px 10px;
    border: 1px solid #e0eaf3;
    border-radius: 5px;
    background: #f0f5fa;
    color: #5b7c97;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 1.3px;
}

.rsiCssC58-date {
    display: block;
    margin-bottom: 13px;
    color: #84919f;
    font-size: 10px;
    line-height: 1.7;
}

.rsiCssC58-card h3 {
    margin: 0 0 16px;
    color: #192b3b;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.rsiCssC58-card h3 a {
    color: inherit;
    text-decoration: none;
}

.rsiCssC58-card h3 a:hover {
    color: #2879bc;
}

.rsiCssC58-text {
    margin: 0 0 24px;
    color: #687889;
    font-size: 14px;
    line-height: 1.9;
    overflow-wrap: anywhere;
}

.rsiCssC58-read {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid #e5ebf1;
    color: #2879bc;
    font-size: 12px;
    text-decoration: none;
}

.rsiCssC58-read::after {
    content: "↗";
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #edf4fa;
    font-size: 18px;
    transition: background .25s ease, color .25s ease;
}

.rsiCssC58-card:hover .rsiCssC58-read::after {
    background: #2879bc;
    color: #fff;
}

/* Blog CSS graphic — no external image required */

.rsiCssC58--blog .rsiCssC58-card::before {
    content: "";
    display: block;
    flex-shrink: 0;
    height: 105px;
    margin: -27px -27px 23px;
    border-bottom: 1px solid #e3ebf3;
    background:
        radial-gradient(
            circle at 75% 40%,
            #fff 0 19px,
            #cbddeb 20px 21px,
            transparent 22px
        ),
        radial-gradient(
            circle at 75% 40%,
            transparent 0 36px,
            #d7e4ef 37px 38px,
            transparent 39px
        ),
        linear-gradient(135deg, #eef4fa, #dce9f4);
}

.rsiCssC58--blog .rsiCssC58-badge {
    display: none;
}

/* Controls */

.rsiCssC58-controls {
    margin-top: 10px;
}

.rsiCssC58-nav {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 17px;
}

.rsiCssC58-arrow {
    display: grid;
    place-items: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border: 1px solid #d7e3ee;
    border-radius: 50%;
    background: #fff;
    color: #2879bc;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    user-select: none;
    transition: background .25s ease, color .25s ease;
}

.rsiCssC58-arrow:hover {
    background: #2879bc;
    color: #fff;
}

.rsiCssC58-arrow--disabled {
    opacity: .3;
    cursor: default;
    pointer-events: none;
}

.rsiCssC58-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
}

.rsiCssC58-dot {
    display: block;
    width: 9px;
    height: 9px;
    border-radius: 20px;
    background: #cbd8e4;
    cursor: pointer;
    transition: width .25s ease, background .25s ease;
}

.rsiCssC58-dot--active {
    width: 24px;
    background: #2879bc;
}

.rsiCssC58 a:focus-visible {
    outline: 3px solid #87b8df;
    outline-offset: 4px;
}

.rsiCssC58-empty {
    margin: 0;
    padding: 23px;
    border: 1px solid #e0e7ef;
    border-radius: 12px;
    background: #fff;
    color: #748291;
    font-size: 14px;
}

/* Tablet: two cards */
@media (max-width: 950px) {
    .rsiCssC58-view--3 {
        display: none;
    }

    .rsiCssC58-view--2 {
        display: block;
    }
}

/* Mobile: one card */
@media (max-width: 580px) {
    .rsiCssC58 {
        padding: 35px 14px;
    }

    .rsiCssC58-view--2 {
        display: none;
    }

    .rsiCssC58-view--1 {
        display: block;
    }

    .rsiCssC58-card {
        padding: 23px;
    }

    .rsiCssC58-card h3 {
        font-size: 20px;
    }

    .rsiCssC58-text {
        font-size: 13px;
    }

    .rsiCssC58--blog .rsiCssC58-card::before {
        margin: -23px -23px 21px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiCssC58 *,
    .rsiCssC58 *::before,
    .rsiCssC58 *::after {
        transition: none !important;
    }
}
















/* ============== RSI CLIENT PORTFOLIO S89 ============== */

.rsiClientsS89 {
    --s89-blue: #2879bc;
    --s89-dark: #22394e;
    padding: clamp(35px, 5vw, 65px) 18px;
    background: #f6f8fb;
    color: var(--s89-dark);
    font-family: inherit;
    margin-top: 60px;
}

.rsiClientsS89,
.rsiClientsS89 *,
.rsiClientsS89 *::before,
.rsiClientsS89 *::after {
    box-sizing: border-box;
}

.rsiClientsS89-wrap {
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
}

.rsiClientsS89-intro {
    margin-bottom: 29px;
}

.rsiClientsS89-intro::before {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    margin-bottom: 15px;
    border-radius: 5px;
    background: var(--s89-blue);
}

.rsiClientsS89-intro h2 {
    margin: 0 0 12px;
    color: #192c3e;
    font-size: clamp(28px, 3.4vw, 40px);
    font-weight: 500;
    line-height: 1.3;
}

.rsiClientsS89-intro p {
    margin: 0;
    color: #748496;
    font-size: 14px;
    line-height: 1.8;
}

/* Grid */

.rsiClientsS89-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
    gap: 20px;
}

/* Cards */

.rsiClientsS89-card {
    position: relative;
    min-width: 0;
    border: 1px solid #e0e7ef;
    border-radius: 15px;
    background: #fff;
    overflow: hidden;

    transition:
        border-color .35s ease,
        box-shadow .35s ease,
        transform .45s cubic-bezier(.22,.61,.36,1);
}

.rsiClientsS89-card::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0 0 auto;
    height: 3px;
    background: var(--s89-blue);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .45s cubic-bezier(.22,.61,.36,1);
}

.rsiClientsS89-card:hover,
.rsiClientsS89-card:focus-within {
    border-color: #aecce4;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgb(25 62 95 / 8%);
}

.rsiClientsS89-card:hover::before,
.rsiClientsS89-card:focus-within::before {
    transform: scaleX(1);
}

.rsiClientsS89-card:focus-visible {
    outline: 3px solid #8ab9dc;
    outline-offset: 4px;
}

/* Logos */

.rsiClientsS89-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 139px;
    padding: 22px;
    background: #fff;
}

.rsiClientsS89-logo img {
    display: block;
    width: 100%;
    max-width: 205px;
    height: 91px;
    object-fit: contain;
    transition: transform .5s cubic-bezier(.22,.61,.36,1);
}

.rsiClientsS89-card:hover .rsiClientsS89-logo img,
.rsiClientsS89-card:focus-within .rsiClientsS89-logo img {
    transform: scale(1.045);
}

/* Client name */

.rsiClientsS89-name {
display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
    padding: 15px 18px;
    border-top: 1px solid #edf1f5;
    color: #3c5267;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.rsiClientsS89-name::after {
    content: "+";
    display: grid;
    place-items: center;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #edf4fa;
    color: var(--s89-blue);
    font-size: 17px;
    line-height: 1;
    transition:
        transform .4s ease,
        background .3s ease,
        color .3s ease;
}

.rsiClientsS89-card:hover .rsiClientsS89-name::after,
.rsiClientsS89-card:focus-within .rsiClientsS89-name::after {
    transform: rotate(45deg);
    background: var(--s89-blue);
    color: #fff;
}

/* Smooth natural-height animation */

.rsiClientsS89-reveal {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition:
        grid-template-rows .5s cubic-bezier(.22,.61,.36,1),
        opacity .35s ease;
}

.rsiClientsS89-card:hover .rsiClientsS89-reveal,
.rsiClientsS89-card:focus-within .rsiClientsS89-reveal {
    grid-template-rows: 1fr;
    opacity: 1;
}

.rsiClientsS89-inner {
    min-height: 0;
    overflow: hidden;
    background: #f5f8fc;
}

.rsiClientsS89-services {
    display: grid;
    gap: 9px;
    margin: 0;
    padding: 17px 18px 20px;
    list-style: none;
    transform: translateY(7px);
    transition: transform .5s cubic-bezier(.22,.61,.36,1);
}

.rsiClientsS89-card:hover .rsiClientsS89-services,
.rsiClientsS89-card:focus-within .rsiClientsS89-services {
    transform: translateY(0);
}

.rsiClientsS89-services li {
    position: relative;
    padding-left: 15px;
    color: #687c8f;
    font-size: 15px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.rsiClientsS89-services li::before {
    content: "";
    position: absolute;
    left: 1px;
    top: 8px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--s89-blue);
}

/* Responsive */

@media (max-width: 1050px) {
    .rsiClientsS89-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 17px;
    }
}

@media (max-width: 720px) {
    .rsiClientsS89-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .rsiClientsS89-logo {
        height: 115px;
        padding: 16px;
    }

    .rsiClientsS89-logo img {
        height: 79px;
    }
}

/* Touch devices: information remains accessible */
@media (hover: none), (pointer: coarse) {
    .rsiClientsS89-reveal {
        grid-template-rows: 1fr;
        opacity: 1;
    }

    .rsiClientsS89-services {
        transform: none;
    }

    .rsiClientsS89-name::after {
        display: none;
    }

    .rsiClientsS89-card:hover {
        transform: none;
    }
}

@media (max-width: 440px) {
    .rsiClientsS89 {
        padding: 32px 13px;
    }

    .rsiClientsS89-grid {
        gap: 11px;
    }

    .rsiClientsS89-logo {
        height: 100px;
        padding: 13px;
    }

    .rsiClientsS89-logo img {
        height: 70px;
    }

    .rsiClientsS89-name {
        padding: 12px;
        font-size: 12px;
    }

    .rsiClientsS89-services {
        padding: 13px 12px 16px;
    }

    .rsiClientsS89-services li {
        font-size: 11px;
    }
}

@media (max-width: 340px) {
    .rsiClientsS89-grid {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiClientsS89 *,
    .rsiClientsS89 *::before,
    .rsiClientsS89 *::after {
        transition: none !important;
    }
}
/* ===== FIXED CARDS — NO PAGE MOVEMENT ON HOVER ===== */

.rsiClientsS89-grid {
    align-items: stretch;
}

.rsiClientsS89-card {
    position: relative;
    height: 240px;
    overflow: hidden;
    isolation: isolate;
}

/* Remove vertical movement */
.rsiClientsS89-card:hover,
.rsiClientsS89-card:focus-within {
    transform: none;
    border-color: #a9c9e3;
    box-shadow: 0 8px 22px rgb(25 62 95 / 9%);
}

.rsiClientsS89-logo {
    height: 160px;
}

.rsiClientsS89-name {
    position: relative;
    margin: 0;
    padding: 15px 18px;
}

/* Details overlay stays inside the card */
.rsiClientsS89-reveal {
    position: absolute;
    z-index: 3;
    inset: 0;

    display: flex;
    flex-direction: column;

    padding-top: 12px;
    background: rgb(245 249 253 / 98%);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(100%);

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1),
        opacity .3s ease,
        visibility 0s linear .45s;
}

.rsiClientsS89-card:hover .rsiClientsS89-reveal,
.rsiClientsS89-card:focus-within .rsiClientsS89-reveal {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

/* Keep client name visible above the overlay */
.rsiClientsS89-name {
    z-index: 4;
    transition: color .3s ease;
}

.rsiClientsS89-card:hover .rsiClientsS89-name,
.rsiClientsS89-card:focus-within .rsiClientsS89-name {
    color: #2879bc;
}

/* Overlay leaves space for the name at the bottom */
.rsiClientsS89-inner {
    min-height: 0;
    flex: 1;
    margin-bottom: 80px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #c4d6e6 transparent;
    background: transparent;
}

.rsiClientsS89-services {
    margin: 0;
    padding: 15px 20px;
    gap: 10px;
    transform: none;
}

.rsiClientsS89-services li {
    color: #526c83;
    font-size: 15px;
    line-height: 1.8;
}

/* Logo subtly fades behind the overlay */
.rsiClientsS89-logo img {
    transition: opacity .3s ease, transform .4s ease;
}

.rsiClientsS89-card:hover .rsiClientsS89-logo img,
.rsiClientsS89-card:focus-within .rsiClientsS89-logo img {
    opacity: .15;
    transform: scale(.96);
}

/* Touch devices: show content normally, without hover */
@media (hover: none), (pointer: coarse) {
    .rsiClientsS89-card {
        height: auto;
    }

    .rsiClientsS89-reveal {
        position: static;
        display: block;
        padding-top: 0;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .rsiClientsS89-inner {
        margin-bottom: 0;
        overflow: visible;
    }

    .rsiClientsS89-logo img,
    .rsiClientsS89-card:hover .rsiClientsS89-logo img {
        opacity: 1;
        transform: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiClientsS89-reveal {
        transition: none;
    }
}
























/* ================= RSI JOURNEY FULL PAGE F96 ================= */

.rsiJourneyF96 {
    --f96-blue: #2879bc;
    --f96-dark: #1d3042;
    --f96-text: #64788b;
    color: var(--f96-dark);
    background: #fff;
    font-family: inherit;
    font-size: 15px;
}

.rsiJourneyF96,
.rsiJourneyF96 *,
.rsiJourneyF96 *::before,
.rsiJourneyF96 *::after {
    box-sizing: border-box;
}

.rsiJourneyF96-wrap {
    width: 100%;
    max-width: 1240px;
    margin-inline: auto;
    padding-inline: 20px;
}

.rsiJourneyF96-section {
    padding-block: clamp(38px, 5vw, 65px);
}

.rsiJourneyF96-soft {
    background: #f5f7fa;
}

.rsiJourneyF96 h2,
.rsiJourneyF96 h3 {
    color: var(--f96-dark);
    font-weight: 500;
}

.rsiJourneyF96 h2 {
    margin: 0 0 21px;
    font-size: clamp(27px, 3vw, 36px);
    line-height: 1.35;
    letter-spacing: -.5px;
}

.rsiJourneyF96 h3 {
    margin: 0 0 16px;
    font-size: 24px;
    line-height: 1.4;
}

.rsiJourneyF96 p {
    margin: 0 0 20px;
    color: var(--f96-text);
    font-size: 15px;
    line-height: 1.95;
    overflow-wrap: anywhere;
}

.rsiJourneyF96 p:last-child {
    margin-bottom: 0;
}

.rsiJourneyF96-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px;
    color: #527fa4;
    font-size: 15px;
    line-height: 1.6;
}

.rsiJourneyF96-eyebrow::before {
    content: "";
    flex: 0 0 27px;
    height: 3px;
    border-radius: 4px;
    background: var(--f96-blue);
}

/* ================= CSS SLIDER ================= */

.rsiJourneyF96-hero {
    background: #f3f7fb;
}

.rsiJourneyF96-radio {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap;
}

.rsiJourneyF96-slides {
    display: grid;
}

.rsiJourneyF96-slide {
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    align-items: center;
    gap: 40px;
    min-width: 0;
    padding-block: clamp(40px, 5vw, 65px);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px);

    transition:
        opacity .45s ease,
        transform .5s cubic-bezier(.22,.61,.36,1),
        visibility 0s linear .5s;
}

.rsiJourneyF96-slide h2 {
    margin-bottom: 22px;
    font-size: clamp(31px, 3.8vw, 48px);
    line-height: 1.23;
    letter-spacing: -.8px;
}

.rsiJourneyF96-slide p {
    margin: 0;
}

#rsiF96-1:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--1,
#rsiF96-2:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--2,
#rsiF96-3:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--3,
#rsiF96-4:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--4,
#rsiF96-5:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--5 {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

.rsiJourneyF96-art {
    min-width: 0;
}

.rsiJourneyF96-art > svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

.rsiJourneyF96-slide svg * {
    animation-play-state: paused;
}

#rsiF96-1:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--1 svg *,
#rsiF96-2:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--2 svg *,
#rsiF96-3:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--3 svg *,
#rsiF96-4:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--4 svg *,
#rsiF96-5:checked ~ .rsiJourneyF96-slides .rsiJourneyF96-slide--5 svg * {
    animation-play-state: running;
}

/* Slider navigation */

.rsiJourneyF96-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding-bottom: 30px;
}

.rsiJourneyF96-dots {
    display: flex;
    align-items: center;
    gap: 9px;
}

.rsiJourneyF96-dot {
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 20px;
    background: #c4d6e5;
    cursor: pointer;
    transition: width .3s ease, background .3s ease;
}

#rsiF96-1:checked ~ .rsiJourneyF96-controls label[for="rsiF96-1"].rsiJourneyF96-dot,
#rsiF96-2:checked ~ .rsiJourneyF96-controls label[for="rsiF96-2"].rsiJourneyF96-dot,
#rsiF96-3:checked ~ .rsiJourneyF96-controls label[for="rsiF96-3"].rsiJourneyF96-dot,
#rsiF96-4:checked ~ .rsiJourneyF96-controls label[for="rsiF96-4"].rsiJourneyF96-dot,
#rsiF96-5:checked ~ .rsiJourneyF96-controls label[for="rsiF96-5"].rsiJourneyF96-dot {
    width: 28px;
    background: var(--f96-blue);
}

.rsiJourneyF96-arrows {
    display: none;
    gap: 8px;
}

.rsiJourneyF96-arrows label {
    display: grid;
    place-items: center;
    width: 39px;
    height: 39px;
    border: 1px solid #d2e0ec;
    border-radius: 50%;
    background: #fff;
    color: var(--f96-blue);
    font-size: 25px;
    cursor: pointer;
    transition: background .25s ease, color .25s ease;
}

.rsiJourneyF96-arrows label:hover {
    background: var(--f96-blue);
    color: #fff;
}

#rsiF96-1:checked ~ .rsiJourneyF96-controls .rsiJourneyF96-arrows--1,
#rsiF96-2:checked ~ .rsiJourneyF96-controls .rsiJourneyF96-arrows--2,
#rsiF96-3:checked ~ .rsiJourneyF96-controls .rsiJourneyF96-arrows--3,
#rsiF96-4:checked ~ .rsiJourneyF96-controls .rsiJourneyF96-arrows--4,
#rsiF96-5:checked ~ .rsiJourneyF96-controls .rsiJourneyF96-arrows--5 {
    display: flex;
}

#rsiF96-1:focus-visible ~ .rsiJourneyF96-controls label[for="rsiF96-1"].rsiJourneyF96-dot,
#rsiF96-2:focus-visible ~ .rsiJourneyF96-controls label[for="rsiF96-2"].rsiJourneyF96-dot,
#rsiF96-3:focus-visible ~ .rsiJourneyF96-controls label[for="rsiF96-3"].rsiJourneyF96-dot,
#rsiF96-4:focus-visible ~ .rsiJourneyF96-controls label[for="rsiF96-4"].rsiJourneyF96-dot,
#rsiF96-5:focus-visible ~ .rsiJourneyF96-controls label[for="rsiF96-5"].rsiJourneyF96-dot {
    outline: 3px solid #8bbadd;
    outline-offset: 5px;
}

/* ================= PROCESS STEPS ================= */

.rsiJourneyF96-process {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiJourneyF96-step {
    position: relative;
    min-width: 0;
    text-align: center;
}

.rsiJourneyF96-step:not(:last-child)::after {
    content: "→";
    position: absolute;
    right: -24px;
    top: 66px;
    width: 24px;
    color: #87accb;
    font-size: 23px;
    animation: f96Arrow 2.5s ease-in-out infinite;
}

.rsiJourneyF96-stepNumber {
    display: block;
    margin-bottom: 12px;
    color: #a1b3c2;
    font-size: 15px;
}

.rsiJourneyF96-stepIcon {
    display: grid;
    place-items: center;
    width: 77px;
    height: 77px;
    margin: 0 auto 17px;
    border: 1px solid #dfe9f2;
    border-radius: 21px;
    background: linear-gradient(140deg, #fff, #eff5fa);
    color: #6c8da9;
    box-shadow: 0 5px 0 #e7eef5;
    transition: color .3s ease, border-color .3s ease;
}

.rsiJourneyF96-stepIcon svg {
    width: 43px;
    height: 43px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rsiJourneyF96-step:hover .rsiJourneyF96-stepIcon {
    color: var(--f96-blue);
    border-color: #adcce4;
}

.rsiJourneyF96-step h3 {
    margin: 0;
    color: #3979ac;
    font-size: 15px;
    line-height: 1.6;
}

/* ================= EIGHT SERVICE ICONS ================= */

.rsiJourneyF96-iconGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-top: 30px;
}

.rsiJourneyF96-iconCard {
    display: flex;
    align-items: center;
    gap: 15px;
    min-width: 0;
    padding: 21px 17px;
    border: 1px solid #e0e8f0;
    border-radius: 13px;
    background: #fff;
    transition: border-color .3s ease, box-shadow .3s ease;
}

.rsiJourneyF96-iconCard:hover {
    border-color: #aecce3;
    box-shadow: 0 7px 18px rgb(24 59 91 / 5%);
}

.rsiJourneyF96-iconTile {
    display: grid;
    place-items: center;
    flex: 0 0 55px;
    width: 55px;
    height: 55px;
    border-radius: 15px;
    background: var(--tile-bg, #eef5fc);
    color: var(--tile-color, #387fb6);
    box-shadow: 0 4px 0 var(--tile-shadow, #dce9f5);
}

.rsiJourneyF96-iconTile svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    animation: f96Icon 5s ease-in-out infinite;
}

.rsiJourneyF96-iconCard:nth-child(even) svg {
    animation-delay: -2.5s;
}

.rsiJourneyF96-iconCard h3 {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
}

.rsiJourneyF96-purple {
    --tile-bg: #f4effb;
    --tile-color: #8d6abb;
    --tile-shadow: #e5d9f2;
}

.rsiJourneyF96-green {
    --tile-bg: #eef9f3;
    --tile-color: #4c9b7c;
    --tile-shadow: #d9ebdf;
}

.rsiJourneyF96-gold {
    --tile-bg: #fff6e7;
    --tile-color: #bb8c43;
    --tile-shadow: #f0e1c5;
}

.rsiJourneyF96-pink {
    --tile-bg: #fbf0f6;
    --tile-color: #ba7396;
    --tile-shadow: #eedbe5;
}

/* ================= PRODUCTIVITY ================= */

.rsiJourneyF96-productivity {
    padding: clamp(23px, 3vw, 35px);
    border: 1px solid #dce7f1;
    border-left: 4px solid var(--f96-blue);
    border-radius: 15px;
    background: #f3f8fc;
}

/* ================= SOLUTIONS ================= */

.rsiJourneyF96-solutions {
    display: grid;
    gap: 25px;
    margin-top: 29px;
}

.rsiJourneyF96-solution {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
    align-items: center;
    gap: clamp(25px, 4vw, 50px);
    padding: clamp(23px, 3vw, 37px);
    border: 1px solid #e1e8ef;
    border-radius: 19px;
    background: #fff;
}

.rsiJourneyF96-solution--reverse {
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
}

.rsiJourneyF96-solution--reverse .rsiJourneyF96-picture {
    order: -1;
}

.rsiJourneyF96-solutionNumber {
    display: block;
    margin-bottom: 12px;
    color: #809bb1;
    font-size: 15px;
}

.rsiJourneyF96-solution h3 {
    font-size: clamp(24px, 2.6vw, 30px);
}

.rsiJourneyF96-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 22px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsiJourneyF96-list li {
    position: relative;
    min-width: 0;
    padding: 11px 0 11px 21px;
    border-bottom: 1px solid #e7edf3;
    color: #64798c;
    font-size: 15px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.rsiJourneyF96-list li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 22px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--f96-blue);
    box-shadow: 0 0 0 3px #edf4fa;
}

.rsiJourneyF96-picture {
    display: block;
    min-width: 0;
    padding: 15px;
    border-radius: 17px;
    background: #f7f9fc;
}

.rsiJourneyF96-picture img {
    display: block;
    width: 100%;
    max-width: 355px;
    height: auto;
    margin-inline: auto;
    object-fit: contain;
    animation: f96Float 7s ease-in-out infinite;
}

.rsiJourneyF96-solution:nth-child(even) img {
    animation-delay: -3.5s;
}

/* ================= BUTTONS ================= */

.rsiJourneyF96-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.rsiJourneyF96-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 17px;
    min-height: 49px;
    padding: 13px 22px;
    border: 1px solid var(--f96-blue);
    border-radius: 9px;
    background: var(--f96-blue);
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: background .25s ease, transform .25s ease;
}

.rsiJourneyF96-btn::after {
    content: "↗";
    font-size: 19px;
}

.rsiJourneyF96-btn--outline {
    background: #fff;
    color: var(--f96-blue);
}

.rsiJourneyF96-btn:hover {
    background: #1d5e93;
    color: #fff;
    transform: translateY(-3px);
}

.rsiJourneyF96 a:focus-visible {
    outline: 3px solid #87b8df;
    outline-offset: 4px;
}

/* ================= TECHNOLOGY ================= */

.rsiJourneyF96-techGrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 24px;
    margin: 28px 0;
}

.rsiJourneyF96-techCard {
    min-width: 0;
    padding: 26px;
    border: 1px solid #e0e8ef;
    border-radius: 15px;
    background: #f6f9fc;
}

.rsiJourneyF96-techCard .rsiJourneyF96-list {
    grid-template-columns: 1fr;
}

.rsiJourneyF96-dataflow {
    margin: 28px 0;
    padding: 25px;
    border: 1px solid #e0e8ef;
    border-radius: 15px;
    background: #fff;
}

.rsiJourneyF96-dataflow img {
    display: block;
    width: 100%;
    max-width: 1000px;
    height: auto;
    margin-inline: auto;
}

.rsiJourneyF96-contact {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 22px;
    padding: 28px;
    border: 1px solid #dce6ef;
    border-radius: 15px;
    background: #f0f6fb;
}

.rsiJourneyF96-contact h3 {
    margin: 0;
}

.rsiJourneyF96-contact .rsiJourneyF96-actions {
    margin: 0;
}

/* ================= ANIMATIONS ================= */

.rsiF96-float {
    animation: f96Float 6s ease-in-out infinite;
}

.rsiF96-delay {
    animation-delay: -3s;
}

.rsiF96-bar {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation: f96Bar 4s ease-in-out infinite;
}

.rsiF96-bar:nth-child(2) { animation-delay: -.7s; }
.rsiF96-bar:nth-child(3) { animation-delay: -1.4s; }
.rsiF96-bar:nth-child(4) { animation-delay: -2.1s; }

.rsiF96-dash {
    stroke-dasharray: 6 8;
    animation: f96Dash 10s linear infinite;
}

.rsiF96-spin {
    transform-box: fill-box;
    transform-origin: center;
    animation: f96Spin 16s linear infinite;
}

.rsiF96-pulse {
    animation: f96Pulse 3s ease-in-out infinite;
}

.rsiF96-paper {
    animation: f96Print 4s ease-in-out infinite;
}

.rsiF96-star {
    transform-box: fill-box;
    transform-origin: center;
    animation: f96Star 3s ease-in-out infinite;
}

.rsiF96-star:nth-child(2) { animation-delay: .3s; }
.rsiF96-star:nth-child(3) { animation-delay: .6s; }

@keyframes f96Float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes f96Icon {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-3px); }
}

@keyframes f96Bar {
    0%, 100% { transform: scaleY(.7); }
    50% { transform: scaleY(1); }
}

@keyframes f96Dash {
    to { stroke-dashoffset: -140; }
}

@keyframes f96Spin {
    to { transform: rotate(360deg); }
}

@keyframes f96Pulse {
    0%, 100% { opacity: .45; }
    50% { opacity: 1; }
}

@keyframes f96Print {
    0%, 100% { transform: translateY(-3px); }
    50% { transform: translateY(6px); }
}

@keyframes f96Star {
    0%, 100% { opacity: .6; transform: scale(.9); }
    50% { opacity: 1; transform: scale(1.1); }
}

@keyframes f96Arrow {
    0%, 100% { transform: translateX(-2px); opacity: .5; }
    50% { transform: translateX(2px); opacity: 1; }
}

/* ================= RESPONSIVE ================= */

@media (max-width: 1050px) {
    .rsiJourneyF96-process {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 28px 22px;
    }

    .rsiJourneyF96-step:nth-child(4)::after {
        display: none;
    }

    .rsiJourneyF96-iconGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .rsiJourneyF96-slide,
    .rsiJourneyF96-solution,
    .rsiJourneyF96-solution--reverse,
    .rsiJourneyF96-techGrid {
        grid-template-columns: 1fr;
    }

    .rsiJourneyF96-slide {
        align-content: start;
        gap: 25px;
    }

    .rsiJourneyF96-art {
        width: 100%;
        max-width: 410px;
        margin-inline: auto;
    }

    .rsiJourneyF96-solution--reverse .rsiJourneyF96-picture {
        order: 0;
    }

    .rsiJourneyF96-picture img {
        max-width: 300px;
    }
}

@media (max-width: 540px) {
    .rsiJourneyF96-wrap {
        padding-inline: 15px;
    }

    .rsiJourneyF96-process {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 28px 20px;
    }

    .rsiJourneyF96-step:nth-child(even)::after {
        display: none;
    }

    .rsiJourneyF96-iconGrid {
        gap: 12px;
    }

    .rsiJourneyF96-iconCard {
        flex-direction: column;
        align-items: flex-start;
        padding: 18px 14px;
    }

    .rsiJourneyF96-list {
        grid-template-columns: 1fr;
    }

    .rsiJourneyF96-btn,
    .rsiJourneyF96-contact .rsiJourneyF96-actions {
        width: 100%;
    }

    .rsiJourneyF96-techCard,
    .rsiJourneyF96-contact {
        padding: 23px;
    }

    .rsiJourneyF96-dataflow {
        padding: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rsiJourneyF96 *,
    .rsiJourneyF96 *::before,
    .rsiJourneyF96 *::after {
        animation: none !important;
        transition: none !important;
    }
}