/* Framer SSR Minified CSS */
html, body, #main {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

:root {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

* {
    box-sizing: border-box;
    -webkit-font-smoothing: inherit
}

h1, h2, h3, h4, h5, h6, p, figure {
    margin: 0
}

body, input, textarea, select, button {
    font-family: "Poppins", "Poppins Placeholder", sans-serif;
    font-size: 12px
}

@supports (z-index:calc(infinity)) {
    #__framer-badge-container {
        --infinity: infinity
    }
}

#__framer-badge-container {
    pointer-events: none;
    width: 100%;
    z-index: calc(var(--infinity, 2147480000));
    justify-content: flex-end;
    padding: 20px;
    display: flex;
    position: fixed;
    bottom: 0
}

@supports (background:-webkit-named-image(i)) and (not (grid-template-rows:subgrid)) {
    body {
        --framer-will-change-override: transform
    }
}

@supports (background:-webkit-named-image(i)) and (not (position-area:top right)) {
    body {
        --framer-will-change-filter-override: filter
    }
}

[data-framer-component-type=Text] div div span, [data-framer-component-type=Text] a div span, [data-framer-component-type=Text] span span span, [data-framer-component-type=Text] p span span, [data-framer-component-type=Text] h1 span span, [data-framer-component-type=Text] h2 span span, [data-framer-component-type=Text] h3 span span, [data-framer-component-type=Text] h4 span span, [data-framer-component-type=Text] h5 span span, [data-framer-component-type=Text] h6 span span, [data-framer-component-type=Text] a {
    font-family: var(--font-family);
    font-style: var(--font-style);
    font-weight: min(calc(var(--framer-font-weight-increase, 0) + var(--font-weight, 400)), 900);
    color: var(--text-color);
    letter-spacing: var(--letter-spacing);
    font-size: var(--font-size);
    text-transform: var(--text-transform);
    --text-decoration: var(--framer-text-decoration-style, solid) var(--framer-text-decoration, none) var(--framer-text-decoration-color, currentcolor) var(--framer-text-decoration-thickness, auto);
    --text-decoration-skip-ink: var(--framer-text-decoration-skip-ink);
    --text-underline-offset: var(--framer-text-decoration-offset);
    line-height: var(--line-height);
    --font-family: var(--framer-font-family);
    --font-style: var(--framer-font-style);
    --font-weight: var(--framer-font-weight);
    --text-color: var(--framer-text-color);
    --letter-spacing: var(--framer-letter-spacing);
    --font-size: var(--framer-font-size);
    --text-transform: var(--framer-text-transform);
    --line-height: var(--framer-line-height)
}

@supports not (color:color(display-p3 1 1 1)) {
    p.framer-text, div.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, li.framer-text, ol.framer-text, ul.framer-text, span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))));
        -webkit-text-stroke-color: var(--framer-text-stroke-color-rgb, var(--framer-text-stroke-color, initial))
    }

    mark.framer-text {
        background-color: var(--framer-blockquote-text-background-color-rgb, var(--framer-blockquote-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text, code.framer-text span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text, span.framer-text[data-nested-link] {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))));
        background-color: var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial));
        -webkit-text-decoration-color: var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))));
        text-decoration-color: var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text, code.framer-text a.framer-text span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-nested-link], code.framer-text span.framer-text[data-nested-link] span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text:hover, span.framer-text[data-nested-link]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))));
        text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text:hover, code.framer-text span.framer-text[data-nested-link]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text[data-framer-page-link-current], span.framer-text[data-framer-page-link-current] {
        color: var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))));
        background-color: var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))));
        text-decoration-color: var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text[data-framer-page-link-current], code.framer-text a.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-framer-page-link-current], code.framer-text span.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]) {
        color: var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))));
        background-color: var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text[data-framer-page-link-current]:hover, span.framer-text[data-framer-page-link-current]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))));
        text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))))
    }
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text[data-framer-page-link-current]:hover, code.framer-text a.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-framer-page-link-current]:hover, code.framer-text span.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]) {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial))))))
    }
}

@supports not (overflow:clip) {
    :root {
        --overflow-clip-fallback: hidden
    }
}

@supports (background:-webkit-named-image(i)) and (not (contain-intrinsic-size:inherit)) {
    div.framer-text, p.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, ol.framer-text, ul.framer-text, li.framer-text, blockquote.framer-text {
        display: var(--text-truncation-display-inline-for-safari-16, revert)
    }

    div.framer-text:after, p.framer-text:after, h1.framer-text:after, h2.framer-text:after, h3.framer-text:after, h4.framer-text:after, h5.framer-text:after, h6.framer-text:after, ol.framer-text:after, ul.framer-text:after, li.framer-text:after, blockquote.framer-text:after {
        content: var(--text-truncation-line-break-for-safari-16);
        white-space: pre
    }

    p.framer-text[data-text-fill] {
        display: var(--text-truncation-display-inline-for-safari-16, inline-block)
    }
}

@supports (corner-shape:superellipse(2)) {
    :root {
        --one-if-corner-shape-supported: 1
    }
}

@supports (aspect-ratio:1) {
    body {
        --framer-aspect-ratio-supported: auto
    }
}

.framer-fy9Id.framer-72rtr7 {
    overflow: var(--overflow-clip-fallback, clip);
    background-color: #fff;
    flex-flow: column;
    place-content: center flex-start;
    align-items: center;
    gap: 10px;
    width: 1440px;
    padding: 0;
    display: flex;
    position: relative
}

.framer-fy9Id .framer-pjuewf {
    background-color: #fff;
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 0;
    width: 1440px;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .framer-1c0b15m {
    background-color: #e6f2fb;
    flex: none;
    gap: 0;
    width: 1440px;
    height: 678px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 0 100vmax #e6f2fb;
    clip-path: inset(0 -100vmax)
}

.framer-fy9Id .framer-tvy0f5 {
    border-radius: 4px;
    flex-flow: row;
    flex: none;
    place-content: center space-between;
    align-items: center;
    width: 1440px;
    height: min-content;
    padding: 12px 72px;
    display: flex;
    position: absolute;
    top: 0;
    left: 50%;
    overflow: visible;
    transform: translate(-50%)
}

.framer-fy9Id .framer-1w9imrf {
    flex: none;
    width: 178px;
    height: 26px;
    position: relative
}

.framer-fy9Id .framer-1w9imrf img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.framer-fy9Id .framer-1od7k2n {
    flex-flow: row;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 40px;
    width: min-content;
    height: 16px;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .nav-link-wrapper {
    flex-flow: row;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 8px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .nav-link-wrapper--active {
    gap: 6px;
    width: 57px;
}

.framer-fy9Id .nav-link-indicator {
    aspect-ratio: 1;
    height: var(--framer-aspect-ratio-supported, 6px);
    background-color: #0092ff;
    border-radius: 1px;
    flex: none;
    width: 6px;
    position: relative
}

.framer-fy9Id .nav-link, .framer-fy9Id .framer-yf81f0, .framer-fy9Id .framer-1hmkik, .framer-fy9Id .framer-1aigr3n, .framer-fy9Id .framer-1q8q3zo, .framer-fy9Id .framer-muf68x, .framer-fy9Id .framer-1o4lk4p, .framer-fy9Id .framer-pixau1, .framer-fy9Id .framer-u9s2bx, .framer-fy9Id .framer-1mp71mt, .framer-fy9Id .framer-15e16sl, .framer-fy9Id .framer-115dgdq, .framer-fy9Id .framer-sr833c, .framer-fy9Id .review-card__name, .framer-fy9Id .review-card__role {
    --framer-paragraph-spacing: 0px;
    white-space: pre;
    flex: none;
    width: auto;
    height: auto;
    position: relative
}


.framer-fy9Id .framer-1y8flb1 {
    --border-bottom-width: 1.5px;
    --border-color: #09112e;
    --border-left-width: 1.5px;
    --border-right-width: 1.5px;
    --border-style: solid;
    --border-top-width: 1.5px;
    will-change: var(--framer-will-change-override, transform);
    border-radius: 8px;
    flex-flow: row;
    flex: none;
    place-content: center;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 20px 24px;
    display: flex;
    position: relative;
    overflow: hidden
}

.framer-fy9Id .framer-38clzn {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 40px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: absolute;
    top: 172px;
    left: 72px;
    overflow: visible
}

.framer-fy9Id .framer-1vr5xq {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .framer-1mp1lp6 {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 511px;
    height: auto;
    position: relative
}

.framer-fy9Id .framer-1ec0tw3 {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 443px;
    height: auto;
    position: relative
}

/* CTA button (all breakpoints): header hero + footer — edit here only */
.framer-fy9Id .cta-button {
    background-color: #0092ff;
    border-radius: 6px;
    flex-flow: row;
    flex: none;
    place-content: center;
    align-items: center;
    gap: 10px;
    width: max-content;
    min-width: 200px;
    height: 48px;
    padding: 15px 56px;
    display: flex;
    position: relative;
    overflow: hidden;
    text-decoration: none;
}

.framer-fy9Id .cta-button > * {
    flex-shrink: 0;
}

.framer-fy9Id .cta-button--header {
    align-self: flex-start;
}

.framer-fy9Id .cta-button .framer-text {
    --framer-font-size: 16px;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: -0.02em;
}

/* CTA styles for audit page only */
.audit-page .cta-button {
    background-color: #0092ff;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 200px;
    height: 48px;
    padding: 15px 56px;
    border: none;
    cursor: pointer;
    text-decoration: none;
}

.audit-page .cta-button .framer-text {
    font-size: 16px;
    line-height: 120%;
    letter-spacing: -0.02em;
    --framer-text-color: rgb(255, 255, 255);
    color: rgb(255, 255, 255);
    margin: 0;
}

/* Reviews section hidden on all breakpoints */
.framer-fy9Id #reviews {
    display: none !important;
}

.framer-fy9Id .framer-mjq0a2 {
    flex: none;
    width: 800px;
    height: 533px;
    position: absolute;
    top: 145px;
    left: 640px
}

.framer-fy9Id .benefit-grid {
    flex-flow: row;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 104px;
    width: 100%;
    height: min-content;
    padding: 88px 72px;
    display: flex;
    position: relative;
    overflow: visible
}

/* ── Legacy audit section (kept for safety) ───────────────────────────────── */
.framer-audit-section { display: none; }
.audit-cta-wrapper { margin-top: 8px; display: flex; justify-content: center; }
.audit-final-cta { margin-top: 24px; }

/* ══════════════════════════════════════════════════════════════════════════════
   AUDIT BANNER — redesigned section
══════════════════════════════════════════════════════════════════════════════ */
.audit-banner {
    background: #09112E;
    /* subtle dot-grid texture */
    background-image:
        radial-gradient(circle, rgba(0,146,255,0.12) 1px, transparent 1px);
    background-size: 28px 28px;
    box-shadow: 0 0 0 100vmax #09112E;
    clip-path: inset(0 -100vmax);
    position: relative;
    overflow: hidden;
    width: 100%;
    display: flex;
    justify-content: center;
}

/* top-left glow accent */
.audit-banner::before {
    content: "";
    position: absolute;
    top: -120px;
    left: -80px;
    width: 480px;
    height: 480px;
    background: radial-gradient(circle, rgba(0,146,255,0.18) 0%, transparent 70%);
    pointer-events: none;
}

.audit-banner__inner {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 100px 150px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 64px;
    align-items: center;
    position: relative;
    z-index: 1;
}

/* ── Left column ─────────────────────────────────────────────────────────── */
.audit-banner__text {
    display: flex;
    flex-direction: column;
    gap: 28px;
    align-items: flex-start;
}

.audit-banner__label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #0092FF;
    background: rgba(0,146,255,0.12);
    border: 1px solid rgba(0,146,255,0.3);
    border-radius: 999px;
    padding: 6px 14px;
    margin-bottom: 28px;
}

.audit-banner__label::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #0092FF;
    flex-shrink: 0;
}

.audit-banner__title {
    font-family: 'Poppins', sans-serif;
    font-size: 52px;
    font-weight: 600;
    line-height: 108%;
    letter-spacing: -0.02em;
    color: #ffffff;
    margin: 0 0 28px;
}

.audit-banner__desc {
    font-family: 'Poppins', sans-serif;
    font-size: 17px;
    line-height: 1.7;
    color: rgba(255,255,255,0.6);
    margin: 0 0 40px;
    max-width: 440px;
}

.audit-banner__cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #ffffff;
    background: #0092FF;
    border-radius: 10px;
    padding: 15px 56px;
    text-decoration: none;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
    box-shadow: 0 4px 20px rgba(0,146,255,0.35);
}

.audit-banner__cta:hover {
    background: #007ee0;
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(0,146,255,0.45);
}

.audit-banner__cta svg {
    transition: transform 0.2s ease;
}

.audit-banner__cta:hover svg {
    transform: translateX(3px);
}

/* ── Right column: cards ──────────────────────────────────────────────────── */
.audit-banner__cards {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.audit-banner__card {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 14px;
    padding: 24px 28px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.audit-banner__card:hover {
    background: rgba(255,255,255,0.08);
    border-color: rgba(0,146,255,0.35);
}

.audit-banner__card-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(0,146,255,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
    flex-shrink: 0;
}

.audit-banner__card-title {
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #ffffff;
    margin: 0;
}

.audit-banner__card-body {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255,255,255,0.5);
    margin: 0;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    .audit-banner__inner {
        padding: 72px 56px;
        gap: 48px;
        grid-template-columns: 1fr;
    }
    .audit-banner__text {
        max-width: 100%;
        width: 100%;
    }
    .audit-banner__desc {
        max-width: 100%;
    }
    .audit-banner__title {
        font-size: 42px;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .audit-banner__inner {
        grid-template-columns: 1fr;
        padding: 56px 24px;
        gap: 32px;
    }
    .audit-banner__text {
        max-width: 100%;
        width: 100%;
    }
    .audit-banner__title {
        font-size: 36px;
        width: 100%;
    }
    .audit-banner__desc {
        max-width: 100%;
        font-size: 15px;
    }
    .audit-banner__cards {
        flex-direction: column;
        gap: 12px;
    }
}

.framer-fy9Id .benefit-item {
    flex-flow: column;
    flex: none;
    place-content: flex-start center;
    align-items: flex-start;
    gap: 24px;
    width: 232px;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .benefit-icon,
.framer-fy9Id .feature-icon {
    flex: none;
    width: 48px;
    height: 48px;
    position: relative
}

.framer-fy9Id .benefit-text {
    flex-flow: column;
    flex: none;
    place-content: flex-start flex-end;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .benefit-title,
.framer-fy9Id .benefit-body {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 232px;
    height: auto;
    position: relative
}

.framer-fy9Id .framer-1m1udsy {
    background-color: #fafafa;
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 56px;
    width: 100%;
    height: min-content;
    padding: 100px 72px;
    display: flex;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 0 100vmax #fafafa;
    clip-path: inset(0 -100vmax)
}

.framer-fy9Id .framer-13zscys, .framer-fy9Id .framer-cjpd3 {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 611px;
    height: auto;
    position: relative
}

.framer-fy9Id .ps-grid, .framer-fy9Id .review-grid {
    flex-flow: row;
    flex: none;
    place-content: center flex-start;
    align-items: stretch;
    gap: 32px;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-card {
    --border-bottom-width: 1px;
    --border-color: #ebebeb;
    --border-left-width: 1px;
    --border-right-width: 1px;
    --border-style: solid;
    --border-top-width: 1px;
    will-change: var(--framer-will-change-override, transform);
    background-color: #fff;
    border-radius: 20px;
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 40px;
    width: 633px;
    height: min-content;
    padding: 56px 78px 62px;
    display: flex;
    position: relative;
    overflow: hidden
}

.framer-fy9Id .ps-header {
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 24px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-badge {
    --border-bottom-width: 1px;
    --border-color: #09112e;
    --border-left-width: 1px;
    --border-right-width: 1px;
    --border-style: solid;
    --border-top-width: 1px;
    border-radius: 90px;
    flex-flow: column;
    flex: none;
    place-content: flex-start center;
    align-items: flex-start;
    gap: 10px;
    width: min-content;
    height: 32px;
    padding: 7px 12px;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-badge--solution {
    background-color: #0092ff;
    border-radius: 128px;
    place-content: center;
    align-items: center;
    padding: 11px 15px;
    border: none;
}

.framer-fy9Id .ps-title {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 443px;
    height: auto;
    position: relative
}

.framer-fy9Id .ps-illustration {
    flex: none;
    width: 466px;
    height: 196px;
    position: relative
}

.framer-fy9Id .problem-illustration,
.framer-fy9Id .solution-illustration {
    display: none;
    width: 100%;
    height: auto;
}

.framer-fy9Id .ps-list {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    width: 477px;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-list-group, .framer-fy9Id .accordion-item {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-item {
    flex-flow: row;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .ps-item-icon {
    flex: none;
    width: 20px;
    height: 22px;
    position: relative
}

.framer-fy9Id .ps-item-icon img {
    width: 100%;
    height: 100%;
    display: block;
}

.framer-fy9Id .ps-item-text {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 448px;
    height: auto;
    position: relative
}

.framer-fy9Id .ps-card--solution {
    height: 778px;
}

.framer-fy9Id .framer-1nsliu5, .framer-fy9Id .framer-jrztzp, .framer-fy9Id .framer-1p1k8yn, .framer-fy9Id .framer-1996bzg {
    flex: none;
    gap: 0;
    width: 20px;
    height: 22px;
    position: relative;
    overflow: visible
}

.framer-fy9Id .framer-1nsliu5,
.framer-fy9Id .framer-jrztzp,
.framer-fy9Id .framer-1p1k8yn,
.framer-fy9Id .framer-1996bzg {
    background: url("./images/Check-mark.svg") center/contain no-repeat;
}

.framer-fy9Id .framer-1nsliu5 > div,
.framer-fy9Id .framer-jrztzp > div,
.framer-fy9Id .framer-1p1k8yn > div,
.framer-fy9Id .framer-1996bzg > div {
    display: none;
}

.framer-fy9Id .framer-16qgdy7 {
    flex: none;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 2px;
    left: 0;
    overflow: visible
}

.framer-fy9Id .framer-12h0gsh {
    background-color: #0092ff;
    border-radius: 100%;
    flex: none;
    position: absolute;
    inset: 0
}

.framer-fy9Id .framer-zrvxe {
    aspect-ratio: 1;
    height: var(--framer-aspect-ratio-supported, 12px);
    flex: none;
    gap: 0;
    width: 12px;
    position: absolute;
    top: 50%;
    left: 53%;
    overflow: hidden;
    transform: translate(-50%, -50%)
}

.framer-fy9Id .framer-1u9n3ew, .framer-fy9Id .framer-1q59hcs, .framer-fy9Id .framer-1p9xf9s, .framer-fy9Id .framer-6xh60n {
    flex: none;
    position: absolute;
    inset: 2px 3px 5px 1px
}

.framer-fy9Id .framer-ccimco, .framer-fy9Id .framer-1291y6y, .framer-fy9Id .framer-1ul6e33 {
    background-color: #0092ff;
    border-radius: 100%;
    flex: none;
    position: absolute;
    inset: 2px 0 0
}

.framer-fy9Id .framer-1e2o6v9, .framer-fy9Id .framer-1il7pmm, .framer-fy9Id .framer-k462a2 {
    aspect-ratio: 1;
    height: var(--framer-aspect-ratio-supported, 12px);
    flex: none;
    gap: 0;
    width: 12px;
    position: absolute;
    top: 55%;
    left: 53%;
    overflow: hidden;
    transform: translate(-50%, -50%)
}

.framer-fy9Id .framer-5baece {
    background-color: #e7f3fb;
    flex-flow: column;
    flex: none;
    place-content: center;
    align-items: center;
    gap: 72px;
    width: 100%;
    height: min-content;
    padding: 100px 170px;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .feature-container {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 100px;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .feature-row {
    flex: none;
    gap: 73px;
    width: 100%;
    height: 364px;
    position: relative;
    overflow: visible
}

.framer-fy9Id .feature-text-block {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 20px;
    width: 433px;
    max-width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    overflow: visible
}

.framer-fy9Id .feature-text-block--left {
    position: absolute;
    top: 52px;
    left: 0;
}

.framer-fy9Id .feature-title {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 390px;
    height: auto;
    position: relative
}

.framer-fy9Id .feature-body {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 390px;
    height: auto;
    position: relative
}

.framer-fy9Id .feature-image-frame {
    will-change: var(--framer-will-change-override, transform);
    border-radius: 16px;
    flex: none;
    gap: 64px;
    width: 533px;
    height: 364px;
    position: absolute;
    top: 0;
    overflow: hidden
}

.framer-fy9Id .feature-image-frame--right {
    left: 567px;
}

.framer-fy9Id .feature-image-frame--left {
    left: 0;
}

.framer-fy9Id .feature-image-frame .feature-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover
}

.framer-fy9Id .accordion-header {
    flex-flow: row;
    flex: none;
    place-content: flex-start space-between;
    align-items: flex-start;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .accordion-item {
    flex-flow: row;
    flex: none;
    place-content: center space-between;
    align-items: center;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}


.framer-fy9Id .feature-text-block--right {
    position: absolute;
    top: 40px;
    left: 565px;
}















.framer-fy9Id .framer-123unoz {
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 56px;
    width: 100%;
    height: min-content;
    padding: 56px 72px;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .review-card {
    --border-bottom-width: 1px;
    --border-color: #ebebeb;
    --border-left-width: 1px;
    --border-right-width: 1px;
    --border-style: solid;
    --border-top-width: 1px;
    background-color: #fafafa;
    border-radius: 8px;
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 40px;
    width: 411px;
    height: 100%;
    padding: 32px;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .review-card__header {
    flex-flow: row;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 21px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .review-card__avatar {
    border-radius: 100%;
    flex: none;
    width: 56px;
    height: 56px;
    position: relative
}

.framer-fy9Id .review-card__author {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 6px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .review-card__quote {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 347px;
    height: auto;
    position: relative
}


.framer-fy9Id .framer-1o7rylo {
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 56px;
    width: 100%;
    height: min-content;
    padding: 56px 0 100px;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .framer-1qs4dhi {
    flex-flow: column;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 24px;
    width: 854px;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .accordion-icon {
    flex: none;
    width: 17px;
    height: 17px;
    position: relative
}

.framer-fy9Id .accordion-content {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 713px;
    height: 0;
    position: relative
}

.framer-fy9Id .accordion-content.accordion-open {
    height: auto;
}

.framer-fy9Id .framer-1k01xbb, .framer-fy9Id .framer-viixi2, .framer-fy9Id .framer-1lez5ws {
    opacity: .15;
    background-color: #09112e;
    flex: none;
    width: 100%;
    height: 1px;
    position: relative
}


.framer-fy9Id .framer-aotz7q {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 0;
    width: 100%;
    height: min-content;
    padding: 0;
    display: flex;
    position: relative;
    overflow: visible
}

.framer-fy9Id .framer-1s8qzv2 {
    background-color: #09112e;
    flex: none;
    gap: 0;
    width: 1442px;
    height: 456px;
    position: relative;
    overflow: visible;
    box-shadow: 0 0 0 100vmax #09112e;
    clip-path: inset(0 -100vmax)
}

.framer-fy9Id .framer-x6ewjc {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 536px;
    height: auto;
    position: absolute;
    top: 121px;
    left: 72px
}

.framer-fy9Id .framer-1w65ew1 {
    flex-flow: column;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 48px;
    width: 540px;
    height: min-content;
    padding: 0;
    display: flex;
    position: absolute;
    top: 128px;
    left: 736px;
    overflow: visible
}

.framer-fy9Id .framer-re9976 {
    --framer-paragraph-spacing: 0px;
    white-space: pre-wrap;
    word-break: break-word;
    word-wrap: break-word;
    flex: none;
    width: 479px;
    height: auto;
    position: relative
}

.framer-fy9Id .framer-1m6eifz {
    background-color: #09112e;
    flex: none;
    gap: 0;
    width: 100%;
    height: 196px;
    margin-top: -1px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 0 100vmax #09112e;
    clip-path: inset(0 -100vmax)
}

.framer-fy9Id .framer-5baece {
    box-shadow: 0 0 0 100vmax #e7f3fb;
    clip-path: inset(0 -100vmax)
}

.framer-fy9Id .framer-rh6g4h {
    background-color: #404040;
    flex: none;
    width: 1296px;
    height: 1px;
    position: absolute;
    top: 121px;
    left: 72px
}

.framer-fy9Id .framer-qnu6w1 {
    background-color: #363c55;
    flex: none;
    width: 1296px;
    height: 1px;
    position: absolute;
    top: 121px;
    left: 72px
}


.framer-fy9Id .framer-crthhr {
    flex: none;
    width: 1298px;
    height: 22px;
    position: absolute;
    top: 150px;
    left: 72px;
    overflow: visible
}

.framer-fy9Id .framer-143r23d {
    --framer-paragraph-spacing: 0px;
    white-space: pre;
    flex: none;
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    left: 0
}

.framer-fy9Id .framer-ln1fwi {
    flex-flow: row;
    flex: none;
    place-content: center flex-end;
    align-items: center;
    gap: 16px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: absolute;
    top: 4px;
    right: 0px;
    overflow: visible
}

.framer-fy9Id .framer-1nlcig1 {
    flex: none;
    width: 1298px;
    height: 40px;
    position: absolute;
    top: 48px;
    left: 72px;
    overflow: visible
}

.framer-fy9Id .framer-1g96bg2 {
    flex-flow: row;
    flex: none;
    place-content: center flex-start;
    align-items: center;
    gap: 48px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: absolute;
    top: 10px;
    left: 50%;
    overflow: visible;
    transform: translate(-50%)
}

.framer-fy9Id .framer-l54781 {
    flex: none;
    width: 175px;
    height: 27px;
    position: absolute;
    top: 7px;
    left: 0
}

.framer-fy9Id .framer-l54781 img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.framer-fy9Id .framer-elo1nt {
    flex-flow: row;
    flex: none;
    place-content: flex-start;
    align-items: flex-start;
    gap: 12px;
    width: min-content;
    height: min-content;
    padding: 0;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    overflow: visible
}

.footer-linkedin {
    width: 40px;
    height: 40px;
    border: 1px solid #363c55;
    border-radius: 50%;
    background-color: #09112e;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #ffffff;
    position: relative;
    z-index: 1;
}

.footer-linkedin svg,
.footer-linkedin svg use {
    width: 19px;
    height: 19px;
    display: block;
    fill: #ffffff !important;
}
.footer-linkedin img {
    width: 20px;
    height: 20px;
    display: block;
}

.framer-fy9Id .framer-1ajqa7m, .framer-fy9Id .framer-o4t2u2, .framer-fy9Id .framer-1peuzqn, .framer-fy9Id .framer-1s5irze, .framer-fy9Id .framer-1lqj904 {
    flex: none;
    gap: 0;
    width: 40px;
    height: 40px;
    position: relative;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
}

.framer-fy9Id .framer-5qwit2, .framer-fy9Id .framer-1jrijhl, .framer-fy9Id .framer-f4iov4, .framer-fy9Id .framer-1gs19c0, .framer-fy9Id .framer-ljoaqt {
    --border-bottom-width: 1px;
    --border-color: #363c55;
    --border-left-width: 1px;
    --border-right-width: 1px;
    --border-style: solid;
    --border-top-width: 1px;
    background-color: #09112e;
    border-radius: 100%;
    flex: none;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    left: 0
}

.framer-fy9Id .framer-xz0hhp {
    flex: none;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 12px;
    left: 12px
}

.framer-fy9Id .framer-16bgmvy {
    flex: none;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 12px;
    left: 12px
}

.framer-fy9Id .framer-hnkimk {
    flex: none;
    position: absolute;
    inset: 12px 11px 11px 12px
}

.framer-fy9Id .framer-128nl16 {
    flex: none;
    width: 18px;
    height: 18px;
    position: absolute;
    top: 11px;
    left: 11px
}


.framer-fy9Id[data-border=true]:after, .framer-fy9Id [data-border=true]:after {
    content: "";
    border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0);
    border-color: var(--border-color, none);
    border-style: var(--border-style, none);
    box-sizing: border-box;
    border-radius: inherit;
    corner-shape: inherit;
    pointer-events: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

body {
    --framer-will-change-override: none
}

@supports (background:-webkit-named-image(i)) and (not (grid-template-rows:subgrid)) {
    body {
        --framer-will-change-override: transform
    }
}

body {
    --framer-will-change-filter-override: none
}

@supports (background:-webkit-named-image(i)) and (not (position-area:top right)) {
    body {
        --framer-will-change-filter-override: filter
    }
}

[data-framer-component-type] {
    position: absolute
}

[data-framer-component-type=Text] {
    cursor: inherit
}

[data-framer-component-text-autosized] * {
    white-space: pre
}

[data-framer-component-type=Text] > * {
    text-align: var(--framer-text-alignment, start)
}

[data-framer-component-type=Text] span span, [data-framer-component-type=Text] p span, [data-framer-component-type=Text] h1 span, [data-framer-component-type=Text] h2 span, [data-framer-component-type=Text] h3 span, [data-framer-component-type=Text] h4 span, [data-framer-component-type=Text] h5 span, [data-framer-component-type=Text] h6 span {
    display: block
}

[data-framer-component-type=Text] span span span, [data-framer-component-type=Text] p span span, [data-framer-component-type=Text] h1 span span, [data-framer-component-type=Text] h2 span span, [data-framer-component-type=Text] h3 span span, [data-framer-component-type=Text] h4 span span, [data-framer-component-type=Text] h5 span span, [data-framer-component-type=Text] h6 span span {
    display: unset
}

[data-framer-component-type=Text] div div span, [data-framer-component-type=Text] a div span, [data-framer-component-type=Text] span span span, [data-framer-component-type=Text] p span span, [data-framer-component-type=Text] h1 span span, [data-framer-component-type=Text] h2 span span, [data-framer-component-type=Text] h3 span span, [data-framer-component-type=Text] h4 span span, [data-framer-component-type=Text] h5 span span, [data-framer-component-type=Text] h6 span span, [data-framer-component-type=Text] a {
    font-family: var(--font-family);
    font-style: var(--font-style);
    font-weight: min(calc(var(--framer-font-weight-increase, 0) + var(--font-weight, 400)), 900);
    color: var(--text-color);
    letter-spacing: var(--letter-spacing);
    font-size: var(--font-size);
    text-transform: var(--text-transform);
    --text-decoration: var(--framer-text-decoration-style, solid) var(--framer-text-decoration, none) var(--framer-text-decoration-color, currentcolor) var(--framer-text-decoration-thickness, auto);
    --text-decoration-skip-ink: var(--framer-text-decoration-skip-ink);
    --text-underline-offset: var(--framer-text-decoration-offset);
    line-height: var(--line-height);
    --font-family: var(--framer-font-family);
    --font-style: var(--framer-font-style);
    --font-weight: var(--framer-font-weight);
    --text-color: var(--framer-text-color);
    --letter-spacing: var(--framer-letter-spacing);
    --font-size: var(--framer-font-size);
    --text-transform: var(--framer-text-transform);
    --line-height: var(--framer-line-height)
}

[data-framer-component-type=Text] a, [data-framer-component-type=Text] a div span, [data-framer-component-type=Text] a span span span, [data-framer-component-type=Text] a p span span, [data-framer-component-type=Text] a h1 span span, [data-framer-component-type=Text] a h2 span span, [data-framer-component-type=Text] a h3 span span, [data-framer-component-type=Text] a h4 span span, [data-framer-component-type=Text] a h5 span span, [data-framer-component-type=Text] a h6 span span {
    --font-family: var(--framer-link-font-family, var(--framer-font-family));
    --font-style: var(--framer-link-font-style, var(--framer-font-style));
    --font-weight: var(--framer-link-font-weight, var(--framer-font-weight));
    --text-color: var(--framer-link-text-color, var(--framer-text-color));
    --font-size: var(--framer-link-font-size, var(--framer-font-size));
    --text-transform: var(--framer-link-text-transform, var(--framer-text-transform));
    --text-decoration: var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, solid)) var(--framer-link-text-decoration, var(--framer-text-decoration, none)) var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, currentcolor)) var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, auto));
    --text-decoration-skip-ink: var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink));
    --text-underline-offset: var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset))
}

[data-framer-component-type=Text] a:hover, [data-framer-component-type=Text] a div span:hover, [data-framer-component-type=Text] a span span span:hover, [data-framer-component-type=Text] a p span span:hover, [data-framer-component-type=Text] a h1 span span:hover, [data-framer-component-type=Text] a h2 span span:hover, [data-framer-component-type=Text] a h3 span span:hover, [data-framer-component-type=Text] a h4 span span:hover, [data-framer-component-type=Text] a h5 span span:hover, [data-framer-component-type=Text] a h6 span span:hover {
    --font-family: var(--framer-link-hover-font-family, var(--framer-link-font-family, var(--framer-font-family)));
    --font-style: var(--framer-link-hover-font-style, var(--framer-link-font-style, var(--framer-font-style)));
    --font-weight: var(--framer-link-hover-font-weight, var(--framer-link-font-weight, var(--framer-font-weight)));
    --text-color: var(--framer-link-hover-text-color, var(--framer-link-text-color, var(--framer-text-color)));
    --font-size: var(--framer-link-hover-font-size, var(--framer-link-font-size, var(--framer-font-size)));
    --text-transform: var(--framer-link-hover-text-transform, var(--framer-link-text-transform, var(--framer-text-transform)));
    --text-decoration: var(--framer-link-hover-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, solid))) var(--framer-link-hover-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none))) var(--framer-link-hover-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, currentcolor))) var(--framer-link-hover-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, auto)));
    --text-decoration-skip-ink: var(--framer-link-hover-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink)));
    --text-underline-offset: var(--framer-link-hover-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset)))
}

[data-framer-component-type=Text].isCurrent a, [data-framer-component-type=Text].isCurrent a div span, [data-framer-component-type=Text].isCurrent a span span span, [data-framer-component-type=Text].isCurrent a p span span, [data-framer-component-type=Text].isCurrent a h1 span span, [data-framer-component-type=Text].isCurrent a h2 span span, [data-framer-component-type=Text].isCurrent a h3 span span, [data-framer-component-type=Text].isCurrent a h4 span span, [data-framer-component-type=Text].isCurrent a h5 span span, [data-framer-component-type=Text].isCurrent a h6 span span {
    --font-family: var(--framer-link-current-font-family, var(--framer-link-font-family, var(--framer-font-family)));
    --font-style: var(--framer-link-current-font-style, var(--framer-link-font-style, var(--framer-font-style)));
    --font-weight: var(--framer-link-current-font-weight, var(--framer-link-font-weight, var(--framer-font-weight)));
    --text-color: var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-text-color)));
    --font-size: var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size)));
    --text-transform: var(--framer-link-current-text-transform, var(--framer-link-text-transform, var(--framer-text-transform)));
    --text-decoration: var(--framer-link-current-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, solid))) var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none))) var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, currentcolor))) var(--framer-link-current-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, auto)));
    --text-decoration-skip-ink: var(--framer-link-current-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink)));
    --text-underline-offset: var(--framer-link-current-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset)))
}

[data-framer-component-type=RichTextContainer] {
    outline: none;
    flex-direction: column;
    flex-shrink: 0;
    justify-content: flex-start;
    display: flex
}

p.framer-text, div.framer-text, figure.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, ol.framer-text, ul.framer-text {
    margin: 0;
    padding: 0
}

p.framer-text, div.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, li.framer-text, ol.framer-text, ul.framer-text, mark.framer-text, span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-blockquote-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif));
    font-style: var(--framer-blockquote-font-style, var(--framer-font-style, normal));
    font-weight: var(--framer-blockquote-font-weight, var(--framer-font-weight, 400));
    color: var(--framer-blockquote-text-color, var(--framer-text-color, #000));
    font-size: calc(var(--framer-blockquote-font-size, var(--framer-font-size, 16px)) * var(--framer-font-size-scale, 1));
    letter-spacing: var(--framer-blockquote-letter-spacing, var(--framer-letter-spacing, 0));
    text-transform: var(--framer-blockquote-text-transform, var(--framer-text-transform, none));
    -webkit-text-decoration-line: var(--framer-blockquote-text-decoration, var(--framer-text-decoration, initial));
    text-decoration-line: var(--framer-blockquote-text-decoration, var(--framer-text-decoration, initial));
    -webkit-text-decoration-style: var(--framer-blockquote-text-decoration-style, var(--framer-text-decoration-style, initial));
    text-decoration-style: var(--framer-blockquote-text-decoration-style, var(--framer-text-decoration-style, initial));
    -webkit-text-decoration-color: var(--framer-blockquote-text-decoration-color, var(--framer-text-decoration-color, initial));
    text-decoration-color: var(--framer-blockquote-text-decoration-color, var(--framer-text-decoration-color, initial));
    text-decoration-thickness: var(--framer-blockquote-text-decoration-thickness, var(--framer-text-decoration-thickness, initial));
    text-decoration-skip-ink: var(--framer-blockquote-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink, initial));
    text-underline-offset: var(--framer-blockquote-text-decoration-offset, var(--framer-text-decoration-offset, initial));
    line-height: var(--framer-blockquote-line-height, var(--framer-line-height, 1.2em));
    text-align: var(--framer-blockquote-text-alignment, var(--framer-text-alignment, start));
    -webkit-text-stroke-width: var(--framer-text-stroke-width, initial);
    -webkit-text-stroke-color: var(--framer-text-stroke-color, initial);
    -moz-font-feature-settings: var(--framer-font-open-type-features, initial);
    -webkit-font-feature-settings: var(--framer-font-open-type-features, initial);
    font-feature-settings: var(--framer-font-open-type-features, initial);
    font-variation-settings: var(--framer-font-variation-axes, normal);
    text-wrap: var(--framer-text-wrap-override, var(--framer-text-wrap))
}

mark.framer-text, p.framer-text, div.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, li.framer-text, ol.framer-text, ul.framer-text {
    background-color: var(--framer-blockquote-text-background-color, var(--framer-text-background-color, initial));
    border-radius: var(--framer-blockquote-text-background-radius, var(--framer-text-background-radius, initial));
    corner-shape: var(--framer-blockquote-text-background-corner-shape, var(--framer-text-background-corner-shape, initial));
    padding: var(--framer-blockquote-text-background-padding, var(--framer-text-background-padding, initial))
}

@supports not (color:color(display-p3 1 1 1)) {
    p.framer-text, div.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, li.framer-text, ol.framer-text, ul.framer-text, span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))));
        -webkit-text-stroke-color: var(--framer-text-stroke-color-rgb, var(--framer-text-stroke-color, initial))
    }

    mark.framer-text {
        background-color: var(--framer-blockquote-text-background-color-rgb, var(--framer-blockquote-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))
    }
}

.framer-fit-text .framer-text {
    white-space: nowrap;
    white-space-collapse: preserve
}

strong.framer-text {
    font-family: var(--framer-blockquote-font-family-bold, var(--framer-font-family-bold));
    font-style: var(--framer-blockquote-font-style-bold, var(--framer-font-style-bold));
    font-weight: var(--framer-blockquote-font-weight-bold, var(--framer-font-weight-bold, bolder));
    font-variation-settings: var(--framer-blockquote-font-variation-axes-bold, var(--framer-font-variation-axes-bold))
}

em.framer-text {
    font-family: var(--framer-blockquote-font-family-italic, var(--framer-font-family-italic));
    font-style: var(--framer-blockquote-font-style-italic, var(--framer-font-style-italic, italic));
    font-weight: var(--framer-blockquote-font-weight-italic, var(--framer-font-weight-italic));
    font-variation-settings: var(--framer-blockquote-font-variation-axes-italic, var(--framer-font-variation-axes-italic))
}

em.framer-text > strong.framer-text {
    font-family: var(--framer-blockquote-font-family-bold-italic, var(--framer-font-family-bold-italic));
    font-style: var(--framer-blockquote-font-style-bold-italic, var(--framer-font-style-bold-italic, italic));
    font-weight: var(--framer-blockquote-font-weight-bold-italic, var(--framer-font-weight-bold-italic, bolder));
    font-variation-settings: var(--framer-blockquote-font-variation-axes-bold-italic, var(--framer-font-variation-axes-bold-italic))
}

p.framer-text:not(:first-child), div.framer-text:not(:first-child), h1.framer-text:not(:first-child), h2.framer-text:not(:first-child), h3.framer-text:not(:first-child), h4.framer-text:not(:first-child), h5.framer-text:not(:first-child), h6.framer-text:not(:first-child), ol.framer-text:not(:first-child), ul.framer-text:not(:first-child), blockquote.framer-text:not(:first-child), table.framer-text:not(:first-child), figure.framer-text:not(:first-child), .framer-image.framer-text:not(:first-child) {
    margin-top: var(--framer-blockquote-paragraph-spacing, var(--framer-paragraph-spacing, 0))
}

li.framer-text > ul.framer-text:nth-child(2), li.framer-text > ol.framer-text:nth-child(2) {
    margin-top: 0
}

.framer-text[data-text-fill] {
    -webkit-text-fill-color: transparent;
    padding: max(0em, calc(calc(1.3em - var(--framer-blockquote-line-height, var(--framer-line-height, 1.3em))) / 2));
    margin: min(0em, calc(calc(1.3em - var(--framer-blockquote-line-height, var(--framer-line-height, 1.3em))) / -2));
    -webkit-background-clip: text;
    background-clip: text;
    display: inline-block
}

code.framer-text, code.framer-text span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-code-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif));
    font-style: var(--framer-blockquote-font-style, var(--framer-code-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-blockquote-font-weight, var(--framer-code-font-weight, var(--framer-font-weight, 400)));
    color: var(--framer-blockquote-text-color, var(--framer-code-text-color, var(--framer-text-color, #000)));
    font-size: calc(var(--framer-blockquote-font-size, var(--framer-font-size, 16px)) * var(--framer-font-size-scale, 1));
    letter-spacing: var(--framer-blockquote-letter-spacing, var(--framer-letter-spacing, 0));
    line-height: var(--framer-blockquote-line-height, var(--framer-line-height, 1.2em))
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text, code.framer-text span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))
    }
}

blockquote.framer-text {
    unicode-bidi: initial;
    margin-block-start: initial;
    margin-block-end: initial;
    margin-inline-start: initial;
    margin-inline-end: initial
}

a.framer-text, a.framer-text span.framer-text:not([data-text-fill]), span.framer-text[data-nested-link], span.framer-text[data-nested-link] span.framer-text:not([data-text-fill]) {
    color: inherit;
    font-family: var(--framer-blockquote-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif)));
    font-style: var(--framer-blockquote-font-style, var(--framer-link-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-blockquote-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400)));
    font-size: calc(var(--framer-blockquote-font-size, var(--framer-font-size, 16px)) * var(--framer-font-size-scale, 1));
    text-transform: var(--framer-blockquote-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none)));
    cursor: var(--framer-custom-cursors, pointer);
    background-color: initial;
    border-radius: var(--framer-link-text-background-radius, initial);
    corner-shape: var(--framer-link-text-background-corner-shape, initial);
    padding: var(--framer-link-text-background-padding, initial)
}

a.framer-text, span.framer-text[data-nested-link] {
    color: var(--framer-blockquote-text-color, var(--framer-link-text-color, var(--framer-text-color, #000)));
    -webkit-text-decoration-line: var(--framer-blockquote-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial)));
    text-decoration-line: var(--framer-blockquote-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial)));
    -webkit-text-decoration-style: var(--framer-blockquote-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial)));
    text-decoration-style: var(--framer-blockquote-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial)));
    -webkit-text-decoration-color: var(--framer-blockquote-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial)));
    text-decoration-color: var(--framer-blockquote-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial)));
    text-decoration-thickness: var(--framer-blockquote-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, initial)));
    text-decoration-skip-ink: var(--framer-blockquote-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink, initial)));
    text-underline-offset: var(--framer-blockquote-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset, initial)));
    background-color: var(--framer-link-text-background-color, initial)
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text, span.framer-text[data-nested-link] {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))));
        background-color: var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial));
        -webkit-text-decoration-color: var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))));
        text-decoration-color: var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))
    }
}

code.framer-text a.framer-text, code.framer-text a.framer-text span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-nested-link], code.framer-text span.framer-text[data-nested-link] span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-code-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif));
    font-style: var(--framer-blockquote-font-style, var(--framer-code-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-blockquote-font-weight, var(--framer-code-font-weight, var(--framer-font-weight, 400)));
    color: inherit;
    font-size: calc(var(--framer-blockquote-font-size, var(--framer-font-size, 16px)) * var(--framer-font-size-scale, 1))
}

code.framer-text a.framer-text, code.framer-text span.framer-text[data-nested-link] {
    color: var(--framer-blockquote-text-color, var(--framer-link-text-color, var(--framer-code-text-color, var(--framer-text-color, #000))))
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text, code.framer-text a.framer-text span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-nested-link], code.framer-text span.framer-text[data-nested-link] span.framer-text:not([data-text-fill]) {
        color: var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))
    }
}

a.framer-text:hover, a.framer-text:hover span.framer-text:not([data-text-fill]), span.framer-text[data-nested-link]:hover, span.framer-text[data-nested-link]:hover span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-link-hover-font-family, var(--framer-blockquote-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif))));
    font-style: var(--framer-link-hover-font-style, var(--framer-blockquote-font-style, var(--framer-link-font-style, var(--framer-font-style, normal))));
    font-weight: var(--framer-link-hover-font-weight, var(--framer-blockquote-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400))));
    font-size: calc(var(--framer-link-hover-font-size, var(--framer-blockquote-font-size, var(--framer-font-size, 16px))) * var(--framer-font-size-scale, 1));
    text-transform: var(--framer-link-hover-text-transform, var(--framer-blockquote-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none))));
    border-radius: var(--framer-link-hover-text-background-radius, var(--framer-link-text-background-radius, var(--framer-text-background-radius, initial)));
    corner-shape: var(--framer-link-hover-text-background-corner-shape, var(--framer-link-text-background-corner-shape, var(--framer-text-background-corner-shape, initial)));
    padding: var(--framer-link-hover-text-background-padding, var(--framer-link-text-background-padding, var(--framer-text-background-padding, initial)))
}

a.framer-text:hover, span.framer-text[data-nested-link]:hover {
    color: var(--framer-link-hover-text-color, var(--framer-blockquote-text-color, var(--framer-link-text-color, var(--framer-text-color, #000))));
    -webkit-text-decoration-line: var(--framer-link-hover-text-decoration, var(--framer-blockquote-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial))));
    text-decoration-line: var(--framer-link-hover-text-decoration, var(--framer-blockquote-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial))));
    -webkit-text-decoration-style: var(--framer-link-hover-text-decoration-style, var(--framer-blockquote-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial))));
    text-decoration-style: var(--framer-link-hover-text-decoration-style, var(--framer-blockquote-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial))));
    -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color, var(--framer-blockquote-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial))));
    text-decoration-color: var(--framer-link-hover-text-decoration-color, var(--framer-blockquote-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial))));
    text-decoration-thickness: var(--framer-link-hover-text-decoration-thickness, var(--framer-blockquote-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, initial))));
    text-decoration-skip-ink: var(--framer-link-hover-text-decoration-skip-ink, var(--framer-blockquote-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink, initial))));
    text-underline-offset: var(--framer-link-hover-text-decoration-offset, var(--framer-blockquote-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset, initial))));
    background-color: var(--framer-link-hover-text-background-color, var(--framer-link-text-background-color, var(--framer-text-background-color, initial)))
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text:hover, span.framer-text[data-nested-link]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))));
        text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))
    }
}

code.framer-text a.framer-text:hover, code.framer-text span.framer-text[data-nested-link]:hover {
    color: var(--framer-link-hover-text-color, var(--framer-blockquote-text-color, var(--framer-link-text-color, var(--framer-code-text-color, var(--framer-text-color, #000)))))
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text:hover, code.framer-text span.framer-text[data-nested-link]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-blockquote-text-color-rgb, var(--framer-blockquote-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))))
    }
}

a.framer-text[data-framer-page-link-current], a.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]), span.framer-text[data-framer-page-link-current], span.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-link-current-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif)));
    font-style: var(--framer-link-current-font-style, var(--framer-link-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-link-current-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400)));
    font-size: calc(var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px))) * var(--framer-font-size-scale, 1));
    text-transform: var(--framer-link-current-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none)));
    border-radius: var(--framer-link-current-text-background-radius, var(--framer-link-text-background-radius, initial));
    corner-shape: var(--framer-link-current-text-background-corner-shape, var(--framer-link-text-background-corner-shape, initial));
    padding: var(--framer-link-current-text-background-padding, var(--framer-link-text-background-padding, initial))
}

a.framer-text[data-framer-page-link-current], span.framer-text[data-framer-page-link-current] {
    color: var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-text-color, #000)));
    -webkit-text-decoration-line: var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial)));
    text-decoration-line: var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial)));
    -webkit-text-decoration-style: var(--framer-link-current-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial)));
    text-decoration-style: var(--framer-link-current-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial)));
    -webkit-text-decoration-color: var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial)));
    text-decoration-color: var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial)));
    text-decoration-thickness: var(--framer-link-current-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, initial)));
    text-decoration-skip-ink: var(--framer-link-current-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink, initial)));
    text-underline-offset: var(--framer-link-current-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset, initial)));
    background-color: var(--framer-link-current-text-background-color, var(--framer-link-text-background-color, var(--framer-text-background-color, initial)))
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text[data-framer-page-link-current], span.framer-text[data-framer-page-link-current] {
        color: var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))));
        background-color: var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))));
        text-decoration-color: var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))
    }
}

code.framer-text a.framer-text[data-framer-page-link-current], code.framer-text a.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-framer-page-link-current], code.framer-text span.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]) {
    font-family: var(--framer-code-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif));
    font-style: var(--framer-code-font-style, var(--framer-font-style, normal));
    font-weight: var(--framer-code-font-weight, var(--framer-font-weight, 400));
    color: inherit;
    font-size: calc(var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px))) * var(--framer-font-size-scale, 1))
}

code.framer-text a.framer-text[data-framer-page-link-current], code.framer-text span.framer-text[data-framer-page-link-current] {
    color: var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-code-text-color, var(--framer-text-color, #000))))
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text[data-framer-page-link-current], code.framer-text a.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-framer-page-link-current], code.framer-text span.framer-text[data-framer-page-link-current] span.framer-text:not([data-text-fill]) {
        color: var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))));
        background-color: var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, var(--framer-text-background-color-rgb, var(--framer-text-background-color, initial))))))
    }
}

a.framer-text[data-framer-page-link-current]:hover, a.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]), span.framer-text[data-framer-page-link-current]:hover, span.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]) {
    color: inherit;
    font-family: var(--framer-link-hover-font-family, var(--framer-link-current-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif))));
    font-style: var(--framer-link-hover-font-style, var(--framer-link-current-font-style, var(--framer-link-font-style, var(--framer-font-style, normal))));
    font-weight: var(--framer-link-hover-font-weight, var(--framer-link-current-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400))));
    font-size: calc(var(--framer-link-hover-font-size, var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px)))) * var(--framer-font-size-scale, 1));
    text-transform: var(--framer-link-hover-text-transform, var(--framer-link-current-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none))));
    border-radius: var(--framer-link-hover-text-background-radius, var(--framer-link-current-text-background-radius, var(--framer-link-text-background-radius, initial)));
    corner-shape: var(--framer-link-hover-text-background-corner-shape, var(--framer-link-current-text-background-corner-shape, var(--framer-link-text-background-corner-shape, initial)));
    padding: var(--framer-link-hover-text-background-padding, var(--framer-link-current-text-background-padding, var(--framer-link-text-background-padding, initial)))
}

a.framer-text[data-framer-page-link-current]:hover, span.framer-text[data-framer-page-link-current]:hover {
    color: var(--framer-link-hover-text-color, var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-text-color, #000))));
    -webkit-text-decoration-line: var(--framer-link-hover-text-decoration, var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial))));
    text-decoration-line: var(--framer-link-hover-text-decoration, var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, initial))));
    -webkit-text-decoration-style: var(--framer-link-hover-text-decoration-style, var(--framer-link-current-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial))));
    text-decoration-style: var(--framer-link-hover-text-decoration-style, var(--framer-link-current-text-decoration-style, var(--framer-link-text-decoration-style, var(--framer-text-decoration-style, initial))));
    -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial))));
    text-decoration-color: var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color, initial))));
    text-decoration-thickness: var(--framer-link-hover-text-decoration-thickness, var(--framer-link-current-text-decoration-thickness, var(--framer-link-text-decoration-thickness, var(--framer-text-decoration-thickness, initial))));
    text-decoration-skip-ink: var(--framer-link-hover-text-decoration-skip-ink, var(--framer-link-current-text-decoration-skip-ink, var(--framer-link-text-decoration-skip-ink, var(--framer-text-decoration-skip-ink, initial))));
    text-underline-offset: var(--framer-link-hover-text-decoration-offset, var(--framer-link-current-text-decoration-offset, var(--framer-link-text-decoration-offset, var(--framer-text-decoration-offset, initial))));
    background-color: var(--framer-link-hover-text-background-color, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color, initial)))
}

@supports not (color:color(display-p3 1 1 1)) {
    a.framer-text[data-framer-page-link-current]:hover, span.framer-text[data-framer-page-link-current]:hover {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial))))));
        -webkit-text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))));
        text-decoration-color: var(--framer-link-hover-text-decoration-color-rgb, var(--framer-link-hover-text-decoration-color, var(--framer-link-current-text-decoration-color-rgb, var(--framer-link-current-text-decoration-color, var(--framer-link-text-decoration-color-rgb, var(--framer-link-text-decoration-color, var(--framer-text-decoration-color-rgb, var(--framer-text-decoration-color, currentcolor))))))))
    }
}

code.framer-text a.framer-text[data-framer-page-link-current]:hover, code.framer-text span.framer-text[data-framer-page-link-current]:hover {
    color: var(--framer-link-hover-text-color, var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-code-text-color, var(--framer-text-color, #000)))))
}

@supports not (color:color(display-p3 1 1 1)) {
    code.framer-text a.framer-text[data-framer-page-link-current]:hover, code.framer-text a.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]), code.framer-text span.framer-text[data-framer-page-link-current]:hover, code.framer-text span.framer-text[data-framer-page-link-current]:hover span.framer-text:not([data-text-fill]) {
        color: var(--framer-link-hover-text-color-rgb, var(--framer-link-hover-text-color, var(--framer-link-current-text-color-rgb, var(--framer-link-current-text-color, var(--framer-link-text-color-rgb, var(--framer-link-text-color, var(--framer-code-text-color-rgb, var(--framer-code-text-color, var(--framer-text-color-rgb, var(--framer-text-color, #000))))))))));
        background-color: var(--framer-link-hover-text-background-color-rgb, var(--framer-link-hover-text-background-color, var(--framer-link-current-text-background-color-rgb, var(--framer-link-current-text-background-color, var(--framer-link-text-background-color-rgb, var(--framer-link-text-background-color, initial))))))
    }
}

.framer-image.framer-text {
    max-width: 100%;
    height: auto;
    display: block
}

.text-styles-preset-reset.framer-text {
    --framer-font-family: "Poppins", "Poppins Placeholder", sans-serif;
    --framer-font-style: normal;
    --framer-font-weight: 500;
    --framer-text-color: #000;
    --framer-font-size: 16px;
    --framer-letter-spacing: 0;
    --framer-text-transform: none;
    --framer-text-decoration: none;
    --framer-text-decoration-style: none;
    --framer-text-decoration-color: none;
    --framer-text-decoration-thickness: none;
    --framer-text-decoration-skip-ink: none;
    --framer-text-decoration-offset: none;
    --framer-line-height: 1.2em;
    --framer-text-alignment: start;
    --framer-font-open-type-features: normal;
    --framer-text-background-color: initial;
    --framer-text-background-radius: initial;
    --framer-text-background-corner-shape: initial;
    --framer-text-background-padding: initial
}

ol.framer-text {
    --list-style-type: decimal
}

ul.framer-text, ol.framer-text {
    padding-inline-start: 0;
    position: relative
}

li.framer-text {
    counter-increment: list-item;
    padding-inline-start: 2ch;
    list-style: none
}

ol.framer-text > li.framer-text:before {
    content: counter(list-item, var(--list-style-type)) ".";
    font-variant-numeric: tabular-nums;
    position: absolute;
    inset-inline-start: 0
}

ol.framer-text > li.framer-text:nth-last-child(n+10), ol.framer-text > li.framer-text:nth-last-child(n+10) ~ li {
    padding-inline-start: 3ch
}

ol.framer-text > li.framer-text:nth-last-child(n+100), ol.framer-text > li.framer-text:nth-last-child(n+100) ~ li {
    padding-inline-start: 4ch
}

ol.framer-text > li.framer-text:nth-last-child(n+1000), ol.framer-text > li.framer-text:nth-last-child(n+1000) ~ li {
    padding-inline-start: 5ch
}

ol.framer-text > li.framer-text:nth-last-child(n+10000), ol.framer-text > li.framer-text:nth-last-child(n+10000) ~ li {
    padding-inline-start: 6ch
}

ol.framer-text > li.framer-text:nth-last-child(n+100000), ol.framer-text > li.framer-text:nth-last-child(n+100000) ~ li {
    padding-inline-start: 7ch
}

ol.framer-text > li.framer-text:nth-last-child(n+1000000), ol.framer-text > li.framer-text:nth-last-child(n+1000000) ~ li {
    padding-inline-start: 8ch
}

ul.framer-text > li.framer-text:before {
    content: "•";
    position: absolute;
    inset-inline-start: 0
}

.framer-table-wrapper {
    overflow-x: auto
}

table.framer-text, .framer-table-wrapper table.framer-text {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: auto;
    word-break: normal;
    width: 100%
}

td.framer-text, th.framer-text {
    vertical-align: top;
    min-width: 16ch
}

.framer-text-module[data-width=fill] > :first-child, .framer-text-module:not([data-width=fit])[style*=aspect-ratio] > :first-child {
    width: 100%
}

@supports not (aspect-ratio:1) {
    .framer-text-module:not([data-width=fit])[style*=aspect-ratio] {
        position: relative
    }

    .framer-text-module:not([data-width=fit])[style*=aspect-ratio]:before {
        content: "";
        padding-bottom: calc(100% / calc(var(--aspect-ratio)));
        display: block
    }

    .framer-text-module[data-width=fill] > :first-child, .framer-text-module:not([data-width=fit])[style*=aspect-ratio] > :first-child {
        height: 100%;
        position: absolute;
        top: 0;
        left: 0
    }
}

[data-framer-component-type=DeprecatedRichText] {
    cursor: inherit
}

[data-framer-component-type=DeprecatedRichText] .text-styles-preset-reset {
    --framer-font-family: "Poppins", "Poppins Placeholder", sans-serif;
    --framer-font-style: normal;
    --framer-font-weight: 500;
    --framer-text-color: #000;
    --framer-font-size: 16px;
    --framer-letter-spacing: 0;
    --framer-text-transform: none;
    --framer-text-decoration: none;
    --framer-line-height: 1.2em;
    --framer-text-alignment: start;
    --framer-font-open-type-features: normal;
    --font-variation-settings: normal
}

[data-framer-component-type=DeprecatedRichText] p, [data-framer-component-type=DeprecatedRichText] div, [data-framer-component-type=DeprecatedRichText] h1, [data-framer-component-type=DeprecatedRichText] h2, [data-framer-component-type=DeprecatedRichText] h3, [data-framer-component-type=DeprecatedRichText] h4, [data-framer-component-type=DeprecatedRichText] h5, [data-framer-component-type=DeprecatedRichText] h6 {
    margin: 0;
    padding: 0
}

[data-framer-component-type=DeprecatedRichText] p, [data-framer-component-type=DeprecatedRichText] div, [data-framer-component-type=DeprecatedRichText] h1, [data-framer-component-type=DeprecatedRichText] h2, [data-framer-component-type=DeprecatedRichText] h3, [data-framer-component-type=DeprecatedRichText] h4, [data-framer-component-type=DeprecatedRichText] h5, [data-framer-component-type=DeprecatedRichText] h6, [data-framer-component-type=DeprecatedRichText] li, [data-framer-component-type=DeprecatedRichText] ol, [data-framer-component-type=DeprecatedRichText] ul, [data-framer-component-type=DeprecatedRichText] span:not([data-text-fill]) {
    font-family: var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif);
    font-style: var(--framer-font-style, normal);
    font-weight: var(--framer-font-weight, 400);
    color: var(--framer-text-color, #000);
    font-size: var(--framer-font-size, 16px);
    letter-spacing: var(--framer-letter-spacing, 0);
    text-transform: var(--framer-text-transform, none);
    -webkit-text-decoration: var(--framer-text-decoration, none);
    text-decoration: var(--framer-text-decoration, none);
    line-height: var(--framer-line-height, 1.2em);
    text-align: var(--framer-text-alignment, start)
}

[data-framer-component-type=DeprecatedRichText] p:not(:first-child), [data-framer-component-type=DeprecatedRichText] div:not(:first-child), [data-framer-component-type=DeprecatedRichText] h1:not(:first-child), [data-framer-component-type=DeprecatedRichText] h2:not(:first-child), [data-framer-component-type=DeprecatedRichText] h3:not(:first-child), [data-framer-component-type=DeprecatedRichText] h4:not(:first-child), [data-framer-component-type=DeprecatedRichText] h5:not(:first-child), [data-framer-component-type=DeprecatedRichText] h6:not(:first-child), [data-framer-component-type=DeprecatedRichText] ol:not(:first-child), [data-framer-component-type=DeprecatedRichText] ul:not(:first-child), [data-framer-component-type=DeprecatedRichText] .framer-image:not(:first-child) {
    margin-top: var(--framer-paragraph-spacing, 0)
}

[data-framer-component-type=DeprecatedRichText] span[data-text-fill] {
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    display: inline-block
}

[data-framer-component-type=DeprecatedRichText] a, [data-framer-component-type=DeprecatedRichText] a span:not([data-text-fill]) {
    font-family: var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif));
    font-style: var(--framer-link-font-style, var(--framer-font-style, normal));
    font-weight: var(--framer-link-font-weight, var(--framer-font-weight, 400));
    color: var(--framer-link-text-color, var(--framer-text-color, #000));
    font-size: var(--framer-link-font-size, var(--framer-font-size, 16px));
    text-transform: var(--framer-link-text-transform, var(--framer-text-transform, none));
    -webkit-text-decoration: var(--framer-link-text-decoration, var(--framer-text-decoration, none));
    text-decoration: var(--framer-link-text-decoration, var(--framer-text-decoration, none))
}

[data-framer-component-type=DeprecatedRichText] a:hover, [data-framer-component-type=DeprecatedRichText] a:hover span:not([data-text-fill]) {
    font-family: var(--framer-link-hover-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif)));
    font-style: var(--framer-link-hover-font-style, var(--framer-link-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-link-hover-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400)));
    color: var(--framer-link-hover-text-color, var(--framer-link-text-color, var(--framer-text-color, #000)));
    font-size: var(--framer-link-hover-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px)));
    text-transform: var(--framer-link-hover-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none)));
    -webkit-text-decoration: var(--framer-link-hover-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none)));
    text-decoration: var(--framer-link-hover-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none)))
}

[data-framer-component-type=DeprecatedRichText] a[data-framer-page-link-current], [data-framer-component-type=DeprecatedRichText] a[data-framer-page-link-current] span:not([data-text-fill]):not([data-nested-link]) {
    font-family: var(--framer-link-current-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif)));
    font-style: var(--framer-link-current-font-style, var(--framer-link-font-style, var(--framer-font-style, normal)));
    font-weight: var(--framer-link-current-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400)));
    color: var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-text-color, #000)));
    font-size: var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px)));
    text-transform: var(--framer-link-current-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none)));
    -webkit-text-decoration: var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none)));
    text-decoration: var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none)))
}

[data-framer-component-type=DeprecatedRichText] a[data-framer-page-link-current]:hover, [data-framer-component-type=DeprecatedRichText] a[data-framer-page-link-current]:hover span:not([data-text-fill]):not([data-nested-link]) {
    font-family: var(--framer-link-hover-font-family, var(--framer-link-current-font-family, var(--framer-link-font-family, var(--framer-font-family, "Poppins", "Poppins Placeholder", sans-serif))));
    font-style: var(--framer-link-hover-font-style, var(--framer-link-current-font-style, var(--framer-link-font-style, var(--framer-font-style, normal))));
    font-weight: var(--framer-link-hover-font-weight, var(--framer-link-current-font-weight, var(--framer-link-font-weight, var(--framer-font-weight, 400))));
    color: var(--framer-link-hover-text-color, var(--framer-link-current-text-color, var(--framer-link-text-color, var(--framer-text-color, #000))));
    font-size: var(--framer-link-hover-font-size, var(--framer-link-current-font-size, var(--framer-link-font-size, var(--framer-font-size, 16px))));
    text-transform: var(--framer-link-hover-text-transform, var(--framer-link-current-text-transform, var(--framer-link-text-transform, var(--framer-text-transform, none))));
    -webkit-text-decoration: var(--framer-link-hover-text-decoration, var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none))));
    text-decoration: var(--framer-link-hover-text-decoration, var(--framer-link-current-text-decoration, var(--framer-link-text-decoration, var(--framer-text-decoration, none))))
}

[data-framer-component-type=DeprecatedRichText] strong {
    font-weight: bolder
}

[data-framer-component-type=DeprecatedRichText] em {
    font-style: italic
}

[data-framer-component-type=DeprecatedRichText] .framer-image {
    max-width: 100%;
    height: auto;
    display: block
}

[data-framer-component-type=DeprecatedRichText] ul, [data-framer-component-type=DeprecatedRichText] ol {
    width: 100%;
    margin: 0;
    padding-left: 0;
    display: table
}

[data-framer-component-type=DeprecatedRichText] li {
    counter-increment: list-item;
    list-style: none;
    display: table-row
}

[data-framer-component-type=DeprecatedRichText] ol > li:before {
    box-sizing: border-box;
    content: counter(list-item) ".";
    white-space: nowrap;
    width: 2.25ch;
    padding-right: .75ch;
    display: table-cell
}

[data-framer-component-type=DeprecatedRichText] ul > li:before {
    box-sizing: border-box;
    content: "•";
    width: 2.25ch;
    padding-right: .75ch;
    display: table-cell
}

:not([data-framer-generated]) > [data-framer-stack-content-wrapper] > *, :not([data-framer-generated]) > [data-framer-stack-content-wrapper] > [data-framer-component-type], :not([data-framer-generated]) > [data-framer-stack-content-wrapper] > [data-framer-legacy-stack-gap-enabled] > *, :not([data-framer-generated]) > [data-framer-stack-content-wrapper] > [data-framer-legacy-stack-gap-enabled] > [data-framer-component-type] {
    position: relative
}

[data-framer-stack-content-wrapper][data-framer-stack-gap-enabled=true] {
    row-gap: var(--stack-native-row-gap);
    column-gap: var(--stack-native-column-gap)
}

NavigationContainer [data-framer-component-type=NavigationContainer] > *, [data-framer-component-type=NavigationContainer] > [data-framer-component-type] {
    position: relative
}

[data-framer-component-type=Scroll]::-webkit-scrollbar {
    display: none
}

[data-framer-component-type=ScrollContentWrapper] > * {
    position: relative
}

[data-framer-component-type=NativeScroll] {
    -webkit-overflow-scrolling: touch
}

[data-framer-component-type=NativeScroll] > * {
    position: relative
}


[data-framer-component-type=NativeScroll].scrollbar-hidden::-webkit-scrollbar {
    display: none
}

[data-framer-component-type=PageContentWrapper] > *, [data-framer-component-type=PageContentWrapper] > [data-framer-component-type] {
    position: relative
}

[data-framer-component-type=DeviceComponent].no-device > * {
    width: 100% !important;
    height: 100% !important
}

[data-is-present=false], [data-is-present=false] * {
    pointer-events: none !important
}

[data-framer-cursor=pointer] {
    cursor: pointer
}

[data-framer-cursor=grab] {
    cursor: grab
}

[data-framer-cursor=grab]:active {
    cursor: grabbing
}

[data-framer-component-type=Frame] *, [data-framer-component-type=Stack] * {
    pointer-events: auto
}

[data-framer-generated] * {
    pointer-events: unset
}

.svgContainer svg {
    display: block
}

[data-reset=button] {
    background: 0 0;
    border-width: 0;
    padding: 0
}

[data-hide-scrollbars=true]::-webkit-scrollbar {
    width: 0;
    height: 0
}

[data-hide-scrollbars=true]::-webkit-scrollbar-thumb {
    background: 0 0
}

[data-hide-scrollbars=true] {
    scrollbar-width: none
}

@supports not (overflow:clip) {
    :root {
        --overflow-clip-fallback: hidden
    }
}

.framer-lightbox-container {
    opacity: 1 !important;
    pointer-events: auto !important
}

@supports (background:-webkit-named-image(i)) and (not (contain-intrinsic-size:inherit)) {
    div.framer-text, p.framer-text, h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text, h5.framer-text, h6.framer-text, ol.framer-text, ul.framer-text, li.framer-text, blockquote.framer-text, .framer-text.framer-image {
        display: var(--text-truncation-display-inline-for-safari-16, revert)
    }

    div.framer-text:after, p.framer-text:after, h1.framer-text:after, h2.framer-text:after, h3.framer-text:after, h4.framer-text:after, h5.framer-text:after, h6.framer-text:after, ol.framer-text:after, ul.framer-text:after, li.framer-text:after, blockquote.framer-text:after, .framer-text.framer-image:after {
        content: var(--text-truncation-line-break-for-safari-16);
        white-space: pre
    }

    .framer-text.framer-text-module, .framer-text.framer-table-wrapper {
        display: var(--text-truncation-display-none-for-safari-16, revert)
    }

    p.framer-text[data-text-fill] {
        display: var(--text-truncation-display-inline-for-safari-16, inline-block)
    }
}

@supports (corner-shape:superellipse(2)) {
    :root {
        --one-if-corner-shape-supported: 1
    }
}


/* Editor Bar Styles */

#__framer-editorbar-container {
    align-items: center;
    display: flex;
    gap: 8px;
    position: fixed;
    z-index: calc(2147483647);
    width: max-content;
    cursor: pointer;
}

#__framer-editorbar-label {
    background-color: #111;
    border-radius: 8px;
    font-family: "Poppins", "Poppins Placeholder", sans-serif;
    font-size: 12px;
    height: fit-content;
    opacity: 0;
    padding: 4px 8px;
    transition: opacity 0.4s ease-out;
    font-weight: 500;
    flex-shrink: 0;
    position: fixed;
    width: max-content;
    pointer-events: none;
    user-select: none;
}

#__framer-editorbar-button {
    all: unset;
    align-items: center;
    border-radius: 15px;
    display: flex;
    height: 30px;
    justify-content: center;
    width: 30px;
    flex-shrink: 0;
}

#__framer-editorbar-label.__framer-editorbar-button-tooltip-visible {
    opacity: 1;
}

#__framer-editorbar-label, #__framer-editorbar-button {
    backdrop-filter: blur(10px);
    background-color: rgba(34, 34, 34, 0.8);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 4px 0px, rgba(0, 0, 0, 0.05) 0px 1px 0px 0px, rgba(255, 255, 255, 0.15) 0px 0px 0px 1px;
    color: #fff;
}

#__framer-editorbar-loading-spinner {
    width: 12px;
    height: 12px;
    -webkit-mask: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAApNJREFUSA2tlUtLlFEYgEe7mtFFQ8NLFBG1SJAwahtiLVy5ceVSEPQH1LZf0Lp9FO1bdYNyI7gyBFcS2kAzilYq3sfxeYZ55Zv6FGfohWfOd97vnPd23u9MXeZoaeb1Q7gPHXAFzsAS5GACxiEPqVKXqs1kmtAPQi+cAtedToz1PJ8ExxPwDl7CAlRImoN7rBiF86ABHTiGAzMIh8n3O+ifwWc4EL0n5TGTYQijvjNSxbUadozInUeGZ3nuh1WYgpIkM+hGMwYajAgdrfUn+AaLoLTCAxiAOxCZxL4RdB+gZMjxEjwHo4hS8Jh5DR9hz0mKaNizegoNEI7Wee6FXJTISG6AUgDr+QImoAiHie+mwZJow/PRps4uwnsnRj8Epqc4voVJJ8eULOtW4BFYYjPpgjc+3IWI2sh/wFeoVl6xYQ48dDGLfjOwc/ygQqz595hUMVouS9QHBm4l6k3HWpnBLqicgVrlCxujSbR1Swd+UDpQYRS/oVaZZ2MWwlZBB9Zdxf+QTYw8SRgq6sAvz7vH6JULEB9USVHFjzZskgPRQR4ayxoXXIdaHdg9HrB2rErByWxZERnYtrWUzD0esDbtTmXPhzXwHrKLxEUbYGbVyDkWWwkdadfqbPmwDXZSCyh2VAf8BM/nOOJH5Y0QopMt2I5U/KO4DZZJB47XwEX+ex0mGroMV8sLwp56gyuGwiyW4SZ4c8bt2cZzO7jBNeqtsRHbeZ1g9krsMbhfYPv/c5gecA+4yAVuitFszE5Hjva872OMdXagF19JIoOYWyozMTI3J0tmA6gLvXPfO1cc/XOqOLe/HbjwD8yCXRD3VNJROEgatiRZMJsKsbZHia3nAdphtq8fkiWyXJbBe8uM1aXKPouNnz2Bm1kwAAAAAElFTkSuQmCC);
    mask: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAApNJREFUSA2tlUtLlFEYgEe7mtFFQ8NLFBG1SJAwahtiLVy5ceVSEPQH1LZf0Lp9FO1bdYNyI7gyBFcS2kAzilYq3sfxeYZ55Zv6FGfohWfOd97vnPd23u9MXeZoaeb1Q7gPHXAFzsAS5GACxiEPqVKXqs1kmtAPQi+cAtedToz1PJ8ExxPwDl7CAlRImoN7rBiF86ABHTiGAzMIh8n3O+ifwWc4EL0n5TGTYQijvjNSxbUadozInUeGZ3nuh1WYgpIkM+hGMwYajAgdrfUn+AaLoLTCAxiAOxCZxL4RdB+gZMjxEjwHo4hS8Jh5DR9hz0mKaNizegoNEI7Wee6FXJTISG6AUgDr+QImoAiHie+mwZJow/PRps4uwnsnRj8Epqc4voVJJ8eULOtW4BFYYjPpgjc+3IWI2sh/wFeoVl6xYQ48dDGLfjOwc/ygQqz595hUMVouS9QHBm4l6k3HWpnBLqicgVrlCxujSbR1Swd+UDpQYRS/oVaZZ2MWwlZBB9Zdxf+QTYw8SRgq6sAvz7vH6JULEB9USVHFjzZskgPRQR4ayxoXXIdaHdg9HrB2rErByWxZERnYtrWUzD0esDbtTmXPhzXwHrKLxEUbYGbVyDkWWwkdadfqbPmwDXZSCyh2VAf8BM/nOOJH5Y0QopMt2I5U/KO4DZZJB47XwEX+ex0mGroMV8sLwp56gyuGwiyW4SZ4c8bt2cZzO7jBNeqtsRHbeZ1g9krsMbhfYPv/c5gecA+4yAVuitFszE5Hjva872OMdXagF19JIoOYWyozMTI3J0tmA6gLvXPfO1cc/XOqOLe/HbjwD8yCXRD3VNJROEgatiRZMJsKsbZHia3nAdphtq8fkiWyXJbBe8uM1aXKPouNnz2Bm1kwAAAAAElFTkSuQmCC);
    -webkit-mask-size: 12px;
    mask-size: 12px;
    background-color: #fff;


    animation-duration: 800ms;
    animation-iteration-count: infinite;
    animation-name: __framer-loading-spin;
    animation-timing-function: linear;
}

@keyframes __framer-loading-spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}


#__framer-editorbar {
    color-scheme: light dark;
    overflow: hidden;
    position: fixed;
    border: none;
    z-index: calc(2147483647);
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    touch-action: manipulation;
}

@supports (height: 100dvh) {
    #__framer-editorbar {
        height: 100dvh;
    }
}

#__framer-editorbar.status_hidden {
    display: none;
}

#__framer-editorbar.status_visually_hidden {
    clip-path: circle(1px at calc(100% - 20px) calc(50% + 4px));
    z-index: calc(2147483647 - 1);
}

#__framer-editorbar.status_measuring {
    clip-path: unset;
}


/* HTML Body Style */
html body {
    background: rgb(255, 255, 255);
}

html {
    scroll-behavior: smooth;
}

/* Accordion Styles */
.accordion-item {
    display: flex;
    flex-direction: column;
}

.accordion-header {
    width: 100%;
}

.framer-fy9Id .accordion-item {
    flex-direction: column;
    align-items: stretch;
}

.accordion-item .accordion-content {
    align-self: stretch;
}

.accordion-content {
    overflow: hidden;
    transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease, margin-top 0.35s ease;
    height: 0;
    opacity: 0;
    margin-top: 0;
    width: 100%;
    will-change: height, opacity, margin-top;
}

.accordion-content.accordion-open {
    opacity: 1;
    margin-top: 1em;
}

.accordion-icon {
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: #ffffff;
    position: relative;
    flex: 0 0 26px;
    align-self: flex-start;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.accordion-icon svg {
    display: none;
}

.accordion-icon::before,
.accordion-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 12px;
    height: 2px;
    background: #09112e;
    border-radius: 2px;
    transform: translate(-50%, -50%);
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.accordion-icon::after {
    width: 2px;
    height: 12px;
}

.accordion-item.is-open .accordion-icon {
    border-color: rgba(0, 146, 255, 0.4);
}

.accordion-item.is-open .accordion-icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) scaleY(0.6);
}

.accordion-header {
    user-select: none;
}

.framer-fy9Id .framer-1qs4dhi .accordion-item {
    gap: 0;
}

/* Modal styles */
html.modal-open,
body.modal-open {
    overflow: hidden;
}

.js-open-modal {
    cursor: pointer;
}

.modal-overlay {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(9, 17, 46, 0.55);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
    z-index: 99999;
}

.modal-overlay.is-open {
    opacity: 1;
    pointer-events: auto;
}

.modal-panel {
    position: relative;
    width: min(961px, 100%);
    height: min(546px, 100%);
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 32px 80px rgba(9, 17, 46, 0.25);
    overflow: hidden;
    display: flex;
    transform: translateY(16px) scale(0.98);
    transition: transform 0.25s ease;
}

.modal-overlay.is-open .modal-panel {
    transform: translateY(0) scale(1);
}

.modal-aside {
    flex: 0 0 426px;
    padding: 64px 48px;
    background: #e7f3fb;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
}

.modal-logo {
    position: absolute;
    left: 28px;
    bottom: 28px;
    width: 140px;
    display: none;
}

.modal-logo img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}

.modal-logo-tagline {
    margin-top: 6px;
    font-family: "Poppins", "Poppins Placeholder", sans-serif;
    font-weight: 400;
    font-size: 11.31px;
    line-height: 1.08;
    letter-spacing: 0.01em;
    color: #0a122f;
}


.modal-aside::before {
    content: "";
    position: absolute;
    border: 1.5px solid #ffffff;
    border-radius: 50%;
    opacity: 0.8;
    width: 420px;
    height: 420px;
    top: -180px;
    left: -210px;
    z-index: 0;
}

.modal-aside::after {
    content: "";
    position: absolute;
    border: 1.5px solid #ffffff;
    border-radius: 50%;
    opacity: 0.8;
    width: 320px;
    height: 320px;
    bottom: -150px;
    right: -180px;
    z-index: 0;
}

.modal-badge {
    display: none;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #09112e;
    background: #ffffff;
    border-radius: 999px;
    padding: 6px 12px;
    box-shadow: 0 10px 24px rgba(9, 17, 46, 0.08);
    margin-bottom: 28px;
}

.modal-badge span {
    color: #0092ff;
}

.modal-aside h3 {
    display: none;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #09112e;
    margin-bottom: 16px;
}

.modal-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 16px;
    width: 100%;
    max-width: 320px;
    position: relative;
    z-index: 1;
}

.modal-list li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 12px 20px 12px 14px;
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: -0.04em;
    color: #09112e;
    width: fit-content;
    max-width: 100%;
}

.modal-list-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex-wrap: nowrap;
}

.modal-list-title {
    display: block;
    font-weight: 600;
    white-space: normal;
}

.modal-list-desc {
    display: block;
    font-weight: 400;
    font-size: inherit;
    line-height: 1.3;
    white-space: normal;
}

.modal-check {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 0;
    display: block;
    object-fit: contain;
}

.modal-main {
    flex: 0 0 535px;
    padding: 0 72px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 32px;
    width: 100%;
}

.modal-success-icon {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    background: rgba(71, 217, 147, 0.2);
    display: none;
    align-items: center;
    justify-content: center;
}

.modal-success-icon svg {
    width: 20px;
    height: 20px;
    display: block;
}

.modal-overlay.is-success .modal-success-icon {
    display: flex;
}

.modal-overlay.is-success .modal-main {
    align-items: center;
    text-align: center;
    gap: 40px;
}

.modal-overlay.is-success .modal-main h2,
.modal-overlay.is-success .modal-main p {
    text-align: center;
}

.modal-main h2 {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;
    color: #09112e;
}

.modal-main p {
    font-size: 16px;
    line-height: 1.5;
    color: #09112e;
}

.modal-main h2,
.modal-main p,
.modal-form {
    max-width: 391px;
    width: 100%;
}

.modal-form {
    display: grid;
    gap: 16px;
    margin-top: 4px;
    width: 100%;
}

.modal-form label {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #09112e;
    text-align: left;
    justify-self: start;
    align-self: flex-start;
}

.modal-form input {
    height: 48px;
    border-radius: 8px;
    border: 1px solid #9da0ac;
    padding: 0 14px;
    font-size: 16px;
    color: #09112e;
}

.modal-form input::placeholder {
    color: rgba(10, 18, 47, 0.44);
}

.modal-form input:focus {
    outline: 2px solid rgba(0, 146, 255, 0.35);
    border-color: #0092ff;
}

.modal-form input.is-error {
    border-color: #c62828;
    outline: 2px solid rgba(198, 40, 40, 0.25);
}

.modal-submit {
    height: 48px;
    border-radius: 6px;
    border: none;
    background: #0092ff;
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -0.02em;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

@media (min-width: 768px) {
    .modal-form input,
    .modal-submit {
        width: 100%;
        max-width: 391px;
        box-sizing: border-box;
    }
}

.modal-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(0, 146, 255, 0.25);
}

.modal-error {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
    color: #c62828;
    display: none;
}

.modal-form .modal-error {
    color: #c62828;
}

.modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.modal-close img {
    width: 18px;
    height: 18px;
    display: block;
}

@media (min-width: 768px) {
    .modal-logo {
        display: block;
    }

    .modal-aside {
        gap: 28px;
    }
}

@media (max-width: 767px) {
    .modal-panel {
        width: 684px;
        max-width: 100%;
        height: 464px;
        flex-direction: row;
        border-radius: 16px;
    }

    .modal-aside {
        flex: 0 0 320px;
        width: 320px;
        height: 464px;
        padding: 0;
        background: #e7f3fb;
        align-items: center;
        justify-content: center;
        gap: 16px;
    }

    .modal-aside::before {
        width: 260px;
        height: 260px;
        top: -110px;
        left: -110px;
    }

    .modal-aside::after {
        width: 210px;
        height: 210px;
        bottom: -85px;
        right: -85px;
    }

    .modal-badge {
        position: absolute;
        left: 24px;
        bottom: 24px;
        margin: 0;
        padding: 0;
        background: transparent;
        box-shadow: none;
        font-size: 11px;
        letter-spacing: 0.01em;
        color: #0a122f;
    }

    .modal-badge span {
        color: #0a122f;
    }

    .modal-aside h3 {
        display: none;
    }

    .modal-list {
        position: absolute;
        inset: 0;
        padding: 0;
        margin: 0;
    }

    .modal-list li {
        position: absolute;
        align-items: flex-start;
        padding: 10px 30px 10px 10px;
        gap: 8px;
        border-radius: 4px;
        background: #ffffff;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
        font-size: 12px;
        line-height: 1.2;
        letter-spacing: -0.04em;
    }

    .modal-list li:nth-child(1) {
        left: 8.75%;
        right: 8.46%;
        top: 23.97%;
    }

    .modal-list li:nth-child(2) {
        left: 15.17%;
        right: 20.47%;
        top: 35.77%;
    }

    .modal-list li:nth-child(3) {
        left: 22.63%;
        right: 10.83%;
        top: 47.57%;
    }

    .modal-check {
        width: 14px;
        height: 14px;
        flex: 0 0 14px;
        margin-top: 0;
    }

    .modal-main {
        flex: 0 0 364px;
        width: 364px;
        height: 464px;
        padding: 0 48px;
        gap: 40px;
        align-items: center;
        justify-content: center;
    }

    .modal-main h2 {
        font-size: 22px;
        line-height: 130%;
        letter-spacing: -0.01em;
        align-self: stretch;
    }

    .modal-main p {
        width: 268px;
        max-width: 268px;
    }

    .modal-form {
        width: 268px;
        gap: 16px;
    }

    .modal-form label {
        font-size: 16px;
        line-height: 120%;
        letter-spacing: -0.02em;
    }

    .modal-form input {
        height: 48px;
        border-radius: 8px;
        border-color: #9da0ac;
        font-size: 16px;
    }

    .modal-submit {
        height: 48px;
        border-radius: 6px;
        font-size: 16px;
        letter-spacing: -0.02em;
    }

    .modal-close {
        width: 32px;
        height: 32px;
        border-radius: 8px;
        border: none;
        background: transparent;
        top: 16px;
        right: 16px;
    }

    .modal-close img {
        width: 18px;
        height: 18px;
        display: block;
    }
}

/* Responsive width adjustments */
html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    min-height: 100%;
}

html {
    overflow-y: scroll;
}

body {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

#main {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
}

.framer-fy9Id.framer-72rtr7 {
    width: 100%;
    max-width: 1455px;
    margin: 0 auto;
    overflow: visible;
}

.framer-pjuewf {
    width: 100%;
    max-width: 100%;
}

/* Mobile menu */
body.menu-open {
    overflow: hidden;
}

.mobile-menu-toggle {
    border: none;
    background: transparent;
    width: 40px;
    height: 40px;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.mobile-menu-toggle-icon {
    position: relative;
    width: 22px;
    height: 2px;
    background: #0a122f;
    display: block;
}

.mobile-menu-toggle-icon::before,
.mobile-menu-toggle-icon::after {
    content: "";
    position: absolute;
    left: 0;
    width: 22px;
    height: 2px;
    background: #0a122f;
}

.mobile-menu-toggle-icon::before {
    top: -7px;
}

.mobile-menu-toggle-icon::after {
    top: 7px;
}

.mobile-menu {
    position: fixed;
    inset: 0;
    background: rgba(9, 17, 46, 0.45);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 9999;
}

.mobile-menu.is-open {
    display: flex;
}

.mobile-menu-panel {
    width: 340px;
    max-width: 100%;
    background: #e6f2fb;
    border-radius: 24px;
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    box-shadow: 0 32px 72px rgba(9, 17, 46, 0.2);
}

.mobile-menu-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mobile-menu-logo img {
    width: 116px;
    height: 22px;
    display: block;
    object-fit: contain;
}

.mobile-menu-close {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: none;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.mobile-menu-close img {
    width: 18px;
    height: 18px;
    display: block;
}

.mobile-menu-links {
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: flex-start;
}

.mobile-menu-link {
    font-family: "Poppins", "Poppins Placeholder", sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #0a122f;
    text-decoration: none;
    position: relative;
    padding-left: 16px;
}

.mobile-menu-link.is-active::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #0092ff;
    border-radius: 2px;
}

.mobile-menu-cta {
    width: 100%;
    height: 52px;
    border-radius: 14px;
    border: none;
    background: #0092ff;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

@media (max-width: 1439px) {
    .mobile-menu-toggle {
        display: flex;
    }

    .framer-fy9Id .framer-pjuewf,
    .framer-fy9Id .framer-1c0b15m,
    .framer-fy9Id .benefit-grid,
    .framer-fy9Id .framer-1m1udsy,
    .framer-fy9Id .framer-5baece,
    .framer-fy9Id .framer-123unoz,
    .framer-fy9Id .framer-1o7rylo,
    .framer-fy9Id .framer-aotz7q,
    .framer-fy9Id .framer-1m6eifz,
    .framer-fy9Id .framer-1s8qzv2 {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .framer-fy9Id .framer-tvy0f5 {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 100%;
        max-width: 768px;
        height: 60px;
        padding: 12px 32px;
        background: transparent;
        z-index: 10;
    }

    .framer-fy9Id .framer-1od7k2n,
    .framer-fy9Id .framer-1od7k2n {
        display: none;
    }

    .framer-fy9Id .framer-1y8flb1 {
        display: flex;
        height: 36px;
        padding: 0 24px;
        border-radius: 8px;
        background: transparent;
        --border-bottom-width: 1px;
        --border-top-width: 1px;
        --border-left-width: 1px;
        --border-right-width: 1px;
        margin-left: auto;
    }

    .framer-fy9Id .framer-1c0b15m {
        height: 820px;
        padding: 0;
        display: block;
        position: relative;
        background-color: #e7f3fb;
    }

    .framer-fy9Id .framer-38clzn {
        position: absolute;
        top: 108px;
        left: 50%;
        transform: translateX(-50%);
        align-items: center;
        text-align: center;
        gap: 32px;
        order: 1;
        width: 468px;
        max-width: 468px;
    }

    .framer-fy9Id .framer-1vr5xq {
        align-items: center;
        width: 468px;
        max-width: 468px;
        gap: 16px;
    }

    .framer-fy9Id .framer-1mp1lp6,
    .framer-fy9Id .framer-1ec0tw3 {
        width: 468px;
        max-width: 468px;
    }

    .framer-fy9Id .framer-1mp1lp6 .framer-text {
        --framer-font-size: 32px;
        font-size: 32px;
        line-height: 120%;
        text-align: center;
    }

    .framer-fy9Id .framer-1ec0tw3 {
        width: 412px;
        max-width: 412px;
    }

    .framer-fy9Id .framer-1ec0tw3 .framer-text {
        --framer-font-size: 16px;
        font-size: 16px;
        line-height: 150%;
        text-align: center;
    }

    .framer-fy9Id .cta-button--header {
        align-self: center;
    }

    .mobile-menu-toggle {
        width: 32px;
        height: 32px;
        margin-left: 16px;
    }

    .framer-fy9Id .framer-mjq0a2 {
        position: absolute;
        width: 800px;
        height: 533px;
        left: 50%;
        top: 360px;
        transform: translateX(-50%);
    }

    .framer-fy9Id .benefit-grid {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        padding: 72px 88px;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        gap: 88px 104px;
        box-sizing: border-box;
    }

    .framer-fy9Id .benefit-item {
        width: 232px;
        max-width: 232px;
        min-width: 232px;
        height: auto;
        align-items: flex-start;
        text-align: left;
    }

    .framer-fy9Id .framer-1m1udsy {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        padding: 72px 88px;
        gap: 32px;
        background-color: #fafafa;
    }

    .framer-fy9Id .framer-13zscys,
    .framer-fy9Id .framer-cjpd3,
    .framer-fy9Id .framer-muf68x,
    .framer-fy9Id .framer-1o4lk4p {
        width: 100%;
        text-align: center;
    }

    .framer-fy9Id .framer-13zscys .framer-text {
        --framer-font-size: 32px;
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .ps-grid {
        width: 592px;
        margin: 0 auto;
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
    }

    .framer-fy9Id .feature-title,
    .framer-fy9Id .feature-body,
    .framer-fy9Id .review-card__quote,
    .framer-fy9Id .accordion-content {
        width: 100%;
        max-width: 100%;
    }

    .framer-fy9Id .framer-1o4lk4p .framer-text {
        font-size: 40px;
        line-height: 1.1;
    }

    .framer-fy9Id .framer-text {
        white-space: normal;
        word-break: normal;
        overflow-wrap: break-word;
    }

    .framer-fy9Id .ps-card {
        width: 592px;
        max-width: 592px;
        padding: 40px 78px;
        gap: 40px;
        border-radius: 20px;
        align-items: center;
    }

    .framer-fy9Id .ps-badge {
        align-items: center;
    }

    .framer-fy9Id .ps-label .framer-text {
        --framer-font-size: 14px;
        font-size: 14px;
        line-height: 130%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .ps-title {
        width: 413px;
        max-width: 413px;
        text-align: center;
    }

    .framer-fy9Id .ps-title .framer-text {
        --framer-font-size: 22px;
        font-size: 22px;
        line-height: 130%;
    }

    .framer-fy9Id .ps-header {
        align-items: center;
    }

    .framer-fy9Id .ps-illustration {
        width: 477px;
        max-width: 477px;
        gap: 24px;
    }

    .framer-fy9Id .ps-list {
        gap: 24px;
    }

    .framer-fy9Id .ps-list-group {
        gap: 24px;
        align-items: flex-start;
    }

    .framer-fy9Id .ps-item {
        gap: 8px;
        align-items: flex-start;
    }

    .framer-fy9Id .ps-item-text {
        width: 448px;
        max-width: 448px;
    }

    .framer-fy9Id .framer-5baece {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        padding: 72px 120px;
        gap: 32px;
        align-items: center;
        background-color: #e7f3fb;
    }

    .framer-fy9Id .feature-container {
        width: 528px;
        max-width: 528px;
        margin: 0 auto;
        gap: 56px;
        align-items: flex-start;
    }

    .framer-fy9Id .feature-row {
        display: flex;
        flex-direction: column;
        gap: 40px;
        height: auto;
        align-items: flex-start;
        width: 528px;
        max-width: 528px;
    }

    /* Odd rows (1, 3) - text first, image second */
    .framer-fy9Id .feature-row:nth-child(odd) .feature-text-block {
        order: 1;
    }

    .framer-fy9Id .feature-row:nth-child(odd) .feature-image-frame {
        order: 2;
    }

    /* Even rows (2, 4) - text first, image second (reverse HTML order) */
    .framer-fy9Id .feature-row:nth-child(even) .feature-text-block {
        order: 1;
    }

    .framer-fy9Id .feature-row:nth-child(even) .feature-image-frame {
        order: 2;
    }

    .framer-fy9Id .feature-text-block {
        position: static;
        width: 528px;
        max-width: 528px;
        align-items: flex-start;
        text-align: left;
    }

    .framer-fy9Id .feature-image-frame {
        position: static;
        width: 528px;
        max-width: 528px;
        align-self: flex-start;
    }

    .framer-fy9Id .feature-image-frame {
        height: 299px;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .framer-fy9Id .framer-123unoz {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        padding: 48px 72px;
        gap: 32px;
        align-items: center;
    }

    .framer-fy9Id .framer-muf68x {
        width: 308px;
        max-width: 308px;
        align-self: center;
        text-align: center;
    }

    .framer-fy9Id .framer-muf68x .framer-text {
        --framer-font-size: 32px;
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .review-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 24px;
        width: 624px;
        max-width: 624px;
        margin: 0 auto;
    }

    .framer-fy9Id .review-card {
        width: 624px;
        max-width: 624px;
        padding: 32px;
        gap: 40px;
        height: 100%;
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
        background-color: #fafafa;
        border: 1px solid #ececec;
        border-radius: 8px;
        box-sizing: border-box;
    }

    .framer-fy9Id .review-card__header {
        align-items: center;
        flex: 1 1 auto;
        min-width: 0;
    }

    .framer-fy9Id .review-card__avatar {
        width: 56px;
        height: 56px;
        flex: none;
    }

    .framer-fy9Id .review-card__author {
        width: auto;
        min-width: 0;
        height: auto;
        gap: 6px;
        align-items: flex-start;
        flex: 1 1 auto;
    }

    .framer-fy9Id .review-card__name {
        width: auto;
        height: auto;
    }

    .framer-fy9Id .review-card__role {
        width: auto;
        height: auto;
        white-space: nowrap;
        min-width: max-content;
    }

    .framer-fy9Id .review-card__quote {
        width: 560px;
        max-width: 560px;
        min-height: 72px;
    }

    .framer-fy9Id .framer-1o7rylo {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        padding: 48px 72px 72px;
        gap: 32px;
        align-items: center;
    }

    .framer-fy9Id .framer-1o4lk4p {
        width: auto;
        max-width: 100%;
        align-self: center;
        text-align: center;
    }

    .framer-fy9Id .framer-1o4lk4p .framer-text {
        --framer-font-size: 32px;
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .framer-1qs4dhi {
        width: 624px;
        max-width: 624px;
        margin: 0 auto;
        gap: 24px;
        align-items: center;
    }

    .framer-fy9Id .accordion-item {
        width: 624px;
        gap: 16px;
        align-items: flex-start;
    }

    .framer-fy9Id .accordion-header {
        width: 624px;
        height: 29px;
        align-items: flex-start;
        justify-content: space-between;
    }

    .framer-fy9Id .framer-pixau1,
    .framer-fy9Id .framer-u9s2bx,
    .framer-fy9Id .framer-1cmqro7,
    .framer-fy9Id .framer-1mp71mt {
        align-items: flex-start;
    }

    .framer-fy9Id .framer-pixau1 .framer-text,
    .framer-fy9Id .framer-u9s2bx .framer-text,
    .framer-fy9Id .framer-1cmqro7 .framer-text,
    .framer-fy9Id .framer-1mp71mt .framer-text {
        --framer-font-size: 18px;
        font-size: 18px;
        line-height: 160%;
    }

    .framer-fy9Id .framer-pixau1 {
        width: 286px;
        max-width: 286px;
    }

    .framer-fy9Id .framer-u9s2bx {
        width: 442px;
        max-width: 442px;
    }

    .framer-fy9Id .framer-1cmqro7 {
        width: 245px;
        max-width: 245px;
    }

    .framer-fy9Id .framer-1mp71mt {
        width: 413px;
        max-width: 413px;
    }

    .framer-fy9Id .accordion-icon {
        width: 20px;
        height: 20px;
    }

    .framer-fy9Id .accordion-content {
        width: 624px;
        max-width: 624px;
        --framer-font-size: 16px;
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .framer-1qs4dhi .accordion-content {
        width: 624px;
        max-width: 624px;
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .accordion-item {
        width: 624px;
        height: auto;
        justify-content: space-between;
        align-items: stretch;
    }

    .framer-fy9Id .framer-1k01xbb,
    .framer-fy9Id .framer-viixi2,
    .framer-fy9Id .framer-1lez5ws {
        width: 624px;
        max-width: 624px;
        height: 1px;
        background-color: #ececec;
        opacity: 1;
    }

    .framer-fy9Id .framer-aotz7q {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
    }

    .framer-fy9Id .framer-1s8qzv2 {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        height: 488px;
        padding: 0;
        display: block;
        position: relative;
    }

    .framer-fy9Id .framer-x6ewjc {
        position: absolute;
        top: 72px;
        left: 72px;
        width: 536px;
        max-width: 536px;
        height: auto;
    }

    .framer-fy9Id .framer-x6ewjc .framer-text {
        --framer-font-size: 60px;
        font-size: 60px;
        line-height: 1;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .framer-1w65ew1 {
        position: absolute;
        top: 224px;
        left: 72px;
        width: 540px;
        max-width: 540px;
        gap: 48px;
        align-items: flex-start;
    }

    .framer-fy9Id .framer-re9976 {
        width: 416px;
        max-width: 416px;
    }

    .framer-fy9Id .framer-re9976 .framer-text {
        --framer-font-size: 16px;
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .framer-1m6eifz {
        width: 100%;
        max-width: 768px;
        margin: 0 auto;
        height: 288px;
        padding: 48px 72px 32px;
        display: flex;
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
    }

    .framer-fy9Id .framer-rh6g4h {
        position: static;
        width: 624px;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.2);
        margin: 0;
        order: 1;
    }

    .framer-fy9Id .framer-qnu6w1 {
        display: none;
    }

    .framer-fy9Id .framer-1nlcig1 {
        position: static;
        width: 624px;
        height: auto;
        display: flex;
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
        order: 0;
    }

    .framer-fy9Id .framer-l54781 {
        position: static;
        display: block;
        order: 0;
        width: 116px;
        height: 26px;
    }

    .framer-fy9Id .framer-l54781 img {
        width: 100%;
        height: 100%;
        display: block;
    }

    .framer-fy9Id .framer-1g96bg2 {
        position: static;
        order: 1;
        transform: none;
        display: flex;
        flex-wrap: nowrap;
        gap: 48px;
        justify-content: flex-start;
        width: 624px;
        height: 24px;
    }

    .framer-fy9Id .framer-1g96bg2 .nav-link .framer-text {
        --framer-font-size: 16px;
        font-size: 16px;
        line-height: 1.5;
        letter-spacing: -0.02em;
    }

    .framer-fy9Id .framer-elo1nt {
        position: static;
        order: 2;
        width: 40px;
        height: 40px;
        display: flex;
        gap: 12px;
        justify-content: flex-start;
    }

    .framer-fy9Id .framer-crthhr {
        position: static;
        width: 624px;
        height: 21px;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        order: 2;
    }

    .framer-fy9Id .framer-143r23d {
        position: static;
        --framer-font-size: 14px;
        font-size: 14px;
        line-height: 1.2;
        letter-spacing: -0.04em;
    }

    .framer-fy9Id .framer-ln1fwi {
        position: static;
        display: flex;
        flex-wrap: nowrap;
        gap: 16px;
        align-items: center;
        justify-content: flex-end;
        margin-left: auto;
    }

    .framer-fy9Id .framer-ln1fwi .framer-text {
        --framer-font-size: 14px;
        font-size: 14px;
        line-height: 1.2;
        letter-spacing: -0.04em;
    }

    .framer-fy9Id .framer-elo1nt .framer-1ajqa7m,
    .framer-fy9Id .framer-elo1nt .framer-o4t2u2,
    .framer-fy9Id .framer-elo1nt .framer-1peuzqn,
    .framer-fy9Id .framer-elo1nt .framer-1s5irze {
        display: none !important;
    }

    .framer-fy9Id .framer-elo1nt .framer-1lqj904 {
        display: flex !important;
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 1439px) and (min-width: 768px) {
    .modal-panel {
        width: min(684px, 100%);
        height: min(464px, 100%);
        border-radius: 16px;
        flex-direction: row;
    }

    .modal-aside {
        flex: 0 0 320px;
        padding: 40px 24px;
        gap: 12px;
    }

    .modal-list {
        max-width: 268px;
        gap: 12px;
    }

    .modal-list li {
        padding: 10px 14px;
        font-size: 12px;
    }

    .modal-check {
        width: 14px;
        height: 14px;
        flex: 0 0 14px;
    }

    .modal-main {
        flex: 0 0 364px;
        padding: 0 48px;
        gap: 40px;
        align-items: flex-start;
    }

    .modal-main h2 {
        font-size: 22px;
        line-height: 1.3;
    }

    .modal-main p {
        font-size: 16px;
        line-height: 1.5;
    }

    .modal-form {
        max-width: 268px;
        gap: 16px;
    }

    .modal-form label {
        font-size: 16px;
        line-height: 1.2;
        letter-spacing: -0.02em;
    }

    .modal-form input {
        height: 48px;
        border-radius: 8px;
        font-size: 16px;
    }

    .modal-submit {
        height: 48px;
        border-radius: 6px;
        font-size: 16px;
        letter-spacing: -0.02em;
    }
}

@media (max-width: 767px) {
    .modal-overlay {
        padding: 0;
        align-items: stretch;
        overflow: hidden;
    }

    .modal-panel {
        width: 100%;
        height: 100%;
        min-height: 100vh;
        min-height: 100dvh;
        max-height: none;
        border-radius: 0;
        flex-direction: column;
        overflow-x: hidden;
        overflow-y: auto;
        background: #ffffff;
    }

    .modal-close {
        position: absolute;
        top: 14px;
        right: 14px;
        width: 32px;
        height: 32px;
        border-radius: 8px;
        border: none;
        background: transparent;
        z-index: 10;
    }

    .modal-close img {
        width: 18px;
        height: 18px;
        display: block;
    }

    .modal-aside {
        flex: 0 0 auto;
        width: 100%;
        padding: 134px 32px 64px 32px;
        background: #e7f3fb;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        overflow: hidden;
        height: auto;
    }

    .modal-aside::before {
        width: 300px;
        height: 300px;
        top: -120px;
        left: -120px;
        z-index: 0;
    }

    .modal-aside::after {
        width: 240px;
        height: 240px;
        bottom: -100px;
        right: -100px;
        z-index: 0;
    }

    .modal-logo {
        display: block;
        position: absolute;
        top: 18px;
        left: 16px;
        width: 120px;
        z-index: 2;
    }

    .modal-logo-tagline {
        display: none;
    }

    .modal-badge,
    .modal-aside h3 {
        display: none;
    }

    .modal-list {
        position: static;
        inset: auto;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 16px;
        z-index: 1;
    }

    .modal-list li {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        width: fit-content;
        max-width: calc(100% - 32px);
        display: flex;
        align-items: flex-start;
        padding: 12px 24px 12px 12px;
        border-radius: 6px;
        background: #ffffff;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
        font-size: 14px;
        line-height: 1.2;
        letter-spacing: -0.04em;
        color: #0a122f;
        z-index: 1;
        margin-left: 0;
    }

    .modal-list li:nth-child(1),
    .modal-list li:nth-child(2),
    .modal-list li:nth-child(3) {
        margin-left: 0;
        max-width: 100%;
    }

    .modal-check {
        width: 20px;
        height: 20px;
        flex: 0 0 20px;
        margin-top: 0;
    }

    .modal-main {
        flex: 0 0 auto;
        width: 100%;
        height: auto;
        padding: 48px 32px 56px;
        gap: 0;
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
    }

    .modal-main h2 {
        font-size: 28px;
        line-height: 116%;
        letter-spacing: -0.01em;
        max-width: 100%;
        width: 100%;
        margin-bottom: 24px;
    }

    .modal-main p {
        max-width: 100%;
        width: 100%;
        font-size: 16px;
        line-height: 150%;
        margin-bottom: 24px;
    }

    .modal-main h2,
    .modal-main p {
        text-align: left;
    }

    .modal-form {
        gap: 16px;
        margin-top: 0;
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 600px) {
    .mobile-menu {
        padding: 0;
    }

    .mobile-menu-panel {
        width: 100%;
        height: 100%;
        border-radius: 0;
        padding: 32px 24px;
        gap: 40px;
    }

    .mobile-menu-links {
        align-items: center;
    }

    .mobile-menu-link {
        font-size: 18px;
        padding-left: 0;
    }

    .mobile-menu-link.is-active::before {
        position: static;
        margin-right: 8px;
        display: inline-block;
        vertical-align: middle;
    }

    .framer-fy9Id .framer-tvy0f5 {
        height: 60px;
        padding: 12px 16px;
        width: 100%;
        max-width: 100vw;
        gap: 8px;
        justify-content: flex-start;
        left: 0;
        transform: none;
        box-sizing: border-box;
    }

    .framer-fy9Id .framer-1w9imrf {
        width: 116px;
        height: 22px;
        margin-right: auto;
        margin-left: 0;
    }

    .framer-fy9Id .framer-1w9imrf img {
        width: 116px;
        height: 22px;
    }

    .problem-illustration,
    .solution-illustration {
        width: 287px;
        height: 120.71px;
    }

    .framer-fy9Id .framer-l54781 {
        width: 116px;
        height: 22px;
    }

    .framer-fy9Id .framer-1y8flb1 {
        width: 148px;
        height: 36px;
        padding: 0 20px;
        --border-bottom-width: 1px;
        --border-top-width: 1px;
        --border-left-width: 1px;
        --border-right-width: 1px;
        margin-left: 0;
    }

    .framer-fy9Id .framer-1c0b15m {
        padding: 112px 24px 48px;
    }

    .framer-fy9Id .framer-1mp1lp6 {
        --framer-font-size: 32px;
        font-size: 32px;
    }

    .framer-fy9Id .framer-1ec0tw3 {
        --framer-font-size: 16px;
        font-size: 16px;
    }

    .framer-fy9Id .benefit-grid {
        padding: 56px 24px;
    }

    .framer-fy9Id .benefit-item {
        width: 100%;
        max-width: 420px;
    }

    .framer-fy9Id .framer-1m1udsy,
    .framer-fy9Id .framer-5baece,
    .framer-fy9Id .framer-123unoz,
    .framer-fy9Id .framer-1o7rylo {
        padding-left: 24px;
        padding-right: 24px;
    }

    .framer-fy9Id .framer-1s8qzv2 {
        padding: 64px 24px 56px;
        width: 100%;
        max-width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .framer-fy9Id .framer-x6ewjc {
        position: static;
        width: 100%;
        max-width: 100%;
        --framer-font-size: 32px;
        font-size: 32px;
    }

    .framer-fy9Id .framer-13zscys .framer-text,
    .framer-fy9Id .framer-cjpd3 .framer-text,
    .framer-fy9Id .framer-muf68x .framer-text,
    .framer-fy9Id .framer-1o4lk4p .framer-text {
        font-size: 32px;
        line-height: 1.15;
    }

    .framer-fy9Id .framer-1w65ew1 {
        position: static;
        width: 100%;
        max-width: 100%;
        align-items: flex-start;
        gap: 24px;
    }

    .framer-fy9Id .framer-re9976 {
        width: 100%;
        max-width: 100%;
    }

    .framer-fy9Id .framer-1m6eifz {
        padding: 24px;
        height: auto;
    }

    .modal-overlay {
        padding: 0;
        align-items: stretch;
        overflow: hidden;
    }

    .modal-panel {
        width: 100%;
        height: 100%;
        min-height: 100vh;
        min-height: 100dvh;
        max-height: none;
        border-radius: 0;
        flex-direction: column;
        overflow-x: hidden;
        overflow-y: auto;
        background: #ffffff;
    }

    .modal-close {
        position: absolute;
        top: 14px;
        right: 14px;
        width: 32px;
        height: 32px;
        border-radius: 8px;
        border: none;
        background: transparent;
        z-index: 10;
    }

    .modal-close img {
        width: 18px;
        height: 18px;
        display: block;
    }

    .modal-aside {
        flex: 0 0 auto;
        width: 100%;
        padding: 134px 32px 64px 32px;
        background: #e7f3fb;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        overflow: hidden;
        height: auto;
    }

    .modal-aside::before {
        width: 300px;
        height: 300px;
        top: -120px;
        left: -120px;
        z-index: 0;
    }

    .modal-aside::after {
        width: 240px;
        height: 240px;
        bottom: -100px;
        right: -100px;
        z-index: 0;
    }

    .modal-logo {
        display: block;
        position: absolute;
        top: 18px;
        left: 16px;
        width: 120px;
        z-index: 2;
    }

    .modal-logo-tagline {
        display: none;
    }

    .modal-badge,
    .modal-aside h3 {
        display: none;
    }

    .modal-list {
        position: static;
        inset: auto;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 16px;
        z-index: 1;
    }

    .modal-list li {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        width: fit-content;
        max-width: calc(100% - 32px);
        display: flex;
        align-items: flex-start;
        padding: 12px 24px 12px 12px;
        border-radius: 6px;
        background: #ffffff;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
        font-size: 14px;
        line-height: 1.2;
        letter-spacing: -0.04em;
        color: #0a122f;
        z-index: 1;
        margin-left: 0;
    }

    .modal-list li:nth-child(1),
    .modal-list li:nth-child(2),
    .modal-list li:nth-child(3) {
        margin-left: 0;
        max-width: 100%;
    }

    .modal-check {
        width: 20px;
        height: 20px;
        flex: 0 0 20px;
        margin-top: 0;
    }

    .modal-main {
        flex: 0 0 auto;
        width: 100%;
        height: auto;
        padding: 48px 32px 56px;
        gap: 0;
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
    }

    .modal-main h2 {
        font-size: 28px;
        line-height: 116%;
        letter-spacing: -0.01em;
        max-width: 100%;
        width: 100%;
        margin-bottom: 24px;
    }

    .modal-main p {
        max-width: 100%;
        width: 100%;
        font-size: 16px;
        line-height: 150%;
        margin-bottom: 24px;
    }

    .modal-main h2,
    .modal-main p {
        text-align: left;
    }

    .modal-form {
        gap: 16px;
        margin-top: 0;
        width: 100%;
        max-width: 100%;
    }

    .modal-form label {
        font-size: 16px;
        line-height: 120%;
        letter-spacing: -0.02em;
    }

    .modal-form input {
        height: 48px;
        padding: 15px 16px;
        border-radius: 8px;
        border: 1px solid #9da0ac;
        font-size: 16px;
        line-height: 110%;
        letter-spacing: -0.01em;
    }

    .modal-submit {
        height: 48px;
        padding: 15px 16px;
        border-radius: 6px;
        font-size: 16px;
        font-weight: 500;
        line-height: 120%;
        letter-spacing: -0.02em;
    }
}

/* Responsive layout tweaks for mobile view (<768px) */
@media (max-width: 767px) {
    body {
        background: #09112e;
    }

    #main,
    .terms-page {
        background: #ffffff;
    }

    .framer-fy9Id {
        --features-max-width: calc(100vw - 64px);
        --solution-card-width: calc(100vw - 64px);
    }

    #main {
        max-width: min(375px, 100vw);
        margin: 0 auto;
    }

    .framer-fy9Id .framer-pjuewf,
    .framer-fy9Id .framer-1c0b15m,
    .framer-fy9Id .benefit-grid,
    .framer-fy9Id .framer-1m1udsy,
    .framer-fy9Id .framer-5baece,
    .framer-fy9Id .framer-123unoz,
    .framer-fy9Id .framer-1o7rylo,
    .framer-fy9Id .framer-aotz7q,
    .framer-fy9Id .framer-1m6eifz,
    .framer-fy9Id .framer-1s8qzv2 {
        width: 100%;
        max-width: min(375px, 100vw);
        box-sizing: border-box;
    }

    .framer-fy9Id .framer-tvy0f5 {
        width: 100%;
        max-width: 100vw;
        height: 60px;
        padding: 12px 16px;
        left: 0;
        transform: none;
        box-sizing: border-box;
    }

    .framer-fy9Id .framer-1w9imrf {
        width: 116px;
        height: 22px;
        margin-left: 0;
    }

    .framer-fy9Id .framer-1w9imrf img {
        width: 116px;
        height: 22px;
    }

    .framer-fy9Id .framer-1y8flb1 {
        width: 148px;
        min-width: 148px;
        height: 36px;
        padding: 0 20px;
        border-radius: 8px;
        background: transparent;
    }

    .framer-fy9Id .framer-1y8flb1 .framer-text {
        font-size: 14px;
        line-height: 120%;
    }

    .mobile-menu-toggle {
        width: 32px;
        height: 32px;
        margin-left: 16px;
    }

    .framer-fy9Id .framer-1c0b15m {
        height: 722px;
        padding: 0;
        position: relative;
        background: #e7f3fb;
    }

    .framer-fy9Id .framer-38clzn {
        position: absolute;
        top: 108px;
        left: 50%;
        transform: translateX(-50%);
        width: 296px;
        max-width: 296px;
        gap: 32px;
        align-items: center;
        text-align: center;
    }

    .framer-fy9Id .framer-1vr5xq {
        width: 296px;
        max-width: 296px;
        gap: 16px;
        align-items: center;
    }

    .framer-fy9Id .framer-1mp1lp6 {
        width: 278px;
        max-width: 278px;
    }

    .framer-fy9Id .framer-1mp1lp6 .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .framer-1ec0tw3 {
        width: 296px;
        max-width: 296px;
    }

    .framer-fy9Id .framer-1ec0tw3 .framer-text {
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .framer-mjq0a2 {
        position: absolute;
        width: 406px;
        height: 270px;
        left: 50%;
        top: 451px;
        transform: translateX(-50%);
    }

    .framer-fy9Id .framer-mjq0a2 img {
        object-fit: contain;
    }

    .framer-fy9Id .benefit-grid {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding: 56px 32px;
        gap: 88px;
        background: #ffffff;
        align-items: flex-start;
    }

    .framer-fy9Id .benefit-item {
        width: 311px;
        max-width: 311px;
        align-items: flex-start;
        text-align: left;
    }

    .framer-fy9Id .benefit-title,
    .framer-fy9Id .benefit-body {
        width: 311px;
        max-width: 311px;
    }

    .framer-fy9Id .framer-1m1udsy {
        padding: 56px 32px;
        gap: 32px;
        background: #fafafa;
    }

    .framer-fy9Id .framer-13zscys .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .ps-grid {
        flex-direction: column;
        width: 100%;
        max-width: var(--solution-card-width);
        gap: 24px;
        align-items: center;
    }

    .framer-fy9Id .ps-card {
        width: 100%;
        max-width: var(--solution-card-width);
        padding: 40px 24px;
        gap: 40px;
        border-radius: 20px;
        align-items: center;
    }

    .framer-fy9Id .ps-header {
        width: 100%;
        max-width: 100%;
        align-items: center;
    }

    .framer-fy9Id .ps-card--solution {
        height: auto;
    }

    .framer-fy9Id .ps-title {
        width: min(263px, 100%);
        max-width: min(263px, 100%);
        text-align: center;
        word-break: normal;
        overflow-wrap: break-word;
    }

    .framer-fy9Id .ps-title .framer-text {
        display: block;
        width: 100%;
        white-space: normal;
    }

    .framer-fy9Id .ps-title .framer-text {
        font-size: 22px;
        line-height: 130%;
    }

    .framer-fy9Id .ps-illustration {
        width: 100%;
        max-width: calc(var(--solution-card-width) - 48px);
        height: auto;
        gap: 24px;
    }

    .framer-fy9Id .ps-list {
        width: 100%;
        max-width: calc(var(--solution-card-width) - 48px);
        align-items: flex-start;
    }

    .framer-fy9Id .ps-item {
        width: 100%;
        max-width: 100%;
    }

    /* Reviews: stack name/title under avatar on mobile */
    .framer-fy9Id .review-card__header {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        max-width: 205px;
        height: auto;
    }

    .framer-fy9Id .ps-illustration .svgContainer {
        display: none;
    }

    .framer-fy9Id .problem-illustration,
    .framer-fy9Id .solution-illustration {
        display: block;
        width: 100%;
        height: auto;
    }

    .framer-fy9Id .ps-item-text {
        width: auto;
        max-width: calc(var(--solution-card-width) - 76px);
        flex: 1;
        text-align: left;
    }

    .framer-fy9Id .framer-5baece {
        padding: 56px 32px;
        gap: 32px;
        background: #e7f3fb;
        align-items: center;
    }

    .framer-fy9Id .framer-cjpd3 .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .feature-title .framer-text {
        font-size: 22px;
        line-height: 130%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .feature-body .framer-text {
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .feature-title,
    .framer-fy9Id .feature-body {
        width: 100%;
        max-width: 311px;
        white-space: normal;
        word-break: normal;
        overflow-wrap: break-word;
    }

    .framer-fy9Id .feature-container {
        width: 100%;
        max-width: var(--features-max-width);
        gap: 56px;
        align-items: flex-start;
    }

    .framer-fy9Id .feature-row {
        width: 100%;
        max-width: var(--features-max-width);
        gap: 40px;
        align-items: flex-start;
    }

    .framer-fy9Id .feature-text-block {
        width: 100%;
        max-width: var(--features-max-width);
    }

    /* Odd rows (1, 3) - text first, image second */
    .framer-fy9Id .feature-row:nth-child(odd) .feature-text-block {
        order: 1;
    }

    .framer-fy9Id .feature-row:nth-child(odd) .feature-image-frame {
        order: 2;
    }

    /* Even rows (2, 4) - text first, image second (reverse HTML order) */
    .framer-fy9Id .feature-row:nth-child(even) .feature-text-block {
        order: 1;
    }

    .framer-fy9Id .feature-row:nth-child(even) .feature-image-frame {
        order: 2;
    }

    .framer-fy9Id .feature-image-frame {
        width: 100%;
        max-width: var(--features-max-width);
        height: auto;
    }

    .framer-fy9Id .feature-image {
        width: 100%;
        max-width: var(--features-max-width);
        height: auto;
    }

    .framer-fy9Id .framer-123unoz {
        padding: 48px 32px;
        gap: 32px;
        align-items: center;
    }

    .framer-fy9Id .framer-muf68x {
        width: 311px;
        max-width: 311px;
        text-align: center;
    }

    .framer-fy9Id .framer-muf68x .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .review-grid {
        display: flex;
        flex-direction: row;
        gap: 16px;
        width: calc(100% + 64px);
        max-width: none;
        margin: 0 -32px;
        padding: 0;
        overflow-x: auto;
        align-items: stretch;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .framer-fy9Id .review-grid::-webkit-scrollbar {
        display: none;
    }

    .framer-fy9Id .review-card {
        width: 311px;
        max-width: 311px;
        align-self: stretch;
        padding: 32px;
        gap: 32px;
        flex: 0 0 311px;
        scroll-snap-align: center;
        align-items: flex-start;
        justify-content: flex-start;
        place-content: flex-start;
    }

    .framer-fy9Id .review-card__header {
        flex: 0 0 auto;
        align-self: flex-start;
    }

    .framer-fy9Id .review-card__quote {
        width: 100%;
        max-width: 100%;
        flex: 0 0 auto;
        align-self: flex-start;
    }

    /* First card has left margin for initial padding */
    .framer-fy9Id .review-grid > *:first-child {
        margin-left: 32px;
    }

    /* Last card has right margin for end padding */
    .framer-fy9Id .review-grid > *:last-child {
        margin-right: 32px;
    }

    .framer-fy9Id .framer-1o7rylo {
        padding: 48px 32px 56px;
        gap: 32px;
        align-items: center;
    }

    .framer-fy9Id .framer-1o4lk4p .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .framer-1qs4dhi {
        width: 311px;
        max-width: 311px;
        gap: 24px;
        align-items: center;
    }

    .framer-fy9Id .accordion-item {
        width: 311px;
        max-width: 311px;
        gap: 16px;
    }

    .framer-fy9Id .accordion-header {
        width: 311px;
        max-width: 311px;
        height: auto;
    }

    .framer-fy9Id .framer-pixau1,
    .framer-fy9Id .framer-u9s2bx,
    .framer-fy9Id .framer-1cmqro7,
    .framer-fy9Id .framer-1mp71mt {
        width: 220px;
        max-width: 220px;
    }

    .framer-fy9Id .accordion-content,
    .framer-fy9Id .framer-1qs4dhi .accordion-content {
        width: 311px;
        max-width: 311px;
        font-size: 16px;
        line-height: 150%;
    }

    .framer-fy9Id .accordion-item {
        width: 311px;
        height: auto;
    }

    .framer-fy9Id .framer-1k01xbb,
    .framer-fy9Id .framer-viixi2,
    .framer-fy9Id .framer-1lez5ws {
        width: 311px;
        max-width: 311px;
    }

    .framer-fy9Id .accordion-content.accordion-open {
        margin-top: 16px;
    }

    .framer-fy9Id .framer-aotz7q {
        max-width: 375px;
    }

    .framer-fy9Id .framer-1s8qzv2 {
        min-height: 0;
        height: auto;
        padding: 56px 32px;
        position: static;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .framer-fy9Id .framer-x6ewjc {
        position: static;
        width: 100%;
        max-width: 311px;
    }

    .framer-fy9Id .framer-x6ewjc .framer-text {
        font-size: 32px;
        line-height: 120%;
        letter-spacing: -0.01em;
    }

    .framer-fy9Id .framer-1w65ew1 {
        position: static;
        width: 100%;
        max-width: 311px;
        gap: 48px;
        align-items: flex-start;
    }

    .framer-fy9Id .framer-re9976 {
        width: 100%;
        max-width: 311px;
    }

    .framer-fy9Id .framer-1m6eifz {
        display: flex;
        flex-direction: column;
        padding: 32px;
        gap: 32px;
        align-items: flex-start;
        height: auto;
    }

    .framer-fy9Id .framer-1nlcig1 {
        width: 311px;
        display: grid;
        grid-template-columns: auto 40px;
        column-gap: 16px;
        row-gap: 24px;
        align-items: center;
    }

    .framer-fy9Id .framer-l54781 {
        width: 116px;
        height: 22px;
        grid-column: 1;
        grid-row: 1;
    }

    .framer-fy9Id .framer-1g96bg2 {
        width: 100%;
        height: auto;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 96px;
        row-gap: 32px;
        align-items: flex-start;
        grid-column: 1 / span 2;
        grid-row: 2;
    }

    .framer-fy9Id .framer-elo1nt {
        width: 40px;
        display: flex;
        justify-content: flex-end;
        gap: 0;
        grid-column: 2;
        grid-row: 1;
    }

    .framer-fy9Id .framer-ljoaqt {
        background: #09112e;
        border: 1px solid #363c55;
        border-radius: 999px;
    }

    .framer-fy9Id .framer-elo1nt .framer-1lqj904,
    .framer-fy9Id .framer-elo1nt .framer-ljoaqt {
        width: 40px;
        height: 40px;
    }

    .framer-fy9Id .framer-1nlcig1 .nav-link[style*="display: none"] {
        display: block !important;
    }

    .framer-fy9Id .framer-elo1nt .framer-1ajqa7m,
    .framer-fy9Id .framer-elo1nt .framer-o4t2u2,
    .framer-fy9Id .framer-elo1nt .framer-1peuzqn,
    .framer-fy9Id .framer-elo1nt .framer-1s5irze {
        display: none !important;
    }

    .framer-fy9Id .framer-elo1nt .framer-1lqj904 {
        display: flex;
    }

    .framer-fy9Id .framer-rh6g4h {
        width: 311px;
    }

    .framer-fy9Id .framer-crthhr {
        width: 311px;
        height: auto;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .framer-fy9Id .framer-ln1fwi {
        width: 311px;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        margin-left: 0;
    }

    .framer-fy9Id .framer-ln1fwi .framer-text {
        white-space: nowrap;
    }

    .framer-fy9Id .framer-143r23d {
        order: 2;
    }

    .framer-fy9Id .framer-143r23d .framer-text {
        white-space: nowrap;
    }

    .framer-fy9Id .framer-ln1fwi {
        order: 1;
    }
}

@media (max-width: 414px) {
    .framer-fy9Id {
        --features-max-width: calc(100vw - 64px);
        --solution-card-width: calc(100vw - 64px);
    }
}

@media (max-width: 375px) {
    .framer-fy9Id {
        --features-max-width: calc(100vw - 56px);
        --solution-card-width: calc(100vw - 56px);
    }
}

@media (max-width: 360px) {
    .framer-fy9Id {
        --features-max-width: calc(100vw - 48px);
        --solution-card-width: calc(100vw - 48px);
    }
}

/* ========================================
   Terms Pages Styles (shared)
   ======================================== */

.terms-page {
    background-color: #fff;
    min-height: 100vh;
    font-family: "Poppins", sans-serif;
}

.terms-page .framer-fy9Id {
    width: 1440px;
    max-width: 100%;
    margin: 0 auto;
}

.terms-page footer.framer-fy9Id {
    width: 100%;
    display: flex;
    justify-content: center;
}

.terms-page footer.framer-fy9Id .framer-1m6eifz {
    width: 100%;
    margin: 0 auto;
}

@media (min-width: 1440px) {
    .terms-page footer.framer-fy9Id .framer-1m6eifz {
        max-width: 1440px;
    }
}

@media (max-width: 1439px) {
    .terms-page footer.framer-fy9Id .framer-1m6eifz {
        max-width: 768px;
    }
}

@media (max-width: 767px) {
    .terms-page footer.framer-fy9Id .framer-1m6eifz {
        max-width: min(375px, 100vw);
    }
}

.terms-header {
    background-color: #e6f2fb;
    height: 64px;
    padding: 0;
}

.terms-header-inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 72px;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.terms-logo {
    display: flex;
    align-items: center;
    height: 100%;
}

.terms-logo img {
    width: 178px;
    height: 26px;
    display: block;
    object-fit: contain;
}

.terms-back-link {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: #09112e;
    text-decoration: none;
    border-radius: 8px;
    padding: 20px 24px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 120%;
    transition: background-color 0.2s;
    position: relative;
}

.terms-back-link::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1.5px solid #09112e;
    border-radius: inherit;
    pointer-events: none;
}

.terms-back-link:hover {
    background-color: rgba(0, 146, 255, 0.1);
}

.terms-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 72px 100px;
}

.terms-title {
    font-family: "Poppins", sans-serif;
    font-size: 48px;
    font-weight: 600;
    color: #09112e;
    letter-spacing: -0.01em;
    line-height: 120%;
    margin-bottom: 16px;
}


.terms-intro {
    font-family: "Poppins", sans-serif;
    font-size: 18px;
    color: #09112e;
    line-height: 160%;
    margin-bottom: 40px;
}

.terms-content h2 {
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #09112e;
    letter-spacing: -0.01em;
    line-height: 130%;
    margin-top: 40px;
    margin-bottom: 16px;
}

.terms-content h3 {
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: 600;
    color: #09112e;
    letter-spacing: -0.01em;
    line-height: 140%;
    margin-top: 28px;
    margin-bottom: 12px;
}

.terms-content p {
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    color: #09112e;
    line-height: 160%;
    margin-bottom: 16px;
}

.terms-content ul {
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    color: #09112e;
    line-height: 160%;
    margin-bottom: 16px;
    padding-left: 24px;
}

.terms-content ul li {
    margin-bottom: 8px;
}

.terms-content strong {
    font-weight: 600;
}

.terms-content a {
    color: #0092ff;
    text-decoration: none;
}

.terms-content a:hover {
    text-decoration: underline;
}

/* Blog section */
.blog-preview {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 100px 72px 56px;
    display: flex;
    flex-direction: column;
    gap: 56px;
}

.blog-preview__title {
    margin: 0;
    font-size: 60px;
    line-height: 1;
    letter-spacing: -0.01em;
    font-weight: 600;
    color: #0a122f;
}

.blog-preview__cards {
    display: flex;
    gap: 32px;
    align-items: center;
    justify-content: space-between;
}

.blog-card {
    text-decoration: none;
    color: inherit;
}

.blog-card--featured {
    width: 632px;
    height: 512px;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: flex-end;
}

.blog-card__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-card--featured::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, rgba(10, 18, 47, 0.05) 0%, rgba(10, 18, 47, 0.7) 100%);
}

.blog-card--featured .blog-card__content {
    position: relative;
    z-index: 1;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    color: #ffffff;
}

.blog-card__title {
    margin: 0;
    font-size: 32px;
    line-height: 1.2;
    letter-spacing: -0.01em;
    font-weight: 600;
    color: inherit;
}

.blog-card--featured .blog-card__title {
    margin: 0 auto;
    width: 360px;
    height: 114px;
}

.blog-card__list {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 632px;
}

.blog-card--compact {
    display: flex;
    gap: 32px;
    width: 100%;
    height: 240px;
    align-items: center;
}

.blog-card__thumb {
    width: 300px;
    height: 240px;
    border-radius: 8px;
    flex-shrink: 0;
    overflow: hidden;
}

.blog-card__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.blog-card--compact .blog-card__content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 300px;
}

.blog-card__headline {
    margin: 0;
    font-size: 22px;
    line-height: 1.3;
    letter-spacing: -0.01em;
    color: #0a122f;
    font-weight: 600;
}

.blog-card__excerpt {
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
    color: #0a122f;
    font-weight: 400;
}

@media (max-width: 1439px) and (min-width: 768px) {
    .blog-preview {
        max-width: 768px;
        padding: 72px 72px 48px;
        gap: 32px;
    }

    .blog-preview__title {
        font-size: 32px;
        line-height: 1.2;
        width: 624px;
        height: 38px;
        text-align: center;
        align-self: stretch;
    }

    .blog-preview__cards {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        width: 624px;
    }

    .blog-card--featured {
        width: 624px;
        height: 302px;
        border-radius: 8px;
    }

    .blog-card--featured .blog-card__content {
        padding: 32px;
        gap: 8px;
    }

    .blog-card--featured .blog-card__title {
        width: 360px;
        height: 58px;
        font-size: 22px;
        line-height: 1.3;
        margin: 0 auto;
    }

    .blog-card__list {
        width: 624px;
        gap: 24px;
    }

    .blog-card--compact {
        width: 624px;
        height: 240px;
        gap: 32px;
        align-items: center;
    }

    .blog-card__thumb {
        width: 300px;
        height: 240px;
    }

    .blog-card--compact .blog-card__content {
        width: 300px;
        gap: 24px;
    }
}

@media (max-width: 767px) {
    .blog-preview {
        max-width: 375px;
        padding: 56px 32px 48px;
        gap: 32px;
    }

    .blog-preview__title {
        font-size: 32px;
        line-height: 1.15;
        width: 311px;
        height: 38px;
        text-align: center;
        align-self: stretch;
    }

    .blog-preview__cards {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        width: 311px;
    }

    .blog-card--featured {
        width: 311px;
        height: 310px;
        border-radius: 8px;
    }

    .blog-card--compact {
        flex-direction: column;
        width: 311px;
        height: auto;
        align-items: flex-start;
        gap: 16px;
    }

    .blog-card__thumb {
        width: 100%;
        height: 200px;
    }

    .blog-card--compact .blog-card__content {
        width: 100%;
        gap: 8px;
    }

    .blog-card--featured .blog-card__content {
        padding: 32px;
        gap: 8px;
    }

    .blog-card--featured .blog-card__title {
        width: 247px;
        height: 87px;
        font-size: 22px;
        line-height: 1.3;
        margin: 0 auto;
    }

    .blog-card__headline {
        font-size: 22px;
        line-height: 1.3;
        width: 311px;
    }

    .blog-card__excerpt {
        width: 311px;
    }
}

/* Terms page tables (cookie-policy) */
.terms-content .table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 24px;
}

.terms-content table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
}

.terms-content th,
.terms-content td {
    border: 1px solid #d9dce7;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    white-space: nowrap;
}

.terms-content th {
    background-color: #f5f7fb;
    font-weight: 600;
}

/* Terms pages responsive - tablet */
@media (max-width: 1024px) {
    .terms-header {
        height: 60px;
    }

    .terms-header-inner {
        padding: 0 32px;
    }
}

/* Terms pages responsive - mobile */
@media (max-width: 767px) {
    .terms-header {
        height: 60px;
        padding: 0;
    }

    .terms-header-inner {
        padding: 0 16px;
    }

    .terms-logo {
        width: 116px;
        height: 22px;
    }

    .terms-logo img {
        width: 116px;
        height: 22px;
        display: block;
    }

    .terms-container {
        padding: 40px 32px 60px;
    }

    .terms-title {
        font-size: 32px;
    }
}

/* Cookie consent banner — fixed on scroll, desktop/tablet + mobile */
.cookie-banner {
    box-sizing: border-box;
    position: fixed;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 32px;
    gap: 24px;
    width: 463px;
    max-width: calc(100vw - 48px);
    left: 24px;
    bottom: 24px;
    background: #FFFFFF;
    border: 1px solid #ECECEC;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
    border-radius: 16px;
    font-family: 'Poppins', sans-serif;
}

.cookie-banner[hidden] {
    display: none !important;
}

.cookie-banner__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    gap: 24px;
    width: 100%;
}

.cookie-banner__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    gap: 8px;
    width: 100%;
}

.cookie-banner__header {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0;
    gap: 12px;
}

.cookie-banner__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.cookie-banner__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 160%;
    color: #0A122F;
    margin: 0;
}

.cookie-banner__text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    letter-spacing: -0.04em;
    color: #0A122F;
    margin: 0;
    width: 100%;
}

.cookie-banner__text a {
    color: #0A122F;
    text-decoration: underline;
}

.cookie-banner__text a:hover {
    opacity: 0.8;
}

.cookie-banner__actions {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0;
    gap: 8px;
    width: 100%;
}

.cookie-banner__btn {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 12px 24px;
    min-height: 36px;
    border: 1px solid #0A122F;
    border-radius: 8px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 120%;
    color: #0A122F;
    background: transparent;
    cursor: pointer;
    text-decoration: none;
    flex: 1;
}

.cookie-banner__btn:hover {
    background: #f5f5f5;
}

.cookie-banner__btn--policy {
    flex: 1;
}

@media (max-width: 480px) {
    .cookie-banner {
        width: 363px;
        max-width: calc(100vw - 24px);
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        bottom: 12px;
        padding: 32px;
        gap: 24px;
        background: #FAFAFA;
        border: 1px solid #ECECEC;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
        border-radius: 16px;
    }

    .cookie-banner__content {
        max-width: 299px;
    }

    .cookie-banner__actions {
        max-width: 299px;
    }

    .cookie-banner__btn {
        flex: 1;
    }
}

/* ─── Audit page: remove empty space below hero ──────────────────────────────
   The outer wrapper has style="min-height:100vh" which stretches it to fill
   the whole viewport even though the hero content (framer-1c0b15m) is only
   678px tall. On the audit page we override that to auto so there is no gap.
   framer-1c0b15m keeps its 678px height — the image and text are unchanged.
   Scoped to .audit-page so index.html is unaffected.
────────────────────────────────────────────────────────────────────────────── */

.audit-page .framer-fy9Id.framer-72rtr7 {
    min-height: auto !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   AUDIT PAGE — RESPONSIVE (tablet ≤1439px, mobile ≤767px, small ≤480px)
   Hero framer classes are handled by existing Framer CSS at each breakpoint.
   These rules cover only the custom .terms-page sections below the hero.
   All rules scoped to .audit-page / .terms-page / #faq to protect index.html
═══════════════════════════════════════════════════════════════════════════ */

/* Hero height: let Framer CSS control it at all responsive breakpoints.
   On tablet Framer places the image at top:360px, on mobile at top:451px —
   the container heights (820px / 722px) are designed to fit it. No override. */

/* ── Tablet ≤ 1024px — section padding + grid collapse ───────────────────── */
@media (max-width: 1024px) {
    .terms-page section {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    #faq {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    /* Grids: 2 cols → 1 col */
    .audit-grid-2col {
        grid-template-columns: 1fr !important;
    }
}

/* ── Mobile ≤ 767px ───────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Section padding */
    .terms-page section {
        padding-left: 24px !important;
        padding-right: 24px !important;
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    /* Section headings */
    .terms-page section h2 {
        font-size: 28px !important;
        line-height: 1.2 !important;
    }
    .terms-page section p[style*="font-size:17px"] {
        font-size: 15px !important;
    }

    /* Grids */
    .audit-grid-2col {
        grid-template-columns: 1fr !important;
    }

    /* Tier cards */
    .audit-tier-card {
        padding: 28px 24px !important;
    }

    /* FAQ */
    #faq {
        padding-left: 24px !important;
        padding-right: 24px !important;
        padding-top: 48px !important;
        padding-bottom: 64px !important;
    }
    #faq > div > p {
        font-size: 40px !important;
    }
    .audit-page #faq .accordion-header p {
        font-size: 17px !important;
        line-height: 1.3 !important;
    }

    /* CTA dark block */
    .audit-cta-dark h2 {
        font-size: 28px !important;
        line-height: 1.2 !important;
    }
    .audit-cta-dark p {
        font-size: 15px !important;
    }
}

/* ── Small mobile ≤ 480px ─────────────────────────────────────────────────── */
@media (max-width: 480px) {
    .terms-page section {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    #faq {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .audit-tier-card {
        padding: 24px 16px !important;
    }
}
