.theme-switch { border: 0; padding: 0; background: none; color: inherit; }
.site-preview-status { flex-basis: 100%; margin-block: 1rem 0; font-size: inherit; }
:focus-visible { outline: 2px solid #1680fb; outline-offset: 4px; }

#header .wsmenu .btn.public-start-link {
    color: #fff !important;
    background: linear-gradient(135deg, #156fdf, #0756c5) !important;
    border-color: #1265cf !important;
    box-shadow: inset 0 1px 0 #ffffff30, 0 4px 12px #0756c51f;
    transition: background .2s, box-shadow .2s, transform .2s;
}
#header .wsmenu .btn.public-start-link:hover,
#header .wsmenu .btn.public-start-link:focus-visible {
    color: #fff !important;
    background: linear-gradient(135deg, #0d5bbf, #07479f) !important;
    border-color: #07479f !important;
    box-shadow: inset 0 1px 0 #ffffff20, 0 6px 16px #0756c538;
    transform: translateY(-1px);
}
#header .wsmenu .btn.public-start-link:focus-visible {
    outline: 2px solid #75b5ff;
    outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
    #header .wsmenu .btn.public-start-link { transition: none; transform: none; }
}

#solutions { scroll-margin-top: 6rem; }
#solutions .module-subtitle { margin-bottom: 1rem; }
#solutions .accordion-thumb { padding-inline-end: 3rem; }
#solutions .accordion-thumb h3 { line-height: 1.45; padding: 0; margin-bottom: 0; }
#solutions .accordion-item.is-active .accordion-thumb h3 { margin-bottom: 24px; }
@media (max-width: 767px) {
    #solutions .accordion-item.is-active .accordion-thumb h3 { margin-bottom: 18px; }
}
#solutions .accordion-thumb:focus-visible { border-radius: .3rem; }
#solutions .performance-caption,
#how-it-works .dashboard-caption,
#auticly-numbers .numbers-caption {
    margin: 1rem 0 0;
    color: var(--text-color);
    font-size: var(--bs-body-font-size);
    line-height: 1.7;
    text-align: center;
}
#how-it-works { scroll-margin-top: 6rem; }
#auticly-numbers { scroll-margin-top: 6rem; }
#auticly-numbers .statistic-block { height: 100%; }
#auticly-numbers .statistic-number { white-space: nowrap; font-variant-numeric: tabular-nums; }

/* Public hero scale follows Bootstrap's base size and the available text column. */
#hero.hero-5 {
    --hero-display-min: calc(var(--bs-body-font-size) * 1.9);
    --hero-display-max: calc(var(--bs-body-font-size) * 3.3);
    --hero-display: clamp(var(--hero-display-min), 8.8cqi, var(--hero-display-max));
    --hero-copy: calc(var(--bs-body-font-size) * 1.0625);
    --hero-detail: calc(var(--bs-body-font-size) * .875);
    --hero-ink: #172a47;
    --hero-muted: #596a81;
    --hero-accent: #176bd8;
    --hero-surface: #fff;
    --hero-line: #dce6f3;
    isolation: isolate;
    padding-block: 7.5rem 3.5rem;
    background: radial-gradient(ellipse at 12% 36%, #e2edff 0, transparent 48%),
        radial-gradient(ellipse at 95% 8%, #f0edff 0, transparent 40%), #fafcff;
}
#hero .container { position: relative; z-index: 1; }
#hero .hero-5-txt {
    container-type: inline-size;
    max-width: 48rem;
    margin-inline: auto;
    padding: 0;
    text-align: start;
}
#hero .hero-5-txt h1 {
    font-size: var(--hero-display) !important;
    font-weight: 650;
    line-height: 1.4;
    letter-spacing: -.035em;
    color: var(--hero-ink);
    margin: 0;
    text-wrap: balance;
    overflow-wrap: normal;
}
[dir="rtl"] #hero .hero-5-txt h1 { letter-spacing: 0; line-height: 1.55; }
#hero .hero-5-txt h1 > span + span {
    margin-block-start: .15em;
    font-weight: 750;
    color: var(--hero-accent);
}
@supports (background-clip: text) {
    #hero .hero-5-txt h1 > span + span {
        background: linear-gradient(105deg, #4f46bf, #136ad4 65%, #087c9d);
        background-clip: text;
        -webkit-background-clip: text;
        color: transparent;
    }
}
#hero .hero-5-txt > p.fs-18 {
    font-size: var(--hero-copy);
    color: var(--hero-muted);
    line-height: 1.95;
    max-width: 48ch;
    padding: 0;
    margin-block: 1.35rem 0;
    margin-inline: 0;
    text-wrap: pretty;
}
#hero .framer-txt-01 { margin-block-end: 1.7rem; }
#hero .framer-txt-01 a {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .6rem .95rem;
    color: var(--hero-ink);
    background: var(--hero-surface);
    border: 1px solid var(--hero-line);
    border-radius: 100px;
    font-size: var(--hero-detail);
    font-weight: 500;
    line-height: 1.5;
    box-shadow: 0 4px 14px #23498206;
}
#hero .framer-txt-01 span { position: static; margin: 0; line-height: 1; }
.theme--dark #hero.hero-5 {
    --hero-ink: #eff5ff;
    --hero-muted: #b2c1d8;
    --hero-accent: #8cb9ff;
    --hero-surface: #17263b;
    --hero-line: #30445e;
    background: radial-gradient(ellipse at 12% 36%, #1b3454 0, transparent 55%), #101a2a;
}
.theme--dark #hero .hero-5-txt h1 > span + span { background: none; color: var(--hero-accent); }
@media (max-width: 991px) {
    #hero.hero-5 { padding-block: 2rem 3rem; }
    #hero .hero-5-txt { max-width: 40rem; margin-inline: auto; text-align: center; }
    #hero .hero-5-txt > p.fs-18 { margin-inline: auto; }
}
@media (max-width: 575px) {
    #hero.hero-5 { padding-block: 1.35rem 2.5rem; }
    #hero .container { padding-inline: 1.3rem; }
    #hero .hero-5-txt h1 { line-height: 1.5; }
    #hero .hero-5-txt > p.fs-18 { font-size: var(--bs-body-font-size); line-height: 1.9; }
    #hero .framer-txt-01 { margin-block-end: 1.2rem; }
    #hero .framer-txt-01 a { padding: .5rem .75rem; }
}
@media (prefers-reduced-motion: reduce) {
    #hero .hero-5-txt { animation: none !important; visibility: visible !important; }
}

#banner.home-signup {
    --signup-detail: calc(var(--bs-body-font-size) * .9375);
    --signup-ink: #172a47;
    --signup-muted: #596a81;
    --signup-surface: #fff;
    --signup-line: #dce6f3;
    padding-block: 2rem 0;
    scroll-margin-top: 6rem;
}
#banner .home-signup-panel {
    padding: clamp(2rem, 5vw, 4.5rem) clamp(1.2rem, 4vw, 3rem);
    border: 1px solid #42618b;
    border-radius: 1.75rem;
    background: radial-gradient(ellipse at 0 0, #316bb155, transparent 60%),
        radial-gradient(ellipse at 100% 100%, #5850aa35, transparent 60%), #132c4d;
    box-shadow: 0 24px 55px -40px #132c4d99;
}
#banner h2 {
    font-size: clamp(calc(var(--bs-body-font-size) * 1.6), 3.5vw, calc(var(--bs-body-font-size) * 2.5));
    color: #f5f8ff;
    line-height: 1.5;
    letter-spacing: -.025em;
    text-wrap: balance;
    margin: 0;
}
[dir="rtl"] #banner h2 { letter-spacing: 0; line-height: 1.7; }
#banner .home-signup-description { color: #bdcde3; font-size: var(--bs-body-font-size); line-height: 1.8; margin: .8rem 0 0; }
#banner .quick-form {
    max-width: 38rem;
    margin: 1.8rem auto 0;
    padding: .45rem;
    background: var(--signup-surface);
    border: 1px solid var(--signup-line);
    border-radius: 1rem;
    box-shadow: 0 12px 32px -18px #06132680;
}
#banner .quick-form:focus-within { border-color: #71adff; box-shadow: 0 0 0 3px #71adff26; }
#banner .quick-form .input-group { align-items: center; gap: .5rem; flex-wrap: nowrap; }
#banner .quick-form .form-control {
    min-width: 0;
    height: 3.1rem;
    padding-inline: .85rem;
    color: var(--signup-ink);
    background: transparent;
    border: 0;
    box-shadow: none;
    font-size: var(--signup-detail);
    border-radius: .6rem;
    margin: 0;
}
#banner .quick-form .form-control::placeholder { color: var(--signup-muted); opacity: 1; }
#banner .quick-form .form-btn { flex-shrink: 0; }
#banner .quick-form .btn {
    min-height: 3.1rem;
    padding: .7rem 1.2rem;
    border-radius: .65rem;
    font-size: var(--signup-detail);
    font-weight: 600;
    background: var(--signup-ink);
    border-color: var(--signup-ink);
    color: var(--signup-surface);
    margin: 0;
}
#banner .quick-form .btn:hover { background: #176bd8; border-color: #176bd8; color: #fff; }
#banner .site-preview-status { color: var(--signup-muted); font-size: var(--signup-detail); line-height: 1.8; margin: .8rem .5rem .2rem; }
#banner .advantages { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; gap: .35rem 1.2rem; margin: 1.1rem 0 0; }
#banner .advantages li { padding: 0; float: none; }
#banner .advantages li:not(:last-child)::after { display: none; }
#banner .advantages li p { font-size: var(--signup-detail); color: #bdcde3; line-height: 1.8; margin: 0; }
.theme--dark #banner.home-signup { --signup-ink: #eff5ff; --signup-muted: #b2c1d8; --signup-surface: #17263b; --signup-line: #415975; }
.theme--dark #banner .home-signup-panel { background: radial-gradient(ellipse at 0 0, #274f823d, transparent 65%), #111f33; border-color: #30445e; }
@media (max-width: 575px) {
    #banner .home-signup-panel { border-radius: 1.25rem; }
    #banner .quick-form .input-group { flex-wrap: wrap; }
    #banner .quick-form .form-control { flex-basis: 100%; text-align: center; }
    #banner .quick-form .form-btn, #banner .quick-form .btn { width: 100%; }
}
