html:has(.rc-site) {
    scroll-behavior:smooth
}
.rc-site {
    --ink:#153b52;
    --blue:#207aae;
    --yellow:#ffc400;
    --muted:#5a7280;
    font-family:Arial,Helvetica,sans-serif;
    color:var(--ink);
    background:#fffdf8;
    line-height:1.6
}
.rc-site *,.rc-footer * {
    box-sizing:border-box
}
.rc-site h1,.rc-site h2,.rc-site h3,.rc-site p,.rc-site figure {
    margin:0
}
.rc-site a,.rc-footer a {
    text-decoration:none;
    color:inherit
}
.rc-site img {
    display:block;
    max-width:100%
}
.rc-site button {
    font:inherit;
    cursor:pointer
}
.rc-site a:focus-visible,.rc-site button:focus-visible,.rc-footer a:focus-visible {
    outline:3px solid #207aae;
    outline-offset:6px
}
.rc-site section {
    scroll-margin-top:110px
}
.rc-wrap {
    width:min(1180px,calc(100% - 64px));
    margin-inline:auto
}
.rc-header {
    position:sticky;
    top:0;
    z-index:20;
    background:#fffdf8f5;
    border-bottom:1px solid #e7e7df;
    backdrop-filter:blur(12px)
}
.rc-nav {
    height:94px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px
}
.rc-logo {
    width:150px;
    height:60px;
    object-fit:contain
}
.rc-nav nav {
    display:flex;
    gap:30px;
    font-size:14px;
    font-weight:600
}
.rc-nav nav a:hover,.rc-text-link:hover {
    color:#207aae
}
.rc-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    background:var(--yellow);
    border-radius:100px;
    padding:16px 26px;
    font-size:15px;
    font-weight:700;
    transition:transform .2s,background .2s
}
.rc-button:hover {
    background:#ffda55;
    transform:translateY(-2px)
}
.rc-button-small {
    padding:12px 22px
}
.rc-hero {
    overflow:hidden;
    background:radial-gradient(ellipse at 82% 45%,#e2edf0 0,transparent 50%)
}
.rc-hero-grid {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    align-items:center;
    gap:30px;
    min-height:740px;
    padding-block:65px
}
.rc-eyebrow {
    text-transform:uppercase;
    font-size:11px;
    font-weight:700;
    letter-spacing:1.8px;
    color:#207aae;
    margin-bottom:22px!important
}
.rc-eyebrow span {
    display:inline-block;
    width:8px;
    height:8px;
    background:#207aae;
    border-radius:50%;
    margin-right:8px
}
.rc-site h1 {
    font-size:clamp(40px,4.5vw,64px);
    line-height:1.09;
    letter-spacing:-3px;
    font-weight:800
}
.rc-site em {
    font-style:normal;
    color:#207aae
}
.rc-lead {
    font-size:18px;
    color:var(--muted);
    max-width:490px;
    margin-block:26px 28px!important;
    line-height:1.8
}
.rc-stores {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px
}
.rc-stores a {
    display:inline-block;
    transition:transform .2s
}
.rc-stores a:hover {
    transform:translateY(-3px)
}
.rc-stores img {
    height:54px;
    width:auto;
    max-width:180px;
    object-fit:contain
}
.rc-text-link {
    display:inline-flex;
    gap:18px;
    font-size:14px;
    font-weight:bold;
    margin-top:24px
}
.rc-small {
    font-size:12px;
    color:var(--muted);
    margin-top:14px!important
}
.rc-hero-visual {
    height:580px;
    position:relative
}
.rc-orbit {
    position:absolute;
    width:470px;
    height:470px;
    border-radius:50%;
    background:#dcecf0;
    top:50px;
    left:0;
    border:1px solid #d0e3e8
}
.rc-phone {
    position:absolute;
    box-shadow:0 25px 45px #163e552b;
    width:225px;
    height:auto
}
.rc-phone img,
.rc-screen-link img,
.rc-lightbox img {
    aspect-ratio:430 / 932;
    object-fit:cover;
    object-position:top;
    filter:blur(4px)
}
.rc-device {
    --screen-ratio:430 / 932;
    position:relative;
    aspect-ratio:var(--screen-ratio);
    border:6px solid #18232d;
    border-radius:32px;
    background:#18232d;
    overflow:hidden;
    isolation:isolate;
    outline:1px solid #6d7780
}
.rc-phone.rc-device {
    position:absolute
}
.rc-device img {
    width:100%;
    height:100%;
    aspect-ratio:auto;
    object-fit:cover;
    object-position:top
}
.rc-device::before {
    content:'';
    position:absolute;
    z-index:2;
    top:7px;
    left:50%;
    transform:translateX(-50%);
    width:29%;
    height:14px;
    border-radius:20px;
    background:#101419
}
.rc-device::after {
    content:'';
    position:absolute;
    z-index:2;
    bottom:6px;
    left:50%;
    transform:translateX(-50%);
    width:34%;
    height:4px;
    border-radius:4px;
    background:#101419
}
.rc-device-android {
    --screen-ratio:9 / 20;
    border-radius:23px
}
.rc-device-android::before {
    width:9px;
    height:9px;
    top:7px
}
.rc-phone-back {
    left:10px;
    top:5px;
    transform:rotate(-9deg)
}
.rc-phone-front {
    right:20px;
    top:25px;
    transform:rotate(7deg);
    width:211px
}
.rc-floating {
    position:absolute;
    z-index:3;
    bottom:45px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    gap:12px;
    width:max-content;
    max-width:calc(100% - 24px);
    padding:14px 18px;
    background:rgba(255,255,255,.96);
    border:1px solid #dce7eb;
    border-radius:18px;
    box-shadow:0 12px 30px #163e551a;
    font-size:14px;
    font-weight:600
}
.rc-floating img {
    width:40px;
    height:40px;
    flex-shrink:0;
    border-radius:11px
}
.rc-floating-label {
    display:block;
    margin-bottom:2px;
    font-size:11px;
    font-weight:500;
    color:#5a7280
}
.rc-ribbon {
    background:#173e54;
    color:white;
    padding:22px 0;
    font-size:14px
}
.rc-ribbon .rc-wrap {
    display:grid;
    grid-template-columns:minmax(0,1fr) 0 minmax(0,1fr) 0 minmax(0,1fr);
    align-items:center;
    text-align:center
}
.rc-ribbon .rc-wrap>span {
    padding-inline:18px
}
.rc-ribbon-dot {
    display:block;
    width:8px;
    height:8px;
    justify-self:center;
    border-radius:50%;
    background:#ffc400
}
.rc-section {
    padding-block:100px
}
.rc-section-heading {
    max-width:700px;
    margin-bottom:46px
}
.rc-site h2 {
    font-size:clamp(32px,3.5vw,46px);
    line-height:1.15;
    letter-spacing:-1.8px;
    font-weight:750
}
.rc-section-heading>p:last-child {
    margin-top:20px;
    color:var(--muted);
    font-size:17px
}
.rc-cards {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px
}
.rc-card {
    padding:32px;
    background:#f3f3eb;
    border:1px solid #e8e9e0;
    border-radius:18px
}
.rc-card:nth-child(2) {
    background:#eaf2f5;
    border-color:#dce8ed
}
.rc-card:nth-child(3) {
    background:#fff2c4;
    border-color:#f3e5b1
}
.rc-site h3 {
    font-size:21px;
    line-height:1.3;
    font-weight:700;
    letter-spacing:-.4px
}
.rc-card p {
    margin-top:16px;
    color:#496473;
    font-size:15px
}
.rc-showcase {
    background:#eef3f5;
    padding-block:90px
}
.rc-showcase .rc-section-heading {
    text-align:center;
    margin:0 auto 50px
}
.rc-screens {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
    padding-inline:35px
}
.rc-screen-link {
    display:block;
    position:relative;
    max-width:270px;
    margin:auto;
    box-shadow:0 20px 35px #153b521a;
    background:white
}
.rc-screen-link img {
    width:100%;
    height:100%
}
.rc-screen-link span {
    position:absolute;
    bottom:16px;
    right:16px;
    background:#173e54;
    color:white;
    padding:7px 14px;
    border-radius:30px;
    font-size:12px;
    box-shadow:0 2px 10px #0002
}
.rc-screens figcaption {
    margin-top:28px;
    text-align:center
}
.rc-screens figcaption p {
    font-size:14px;
    color:var(--muted);
    margin-top:10px
}
.rc-step-cards {
    scroll-margin-top:110px
}
.rc-steps ol {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    list-style:none;
    padding:0;
    margin:0
}
.rc-steps li {
    padding:24px;
    border:1px solid #dce7eb;
    border-radius:20px;
    background:#f0f5f6
}
.rc-steps li:nth-child(2),
.rc-steps li:nth-child(4) {
    background:#fff9e6;
    border-color:#f1e7c3
}
.rc-step-art {
    margin-bottom:20px
}
.rc-step-art svg {
    display:block;
    width:100%;
    height:120px
}
.rc-steps li h3 {
    font-size:19px;
    line-height:1.35
}
.rc-steps li p {
    margin-top:10px;
    color:var(--muted);
    font-size:15px
}
.rc-download-wrap {
    padding-top:80px;
    padding-bottom:90px
}
.rc-download {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:40px;
    background:radial-gradient(ellipse at 100% 50%,#245b83 0%,transparent 65%),linear-gradient(120deg,#112b49,#173e63);
    color:white;
    border-radius:26px;
    padding:60px;
    overflow:hidden
}
.rc-download .rc-eyebrow {
    color:#ffda56
}
.rc-download>div>p:not(.rc-eyebrow) {
    color:#d0e0e7;
    margin-block:22px
}
.rc-download .rc-small {
    max-width:380px;
    margin-bottom:0!important
}
.rc-download-art {
    width:210px;
    flex-shrink:0;
    border-radius:23%;
    overflow:hidden;
    box-shadow:0 20px 45px #071b3638,0 0 0 1px #ffffff24
}
.rc-download-art img {
    width:100%;
    height:auto;
    object-fit:contain
}
.rc-footer {
    font-family:Arial,Helvetica,sans-serif;
    background:#edf3f5;
    color:#153b52;
    padding:60px 0 24px;
    border-top:1px solid #dce7eb;
    font-size:13px
}
.rc-footer-top {
    display:grid;
    grid-template-columns:1.2fr .8fr 1.3fr;
    align-items:start;
    gap:48px;
    padding-bottom:44px
}
.rc-footer-logo {
    width:180px;
    height:72px;
    object-fit:contain;
    object-position:left center
}
.rc-footer-top p {
    color:#5a7280;
    line-height:1.7;
    margin:14px 0 20px
}
.rc-footer-signature {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:12px;
    font-weight:600
}
.rc-footer-signature>span {
    width:7px;
    height:7px;
    flex-shrink:0;
    border-radius:50%;
    background:#ffc400
}
.rc-footer h2 {
    font-size:14px;
    line-height:1.5;
    letter-spacing:0;
    font-weight:700;
    margin:0 0 18px
}
.rc-footer-nav {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:12px
}
.rc-footer-nav h2 {
    margin-bottom:6px
}
.rc-footer-nav a {
    color:#496473
}
.rc-footer a:hover {
    text-decoration:underline;
    text-underline-offset:4px
}
.rc-footer .rc-stores {
    gap:10px
}
.rc-footer .rc-stores img {
    height:42px;
    width:auto
}
.rc-footer-bottom {
    border-top:1px solid #d2e0e6;
    padding-top:22px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:16px 28px;
    color:#496473;
    font-size:12px
}
.rc-footer-back {
    margin-left:auto;
    padding:9px 14px;
    border:1px solid #cadbe3;
    border-radius:22px
}
.rc-skip {
    position:fixed;
    left:16px;
    top:-100px;
    background:#fff;
    padding:12px;
    z-index:100
}
.rc-skip:focus {
    top:16px
}
.rc-lightbox {
    border:0;
    border-radius:18px;
    padding:55px 12px 12px;
    background:#fff;
    max-height:94vh;
    max-width:95vw;
    margin:auto;
    position:fixed
}
.rc-lightbox::backdrop {
    background:#0d243bd9
}
.rc-lightbox img {
    max-height:80vh;
    height:auto;
    width:min(430px,85vw,36.9vh);
    max-width:85vw;
    margin:auto
}
.rc-close {
    position:absolute;
    top:8px;
    right:12px;
    border:0;
    background:#edf3f6;
    color:#153b52;
    border-radius:20px;
    padding:8px 18px
}

@media(max-width:1050px) {
    .rc-nav nav {
    gap:16px
}
.rc-hero-grid {
    gap:10px
}
.rc-phone {
    width:190px
}
.rc-phone-front {
    width:185px;
    right:0
}
.rc-hero-visual {
    height:530px
}
.rc-orbit {
    width:350px;
    height:350px
}
.rc-screens {
    gap:24px;
    padding:0
}
.rc-steps ol {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

}

@media(max-width:760px) {
    .rc-wrap {
    width:calc(100% - 40px)
}
.rc-nav {
    height:78px;
    gap:12px
}
.rc-nav nav {
    display:none
}
.rc-logo {
    width:120px;
    height:50px
}
.rc-button-small {
    padding:11px 17px;
    font-size:13px
}
.rc-hero-grid {
    grid-template-columns:1fr;
    padding-block:44px;
    gap:40px;
    min-height:0
}
.rc-site h1 {
    font-size:clamp(34px,10.5vw,45px);
    letter-spacing:-2px
}
.rc-lead {
    font-size:16px;
    margin-block:24px!important
}
.rc-hero-visual {
    width:360px;
    max-width:100%;
    margin:auto;
    height:530px
}
.rc-phone-back {
    left:5px
}
.rc-phone-front {
    right:5px
}
.rc-floating {
    bottom:55px;
    font-size:12px;
    padding:12px 14px
}
.rc-ribbon .rc-wrap {
    font-size:12px
}
.rc-ribbon .rc-wrap>span {
    padding-inline:10px
}
.rc-section {
    padding-block:65px
}
.rc-site h2 {
    font-size:34px;
    letter-spacing:-1px
}
.rc-cards {
    grid-template-columns:1fr;
    gap:14px
}
.rc-card {
    padding:26px
}
.rc-showcase {
    padding-block:60px
}
.rc-screens {
    grid-template-columns:1fr;
    gap:45px
}
.rc-screen-link {
    max-width:260px
}
.rc-screens figcaption {
    max-width:300px;
    margin:24px auto 0
}
.rc-steps ol {
    grid-template-columns:1fr
}
.rc-steps li {
    padding:24px
}
.rc-download-wrap {
    padding-top:48px;
    padding-bottom:60px
}
.rc-download {
    padding:35px 25px;
    border-radius:20px
}
.rc-download-art {
    display:none
}
.rc-stores {
    gap:10px
}
.rc-stores img {
    height:46px;
    max-width:154px
}
.rc-download .rc-stores {
    gap:14px
}
.rc-footer {
    padding-top:40px
}
.rc-footer-top {
    grid-template-columns:1fr;
    gap:32px;
    padding-bottom:32px
}
.rc-footer-bottom {
    gap:16px 24px;
    font-size:11px
}
.rc-footer-bottom>span {
    flex-basis:100%
}
.rc-footer-back {
    margin-left:0
}
.rc-eyebrow {
    font-size:10px;
    letter-spacing:1.3px
}
.rc-section-heading {
    margin-bottom:32px
}

}

.rc-reveal {
    transition:opacity .5s ease,translate .5s cubic-bezier(.2,.65,.3,1)
}
.rc-reveal-pending {
    opacity:0;
    translate:0 14px
}
.rc-reveal-pending:focus-within {
    opacity:1;
    translate:0 0
}
.rc-nav nav a,
.rc-text-link,
.rc-footer a {
    transition:color .18s ease
}
.rc-screen-link {
    transition:transform .25s ease,box-shadow .25s ease
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
    .rc-screen-link:hover {
        transform:translateY(-3px);
        box-shadow:0 24px 38px #153b5224
    }
}

@keyframes rc-phone-float {
    0%,100% { translate:0 0 }
    50% { translate:0 -8px }
}
@media(prefers-reduced-motion:no-preference) {
    .rc-hero-visual .rc-phone-back {
        animation:rc-phone-float 8s ease-in-out infinite
    }
    .rc-hero-visual .rc-phone-front {
        animation:rc-phone-float 9s ease-in-out -4s infinite
    }
}

@media(prefers-reduced-motion:reduce) {
    html:has(.rc-site) {
        scroll-behavior:auto
    }
    .rc-reveal-pending {
        opacity:1;
        translate:0 0
    }
    .rc-site * {
    transition:none!important;
    scroll-behavior:auto!important
}

}
