.elementor-7 .elementor-element.elementor-element-1dae853{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7 .elementor-element.elementor-element-cf8b534{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-7 .elementor-element.elementor-element-62fabe8{--display:flex;}.elementor-7 .elementor-element.elementor-element-a7aa647{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-7 .elementor-element.elementor-element-09fe156{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-a667c9d{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-472bb88{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-8b6f1c7{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-1fd3523{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-65b0618{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-7 .elementor-element.elementor-element-d8ebddd{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-7 .elementor-element.elementor-element-cf8b534{--padding-top:50px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-7 .elementor-element.elementor-element-a7aa647{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-7 .elementor-element.elementor-element-cf8b534{--content-width:1180px;}}/* Start custom CSS */#lovable-badge {
        --badge-bg: #1b1b1b;
        --badge-text: #c5c1b9;
        --badge-text-hover: #dcdad5;
        --badge-radius: 6px;
        --badge-padding: 8px;
        --badge-gap: 6px;
        --badge-shadow:
            0 0 0 1px rgba(0, 0, 0, 0.88),
            0 1px 0 0 rgba(0, 0, 0, 0.04),
            0 2px 2px -1px rgba(0, 0, 0, 0.08),
            0 4px 4px -2px rgba(0, 0, 0, 0.08),
            0 8px 8px -4px rgba(0, 0, 0, 0.08),
            0 16px 16px -8px rgba(0, 0, 0, 0.08);
        --badge-transition-duration: 0.2s;
        --badge-transition-easing: cubic-bezier(0.16, 1, 0.32, 1);
        --focus-color: #575ECF;
        --focus-offset: 2px;
        --focus-width: 2px;

        position: fixed;
        bottom: 12px;
        right: 12px;
        height: 24px;
        display: flex;
        align-items: center;
        z-index: 1000000;
        background-color: var(--badge-bg) !important;
        color: var(--badge-text) !important;
        border-radius: var(--badge-radius);
        box-shadow: var(--badge-shadow) !important;
        font-size: 12px;
        font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        font-weight: 400 !important;
        text-transform: none !important;
        font-feature-settings: normal !important;
        transform: translateZ(0);
        will-change: transform, opacity;
        transition: opacity var(--badge-transition-duration) var(--badge-transition-easing);
    }

    #lovable-badge.closing {
        opacity: 0;
        pointer-events: none;
    }

    #lovable-badge-cta {
        display: flex;
        align-items: baseline;
        gap: var(--badge-gap);
        box-sizing: border-box;
        padding: 4px var(--badge-padding) 0;
        height: 100%;
        color: inherit;
        text-decoration: none;
        white-space: nowrap;
        border-radius: var(--badge-radius) 0 0 var(--badge-radius);
        transition:
            background-color var(--badge-transition-duration) ease,
            color var(--badge-transition-duration) ease,
            transform 0.1s ease;
    }

    #lovable-badge-cta:hover {
        background: rgba(255, 255, 255, 0.04);
        color: var(--badge-text-hover);
    }

    #lovable-badge-cta:active {
        transform: scale(0.98);
    }

    #lovable-badge-cta:focus {
        outline: none;
    }

    #lovable-badge-cta:focus-visible {
        outline: var(--focus-width) solid var(--focus-color);
        outline-offset: var(--focus-offset);
        z-index: 1;
    }

    #lovable-badge-text {
        line-height: 1;
    }

    /* The wordmark baseline sits at y=12 of the 16px logo; an empty 12px box
	   makes that the flex baseline so the text aligns to it on any system font. */
    #lovable-badge-logo {
        position: relative;
        display: block;
        width: 52px;
        height: 12px;
    }

    #lovable-badge-logo svg {
        position: absolute;
        top: 0;
        left: 0;
    }

    #lovable-badge-divider {
        width: 1px;
        height: 24px;
        background-color: rgba(255, 255, 255, 0.04);
        flex-shrink: 0;
    }

    #lovable-badge-close {
        width: 24px;
        height: 24px;
        min-width: 24px;
        min-height: 24px;
        cursor: pointer;
        background: none;
        border: none;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 0 var(--badge-radius) var(--badge-radius) 0;
        flex-shrink: 0;
        transition:
            background-color var(--badge-transition-duration) ease,
            transform 0.1s ease;
    }

    #lovable-badge-close:hover {
        background: rgba(255, 255, 255, 0.04);
    }

    #lovable-badge-close:active {
        transform: scale(0.92);
    }

    #lovable-badge-close:focus {
        outline: none;
    }

    #lovable-badge-close:focus-visible {
        outline: var(--focus-width) solid var(--focus-color);
        outline-offset: calc(var(--focus-offset) * -1);
        z-index: 1;
    }

    #lovable-badge-close svg path {
        fill: var(--badge-text);
        transition: fill var(--badge-transition-duration) ease;
    }

    #lovable-badge-close:hover svg path {
        fill: var(--badge-text-hover);
    }

    @media (prefers-reduced-motion: reduce) {

        #lovable-badge,
        #lovable-badge-cta,
        #lovable-badge-close,
        #lovable-badge-close svg path {
            transition: none;
        }

        #lovable-badge-cta:active,
        #lovable-badge-close:active {
            transform: none;
        }
    }

    @media (prefers-contrast: high) {
        #lovable-badge {
            --badge-bg: #000;
            --badge-text: #fff;
            --badge-text-hover: #fff;
            border: 2px solid currentColor;
        }

        #lovable-badge-cta:focus-visible,
        #lovable-badge-close:focus-visible {
            outline-width: 3px;
        }
    }

    /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
    @layer properties {
        @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {

            *,
            :before,
            :after,
            ::backdrop {
                --tw-translate-x: 0;
                --tw-translate-y: 0;
                --tw-translate-z: 0;
                --tw-rotate-x: initial;
                --tw-rotate-y: initial;
                --tw-rotate-z: initial;
                --tw-skew-x: initial;
                --tw-skew-y: initial;
                --tw-space-y-reverse: 0;
                --tw-space-x-reverse: 0;
                --tw-border-style: solid;
                --tw-leading: initial;
                --tw-font-weight: initial;
                --tw-tracking: initial;
                --tw-ordinal: initial;
                --tw-slashed-zero: initial;
                --tw-numeric-figure: initial;
                --tw-numeric-spacing: initial;
                --tw-numeric-fraction: initial;
                --tw-shadow: 0 0 #0000;
                --tw-shadow-color: initial;
                --tw-shadow-alpha: 100%;
                --tw-inset-shadow: 0 0 #0000;
                --tw-inset-shadow-color: initial;
                --tw-inset-shadow-alpha: 100%;
                --tw-ring-color: initial;
                --tw-ring-shadow: 0 0 #0000;
                --tw-inset-ring-color: initial;
                --tw-inset-ring-shadow: 0 0 #0000;
                --tw-ring-inset: initial;
                --tw-ring-offset-width: 0px;
                --tw-ring-offset-color: #fff;
                --tw-ring-offset-shadow: 0 0 #0000;
                --tw-outline-style: solid;
                --tw-blur: initial;
                --tw-brightness: initial;
                --tw-contrast: initial;
                --tw-grayscale: initial;
                --tw-hue-rotate: initial;
                --tw-invert: initial;
                --tw-opacity: initial;
                --tw-saturate: initial;
                --tw-sepia: initial;
                --tw-drop-shadow: initial;
                --tw-drop-shadow-color: initial;
                --tw-drop-shadow-alpha: 100%;
                --tw-drop-shadow-size: initial;
                --tw-duration: initial;
                --tw-ease: initial;
                --tw-content: "";
                --tw-animation-delay: 0s;
                --tw-animation-direction: normal;
                --tw-animation-duration: initial;
                --tw-animation-fill-mode: none;
                --tw-animation-iteration-count: 1;
                --tw-enter-blur: 0;
                --tw-enter-opacity: 1;
                --tw-enter-rotate: 0;
                --tw-enter-scale: 1;
                --tw-enter-translate-x: 0;
                --tw-enter-translate-y: 0;
                --tw-exit-blur: 0;
                --tw-exit-opacity: 1;
                --tw-exit-rotate: 0;
                --tw-exit-scale: 1;
                --tw-exit-translate-x: 0;
                --tw-exit-translate-y: 0
            }
        }
    }

    @layer theme {

        :root,
        :host {
            --font-sans: "Figtree", sans-serif;
            --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
            --color-black: #000;
            --spacing: .25rem;
            --container-sm: 24rem;
            --container-md: 28rem;
            --container-lg: 32rem;
            --text-xs: .75rem;
            --text-xs--line-height: calc(1 / .75);
            --text-sm: .875rem;
            --text-sm--line-height: calc(1.25 / .875);
            --text-base: 1rem;
            --text-base--line-height: calc(1.5 / 1);
            --text-lg: 1.125rem;
            --text-lg--line-height: calc(1.75 / 1.125);
            --text-xl: 1.25rem;
            --text-xl--line-height: calc(1.75 / 1.25);
            --text-7xl: 4.5rem;
            --text-7xl--line-height: 1;
            --font-weight-normal: 400;
            --font-weight-medium: 500;
            --font-weight-semibold: 600;
            --font-weight-bold: 700;
            --tracking-tight: -.025em;
            --tracking-widest: .1em;
            --leading-relaxed: 1.625;
            --radius-sm: .25rem;
            --radius-xl: .75rem;
            --ease-in-out: cubic-bezier(.4, 0, .2, 1);
            --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
            --aspect-video: 16 / 9;
            --default-transition-duration: .15s;
            --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
            --default-font-family: "Figtree", sans-serif;
            --default-mono-font-family: var(--font-mono);
            --font-display: "Outfit", sans-serif;
            --color-border: var(--border)
        }
    }

    @layer base {

        *,
        :after,
        :before,
        ::backdrop {
            box-sizing: border-box;
            border: 0 solid;
            margin: 0;
            padding: 0
        }

        ::file-body.elementor-page-7-button {
            box-sizing: border-box;
            border: 0 solid;
            margin: 0;
            padding: 0
        }

        html,
        :host {
            -webkit-text-size-adjust: 100%;
            tab-size: 4;
            line-height: 1.5;
            font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
            font-feature-settings: var(--default-font-feature-settings, normal);
            font-variation-settings: var(--default-font-variation-settings, normal);
            -webkit-tap-highlight-color: transparent
        }

        hr {
            height: 0;
            color: inherit;
            border-top-width: 1px
        }

        abbr:where([title]) {
            -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted
        }

        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
            font-size: inherit;
            font-weight: inherit
        }

        a {
            color: inherit;
            -webkit-text-decoration: inherit;
            -webkit-text-decoration: inherit;
            -webkit-text-decoration: inherit;
            -webkit-text-decoration: inherit;
            -webkit-text-decoration: inherit;
            text-decoration: inherit
        }

        b,
        strong {
            font-weight: bolder
        }

        code,
        kbd,
        samp,
        pre {
            font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
            font-feature-settings: var(--default-mono-font-feature-settings, normal);
            font-variation-settings: var(--default-mono-font-variation-settings, normal);
            font-size: 1em
        }

        small {
            font-size: 80%
        }

        sub,
        sup {
            vertical-align: baseline;
            font-size: 75%;
            line-height: 0;
            position: relative
        }

        sub {
            bottom: -.25em
        }

        sup {
            top: -.5em
        }

        table {
            text-indent: 0;
            border-color: inherit;
            border-collapse: collapse
        }

        :-moz-focusring:where(:not(iframe)) {
            outline: auto
        }

        progress {
            vertical-align: baseline
        }

        summary {
            display: list-item
        }

        ol,
        ul,
        menu {
            list-style: none
        }

        img,
        svg,
        video,
        canvas,
        audio,
        iframe,
        embed,
        object {
            vertical-align: middle;
            display: block
        }

        img,
        video {
            max-width: 100%;
            height: auto
        }

        button,
        input,
        select,
        optgroup,
        textarea {
            font: inherit;
            font-feature-settings: inherit;
            font-variation-settings: inherit;
            letter-spacing: inherit;
            color: inherit;
            opacity: 1;
            background-color: #0000;
            border-radius: 0
        }

        ::file-body.elementor-page-7-button {
            font: inherit;
            font-feature-settings: inherit;
            font-variation-settings: inherit;
            letter-spacing: inherit;
            color: inherit;
            opacity: 1;
            background-color: #0000;
            border-radius: 0
        }

        :where(select:is([multiple], [size])) optgroup {
            font-weight: bolder
        }

        :where(select:is([multiple], [size])) optgroup option {
            padding-inline-start: 20px
        }

        ::file-body.elementor-page-7-button {
            margin-inline-end: 4px
        }

        ::placeholder {
            opacity: 1
        }

        @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
            ::placeholder {
                color: currentColor
            }

            @supports (color:color-mix(in lab, red, red)) {
                ::placeholder {
                    color: color-mix(in oklab, currentcolor 50%, transparent)
                }
            }
        }

        textarea {
            resize: vertical
        }

        ::-webkit-search-decoration {
            -webkit-appearance: none
        }

        ::-webkit-date-and-time-value {
            min-height: 1lh;
            text-align: inherit
        }

        ::-webkit-datetime-edit {
            display: inline-flex
        }

        ::-webkit-datetime-edit-fields-wrapper {
            padding: 0
        }

        ::-webkit-datetime-edit {
            padding-block: 0
        }

        ::-webkit-datetime-edit-year-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-month-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-day-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-hour-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-minute-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-second-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-millisecond-field {
            padding-block: 0
        }

        ::-webkit-datetime-edit-meridiem-field {
            padding-block: 0
        }

        ::-webkit-calendar-picker-indicator {
            line-height: 1
        }

        :-moz-ui-invalid {
            box-shadow: none
        }

        button,
        input:where([type=button], [type=reset], [type=submit]) {
            appearance: button
        }

        ::file-body.elementor-page-7-button {
            appearance: button
        }

        ::-webkit-inner-spin-button {
            height: auto
        }

        ::-webkit-outer-spin-button {
            height: auto
        }

        [hidden]:where(:not([hidden=until-found])) {
            display: none !important
        }

        * {
            border-color: var(--border);
            letter-spacing: 0
        }

        html {
            scroll-behavior: smooth;
            scroll-padding-top: 100px
        }

        body {
            background: var(--background);
            color: var(--foreground);
            font-family: var(--font-sans);
            -webkit-font-smoothing: antialiased;
            margin: 0
        }

        h1,
        h2,
        h3,
        h4 {
            font-family: var(--font-display)
        }

        a {
            text-decoration: none
        }

        button,
        a,
        input,
        select {
            -webkit-tap-highlight-color: transparent
        }

        button {
            cursor: pointer
        }
    }

    @layer components;

    @layer utilities {
        .pointer-events-none {
            pointer-events: none
        }

        .invisible {
            visibility: hidden
        }

        .sr-only {
            clip-path: inset(50%);
            white-space: nowrap;
            border-width: 0;
            width: 1px;
            height: 1px;
            margin: -1px;
            padding: 0;
            position: absolute;
            overflow: hidden
        }

        .absolute {
            position: absolute
        }

        .fixed {
            position: fixed
        }

        .relative {
            position: relative
        }

        .inset-0 {
            inset: 0
        }

        .inset-x-0 {
            inset-inline: 0
        }

        .inset-y-0 {
            inset-block: 0
        }

        .-top-12 {
            top: calc(var(--spacing) * -12)
        }

        .top-0 {
            top: 0
        }

        .top-1\.5 {
            top: calc(var(--spacing) * 1.5)
        }

        .top-1\/2 {
            top: 50%
        }

        .top-3\.5 {
            top: calc(var(--spacing) * 3.5)
        }

        .top-4 {
            top: calc(var(--spacing) * 4)
        }

        .top-\[1px\] {
            top: 1px
        }

        .top-\[50\%\] {
            top: 50%
        }

        .top-\[60\%\] {
            top: 60%
        }

        .top-full {
            top: 100%
        }

        .-right-12 {
            right: calc(var(--spacing) * -12)
        }

        .right-0 {
            right: 0
        }

        .right-1 {
            right: var(--spacing)
        }

        .right-2 {
            right: calc(var(--spacing) * 2)
        }

        .right-3 {
            right: calc(var(--spacing) * 3)
        }

        .right-4 {
            right: calc(var(--spacing) * 4)
        }

        .-bottom-12 {
            bottom: calc(var(--spacing) * -12)
        }

        .bottom-0 {
            bottom: 0
        }

        .-left-12 {
            left: calc(var(--spacing) * -12)
        }

        .left-0 {
            left: 0
        }

        .left-1\/2 {
            left: 50%
        }

        .left-2 {
            left: calc(var(--spacing) * 2)
        }

        .left-\[50\%\] {
            left: 50%
        }

        .z-10 {
            z-index: 10
        }

        .z-20 {
            z-index: 20
        }

        .z-50 {
            z-index: 50
        }

        .z-\[1\] {
            z-index: 1
        }

        .container {
            width: 100%
        }

        @media (width>=40rem) {
            .container {
                max-width: 40rem
            }
        }

        @media (width>=48rem) {
            .container {
                max-width: 48rem
            }
        }

        @media (width>=64rem) {
            .container {
                max-width: 64rem
            }
        }

        @media (width>=80rem) {
            .container {
                max-width: 80rem
            }
        }

        @media (width>=96rem) {
            .container {
                max-width: 96rem
            }
        }

        .-mx-1 {
            margin-inline: calc(var(--spacing) * -1)
        }

        .mx-2 {
            margin-inline: calc(var(--spacing) * 2)
        }

        .mx-3\.5 {
            margin-inline: calc(var(--spacing) * 3.5)
        }

        .mx-auto {
            margin-inline: auto
        }

        .my-0\.5 {
            margin-block: calc(var(--spacing) * .5)
        }

        .my-1 {
            margin-block: var(--spacing)
        }

        .-mt-4 {
            margin-top: calc(var(--spacing) * -4)
        }

        .mt-1 {
            margin-top: var(--spacing)
        }

        .mt-1\.5 {
            margin-top: calc(var(--spacing) * 1.5)
        }

        .mt-2 {
            margin-top: calc(var(--spacing) * 2)
        }

        .mt-4 {
            margin-top: calc(var(--spacing) * 4)
        }

        .mt-6 {
            margin-top: calc(var(--spacing) * 6)
        }

        .mt-24 {
            margin-top: calc(var(--spacing) * 24)
        }

        .mt-auto {
            margin-top: auto
        }

        .mr-2 {
            margin-right: calc(var(--spacing) * 2)
        }

        .mb-1 {
            margin-bottom: var(--spacing)
        }

        .-ml-4 {
            margin-left: calc(var(--spacing) * -4)
        }

        .ml-1 {
            margin-left: var(--spacing)
        }

        .ml-auto {
            margin-left: auto
        }

        .block {
            display: block
        }

        .flex {
            display: flex
        }

        .grid {
            display: grid
        }

        .hidden {
            display: none
        }

        .inline-flex {
            display: inline-flex
        }

        .table {
            display: table
        }

        .aspect-square {
            aspect-ratio: 1
        }

        .aspect-video {
            aspect-ratio: var(--aspect-video)
        }

        .size-\(--cell-size\) {
            width: var(--cell-size);
            height: var(--cell-size)
        }

        .size-4 {
            width: calc(var(--spacing) * 4);
            height: calc(var(--spacing) * 4)
        }

        .h-\(--cell-size\) {
            height: var(--cell-size)
        }

        .h-1\.5 {
            height: calc(var(--spacing) * 1.5)
        }

        .h-2 {
            height: calc(var(--spacing) * 2)
        }

        .h-2\.5 {
            height: calc(var(--spacing) * 2.5)
        }

        .h-3 {
            height: calc(var(--spacing) * 3)
        }

        .h-3\.5 {
            height: calc(var(--spacing) * 3.5)
        }

        .h-4 {
            height: calc(var(--spacing) * 4)
        }

        .h-5 {
            height: calc(var(--spacing) * 5)
        }

        .h-7 {
            height: calc(var(--spacing) * 7)
        }

        .h-8 {
            height: calc(var(--spacing) * 8)
        }

        .h-9 {
            height: calc(var(--spacing) * 9)
        }

        .h-10 {
            height: calc(var(--spacing) * 10)
        }

        .h-11 {
            height: calc(var(--spacing) * 11)
        }

        .h-12 {
            height: calc(var(--spacing) * 12)
        }

        .h-\[1px\] {
            height: 1px
        }

        .h-\[var\(--radix-navigation-menu-viewport-height\)\] {
            height: var(--radix-navigation-menu-viewport-height)
        }

        .h-\[var\(--radix-select-trigger-height\)\] {
            height: var(--radix-select-trigger-height)
        }

        .h-auto {
            height: auto
        }

        .h-full {
            height: 100%
        }

        .h-px {
            height: 1px
        }

        .h-svh {
            height: 100svh
        }

        .max-h-\(--radix-context-menu-content-available-height\) {
            max-height: var(--radix-context-menu-content-available-height)
        }

        .max-h-\(--radix-select-content-available-height\) {
            max-height: var(--radix-select-content-available-height)
        }

        .max-h-\[300px\] {
            max-height: 300px
        }

        .max-h-\[var\(--radix-dropdown-menu-content-available-height\)\] {
            max-height: var(--radix-dropdown-menu-content-available-height)
        }

        .min-h-0 {
            min-height: 0
        }

        .min-h-\[60px\] {
            min-height: 60px
        }

        .min-h-screen {
            min-height: 100vh
        }

        .min-h-svh {
            min-height: 100svh
        }

        .w-\(--cell-size\) {
            width: var(--cell-size)
        }

        .w-\(--sidebar-width\) {
            width: var(--sidebar-width)
        }

        .w-0 {
            width: 0
        }

        .w-1 {
            width: var(--spacing)
        }

        .w-2 {
            width: calc(var(--spacing) * 2)
        }

        .w-2\.5 {
            width: calc(var(--spacing) * 2.5)
        }

        .w-3 {
            width: calc(var(--spacing) * 3)
        }

        .w-3\.5 {
            width: calc(var(--spacing) * 3.5)
        }

        .w-3\/4 {
            width: 75%
        }

        .w-4 {
            width: calc(var(--spacing) * 4)
        }

        .w-5 {
            width: calc(var(--spacing) * 5)
        }

        .w-7 {
            width: calc(var(--spacing) * 7)
        }

        .w-8 {
            width: calc(var(--spacing) * 8)
        }

        .w-9 {
            width: calc(var(--spacing) * 9)
        }

        .w-10 {
            width: calc(var(--spacing) * 10)
        }

        .w-64 {
            width: calc(var(--spacing) * 64)
        }

        .w-72 {
            width: calc(var(--spacing) * 72)
        }

        .w-\[1px\] {
            width: 1px
        }

        .w-\[100px\] {
            width: 100px
        }

        .w-auto {
            width: auto
        }

        .w-fit {
            width: fit-content
        }

        .w-full {
            width: 100%
        }

        .w-max {
            width: max-content
        }

        .w-px {
            width: 1px
        }

        .max-w-\(--skeleton-width\) {
            max-width: var(--skeleton-width)
        }

        .max-w-lg {
            max-width: var(--container-lg)
        }

        .max-w-max {
            max-width: max-content
        }

        .max-w-md {
            max-width: var(--container-md)
        }

        .min-w-\(--cell-size\) {
            min-width: var(--cell-size)
        }

        .min-w-0 {
            min-width: 0
        }

        .min-w-5 {
            min-width: calc(var(--spacing) * 5)
        }

        .min-w-8 {
            min-width: calc(var(--spacing) * 8)
        }

        .min-w-9 {
            min-width: calc(var(--spacing) * 9)
        }

        .min-w-10 {
            min-width: calc(var(--spacing) * 10)
        }

        .min-w-\[8rem\] {
            min-width: 8rem
        }

        .min-w-\[12rem\] {
            min-width: 12rem
        }

        .min-w-\[var\(--radix-select-trigger-width\)\] {
            min-width: var(--radix-select-trigger-width)
        }

        .flex-1 {
            flex: 1
        }

        .shrink-0 {
            flex-shrink: 0
        }

        .grow {
            flex-grow: 1
        }

        .grow-0 {
            flex-grow: 0
        }

        .basis-full {
            flex-basis: 100%
        }

        .caption-bottom {
            caption-side: bottom
        }

        .border-collapse {
            border-collapse: collapse
        }

        .origin-\(--radix-context-menu-content-transform-origin\) {
            transform-origin: var(--radix-context-menu-content-transform-origin)
        }

        .origin-\(--radix-dropdown-menu-content-transform-origin\) {
            transform-origin: var(--radix-dropdown-menu-content-transform-origin)
        }

        .origin-\(--radix-hover-card-content-transform-origin\) {
            transform-origin: var(--radix-hover-card-content-transform-origin)
        }

        .origin-\(--radix-menubar-content-transform-origin\) {
            transform-origin: var(--radix-menubar-content-transform-origin)
        }

        .origin-\(--radix-popover-content-transform-origin\) {
            transform-origin: var(--radix-popover-content-transform-origin)
        }

        .origin-\(--radix-select-content-transform-origin\) {
            transform-origin: var(--radix-select-content-transform-origin)
        }

        .origin-\(--radix-tooltip-content-transform-origin\) {
            transform-origin: var(--radix-tooltip-content-transform-origin)
        }

        .-translate-x-1\/2 {
            --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .-translate-x-px {
            --tw-translate-x: -1px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .translate-x-\[-50\%\] {
            --tw-translate-x: -50%;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .translate-x-px {
            --tw-translate-x: 1px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .-translate-y-1\/2 {
            --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .translate-y-\[-50\%\] {
            --tw-translate-y: -50%;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .rotate-45 {
            rotate: 45deg
        }

        .rotate-90 {
            rotate: 90deg
        }

        .transform {
            transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )
        }

        .animate-caret-blink {
            animation: 1.25s ease-out infinite caret-blink
        }

        .animate-in {
            animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .animate-pulse {
            animation: var(--animate-pulse)
        }

        .cursor-default {
            cursor: default
        }

        .cursor-pointer {
            cursor: pointer
        }

        .touch-none {
            touch-action: none
        }

        .list-none {
            list-style-type: none
        }

        .flex-col {
            flex-direction: column
        }

        .flex-col-reverse {
            flex-direction: column-reverse
        }

        .flex-row {
            flex-direction: row
        }

        .flex-wrap {
            flex-wrap: wrap
        }

        .place-content-center {
            place-content: center
        }

        .items-center {
            align-items: center
        }

        .items-end {
            align-items: flex-end
        }

        .items-start {
            align-items: flex-start
        }

        .items-stretch {
            align-items: stretch
        }

        .justify-between {
            justify-content: space-between
        }

        .justify-center {
            justify-content: center
        }

        .gap-1 {
            gap: var(--spacing)
        }

        .gap-1\.5 {
            gap: calc(var(--spacing) * 1.5)
        }

        .gap-2 {
            gap: calc(var(--spacing) * 2)
        }

        .gap-4 {
            gap: calc(var(--spacing) * 4)
        }

        :where(.space-y-1\.5>:not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))
        }

        :where(.space-y-2>:not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))
        }

        :where(.space-x-1>:not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(var(--spacing) * var(--tw-space-x-reverse));
            margin-inline-end: calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))
        }

        .overflow-auto {
            overflow: auto
        }

        .overflow-hidden {
            overflow: hidden
        }

        .overflow-x-hidden {
            overflow-x: hidden
        }

        .overflow-y-auto {
            overflow-y: auto
        }

        .rounded-\[2px\] {
            border-radius: 2px
        }

        .rounded-\[inherit\] {
            border-radius: inherit
        }

        .rounded-full {
            border-radius: 2147483647px
        }

        .rounded-lg {
            border-radius: 8px
        }

        .rounded-md {
            border-radius: 6px
        }

        .rounded-none {
            border-radius: 0
        }

        .rounded-sm {
            border-radius: var(--radius-sm)
        }

        .rounded-xl {
            border-radius: var(--radius-xl)
        }

        .rounded-t-\[10px\] {
            border-top-left-radius: 10px;
            border-top-right-radius: 10px
        }

        .rounded-l-md {
            border-top-left-radius: 6px;
            border-bottom-left-radius: 6px
        }

        .rounded-tl-sm {
            border-top-left-radius: var(--radius-sm)
        }

        .rounded-r-md {
            border-top-right-radius: 6px;
            border-bottom-right-radius: 6px
        }

        .border {
            border-style: var(--tw-border-style);
            border-width: 1px
        }

        .border-2 {
            border-style: var(--tw-border-style);
            border-width: 2px
        }

        .border-\[1\.5px\] {
            border-style: var(--tw-border-style);
            border-width: 1.5px
        }

        .border-y {
            border-block-style: var(--tw-border-style);
            border-block-width: 1px
        }

        .border-t {
            border-top-style: var(--tw-border-style);
            border-top-width: 1px
        }

        .border-r {
            border-right-style: var(--tw-border-style);
            border-right-width: 1px
        }

        .border-b {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 1px
        }

        .border-l {
            border-left-style: var(--tw-border-style);
            border-left-width: 1px
        }

        .border-dashed {
            --tw-border-style: dashed;
            border-style: dashed
        }

        .border-\(--color-border\) {
            border-color: var(--color-border)
        }

        .border-border\/50 {
            border-color: var(--border)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .border-border\/50 {
                border-color: color-mix(in oklab, var(--border) 50%, transparent)
            }
        }

        .border-destructive\/50 {
            border-color: oklab(58% .199388 .092976/.5)
        }

        .border-input {
            border-color: var(--border)
        }

        .border-primary,
        .border-primary\/50 {
            border-color: var(--primary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .border-primary\/50 {
                border-color: color-mix(in oklab, var(--primary) 50%, transparent)
            }
        }

        .border-transparent {
            border-color: #0000
        }

        .border-t-transparent {
            border-top-color: #0000
        }

        .border-l-transparent {
            border-left-color: #0000
        }

        .bg-\(--color-bg\) {
            background-color: var(--color-bg)
        }

        .bg-accent {
            background-color: var(--secondary)
        }

        .bg-background {
            background-color: var(--background)
        }

        .bg-black\/80 {
            background-color: #000c
        }

        @supports (color:color-mix(in lab, red, red)) {
            .bg-black\/80 {
                background-color: color-mix(in oklab, var(--color-black) 80%, transparent)
            }
        }

        .bg-border {
            background-color: var(--border)
        }

        .bg-card {
            background-color: var(--card)
        }

        .bg-destructive {
            background-color: oklch(58% .22 25)
        }

        .bg-foreground {
            background-color: var(--foreground)
        }

        .bg-muted,
        .bg-muted\/50 {
            background-color: var(--secondary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .bg-muted\/50 {
                background-color: color-mix(in oklab, var(--secondary) 50%, transparent)
            }
        }

        .bg-popover {
            background-color: var(--card)
        }

        .bg-primary {
            background-color: var(--primary)
        }

        .bg-primary-foreground {
            background-color: var(--primary-foreground)
        }

        .bg-primary\/10 {
            background-color: var(--primary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .bg-primary\/10 {
                background-color: color-mix(in oklab, var(--primary) 10%, transparent)
            }
        }

        .bg-primary\/20 {
            background-color: var(--primary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .bg-primary\/20 {
                background-color: color-mix(in oklab, var(--primary) 20%, transparent)
            }
        }

        .bg-secondary {
            background-color: var(--secondary)
        }

        .bg-transparent {
            background-color: #0000
        }

        .fill-current {
            fill: currentColor
        }

        .fill-primary {
            fill: var(--primary)
        }

        .p-0 {
            padding: 0
        }

        .p-1 {
            padding: var(--spacing)
        }

        .p-2 {
            padding: calc(var(--spacing) * 2)
        }

        .p-3 {
            padding: calc(var(--spacing) * 3)
        }

        .p-4 {
            padding: calc(var(--spacing) * 4)
        }

        .p-6 {
            padding: calc(var(--spacing) * 6)
        }

        .p-\[1px\] {
            padding: 1px
        }

        .px-\(--cell-size\) {
            padding-inline: var(--cell-size)
        }

        .px-0 {
            padding-inline: 0
        }

        .px-1 {
            padding-inline: var(--spacing)
        }

        .px-1\.5 {
            padding-inline: calc(var(--spacing) * 1.5)
        }

        .px-2 {
            padding-inline: calc(var(--spacing) * 2)
        }

        .px-2\.5 {
            padding-inline: calc(var(--spacing) * 2.5)
        }

        .px-3 {
            padding-inline: calc(var(--spacing) * 3)
        }

        .px-4 {
            padding-inline: calc(var(--spacing) * 4)
        }

        .px-8 {
            padding-inline: calc(var(--spacing) * 8)
        }

        .py-0\.5 {
            padding-block: calc(var(--spacing) * .5)
        }

        .py-1 {
            padding-block: var(--spacing)
        }

        .py-1\.5 {
            padding-block: calc(var(--spacing) * 1.5)
        }

        .py-2 {
            padding-block: calc(var(--spacing) * 2)
        }

        .py-3 {
            padding-block: calc(var(--spacing) * 3)
        }

        .py-4 {
            padding-block: calc(var(--spacing) * 4)
        }

        .py-6 {
            padding-block: calc(var(--spacing) * 6)
        }

        .pt-0 {
            padding-top: 0
        }

        .pt-3 {
            padding-top: calc(var(--spacing) * 3)
        }

        .pt-4 {
            padding-top: calc(var(--spacing) * 4)
        }

        .pr-1 {
            padding-right: var(--spacing)
        }

        .pr-2 {
            padding-right: calc(var(--spacing) * 2)
        }

        .pr-2\.5 {
            padding-right: calc(var(--spacing) * 2.5)
        }

        .pr-8 {
            padding-right: calc(var(--spacing) * 8)
        }

        .pb-3 {
            padding-bottom: calc(var(--spacing) * 3)
        }

        .pb-4 {
            padding-bottom: calc(var(--spacing) * 4)
        }

        .pl-2 {
            padding-left: calc(var(--spacing) * 2)
        }

        .pl-2\.5 {
            padding-left: calc(var(--spacing) * 2.5)
        }

        .pl-4 {
            padding-left: calc(var(--spacing) * 4)
        }

        .pl-8 {
            padding-left: calc(var(--spacing) * 8)
        }

        .text-center {
            text-align: center
        }

        .text-left {
            text-align: left
        }

        .align-middle {
            vertical-align: middle
        }

        .font-mono {
            font-family: var(--font-mono)
        }

        .text-7xl {
            font-size: var(--text-7xl);
            line-height: var(--tw-leading, var(--text-7xl--line-height))
        }

        .text-base {
            font-size: var(--text-base);
            line-height: var(--tw-leading, var(--text-base--line-height))
        }

        .text-lg {
            font-size: var(--text-lg);
            line-height: var(--tw-leading, var(--text-lg--line-height))
        }

        .text-sm {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height))
        }

        .text-xl {
            font-size: var(--text-xl);
            line-height: var(--tw-leading, var(--text-xl--line-height))
        }

        .text-xs {
            font-size: var(--text-xs);
            line-height: var(--tw-leading, var(--text-xs--line-height))
        }

        .text-\[0\.8rem\] {
            font-size: .8rem
        }

        .leading-none {
            --tw-leading: 1;
            line-height: 1
        }

        .font-bold {
            --tw-font-weight: var(--font-weight-bold);
            font-weight: var(--font-weight-bold)
        }

        .font-medium {
            --tw-font-weight: var(--font-weight-medium);
            font-weight: var(--font-weight-medium)
        }

        .font-normal {
            --tw-font-weight: var(--font-weight-normal);
            font-weight: var(--font-weight-normal)
        }

        .font-semibold {
            --tw-font-weight: var(--font-weight-semibold);
            font-weight: var(--font-weight-semibold)
        }

        .tracking-tight {
            --tw-tracking: var(--tracking-tight);
            letter-spacing: var(--tracking-tight)
        }

        .tracking-widest {
            --tw-tracking: var(--tracking-widest);
            letter-spacing: var(--tracking-widest)
        }

        .break-words {
            overflow-wrap: break-word
        }

        .whitespace-nowrap {
            white-space: nowrap
        }

        .text-accent-foreground {
            color: var(--primary)
        }

        .text-card-foreground {
            color: var(--foreground)
        }

        .text-current {
            color: currentColor
        }

        .text-destructive {
            color: oklch(58% .22 25)
        }

        .text-destructive-foreground {
            color: var(--card)
        }

        .text-foreground {
            color: var(--foreground)
        }

        .text-muted-foreground {
            color: var(--muted-foreground)
        }

        .text-popover-foreground {
            color: var(--foreground)
        }

        .text-primary {
            color: var(--primary)
        }

        .text-primary-foreground {
            color: var(--primary-foreground)
        }

        .text-secondary-foreground {
            color: var(--foreground)
        }

        .text-success {
            color: var(--success)
        }

        .tabular-nums {
            --tw-numeric-spacing: tabular-nums;
            font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )
        }

        .underline-offset-4 {
            text-underline-offset: 4px
        }

        .opacity-0 {
            opacity: 0
        }

        .opacity-50 {
            opacity: .5
        }

        .opacity-60 {
            opacity: .6
        }

        .opacity-70 {
            opacity: .7
        }

        .shadow {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-\[0_0_0_1px_var\(--sidebar-border\)\] {
            --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-border));
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-lg {
            --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-md {
            --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-none {
            --tw-shadow: 0 0 #0000;
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-sm {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-xl {
            --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .shadow-xs {
            --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .ring-0 {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .ring-1 {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .ring-ring {
            --tw-ring-color: var(--primary)
        }

        .ring-offset-background {
            --tw-ring-offset-color: var(--background)
        }

        .outline {
            outline-style: var(--tw-outline-style);
            outline-width: 1px
        }

        .filter {
            filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )
        }

        .transition {
            transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-\[left\,right\,width\] {
            transition-property: left, right, width;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-\[margin\,opacity\] {
            transition-property: margin, opacity;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-\[width\,height\,padding\] {
            transition-property: width, height, padding;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-\[width\] {
            transition-property: width;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-all {
            transition-property: all;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-colors {
            transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-opacity {
            transition-property: opacity;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .transition-transform {
            transition-property: transform, translate, scale, rotate;
            transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
            transition-duration: var(--tw-duration, var(--default-transition-duration))
        }

        .duration-200 {
            --tw-duration: .2s;
            transition-duration: .2s
        }

        .duration-300 {
            --tw-duration: .3s;
            transition-duration: .3s
        }

        .duration-1000 {
            --tw-duration: 1s;
            transition-duration: 1s
        }

        .ease-in-out {
            --tw-ease: var(--ease-in-out);
            transition-timing-function: var(--ease-in-out)
        }

        .ease-linear {
            --tw-ease: linear;
            transition-timing-function: linear
        }

        .fade-in-0 {
            --tw-enter-opacity: 0
        }

        .outline-none {
            --tw-outline-style: none;
            outline-style: none
        }

        .select-none {
            -webkit-user-select: none;
            user-select: none
        }

        .zoom-in-95 {
            --tw-enter-scale: .95
        }

        .\[--cell-size\:2rem\] {
            --cell-size: 2rem
        }

        .running {
            animation-play-state: running
        }

        .group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *) {
            opacity: 1
        }

        @media (hover:hover) {
            .group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *) {
                opacity: 1
            }
        }

        .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *) {
            padding-right: calc(var(--spacing) * 8)
        }

        .group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *) {
            margin-top: calc(var(--spacing) * -8)
        }

        .group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *) {
            display: none
        }

        .group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible=icon] *) {
            width: calc(var(--spacing) * 8) !important;
            height: calc(var(--spacing) * 8) !important
        }

        .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *) {
            width: var(--sidebar-width-icon)
        }

        .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible=icon] *) {
            width: calc(var(--sidebar-width-icon) + 1rem)
        }

        .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible=icon] *) {
            width: calc(var(--sidebar-width-icon) + 1rem + 2px)
        }

        .group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *) {
            overflow: hidden
        }

        .group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible=icon] *) {
            padding: 0 !important
        }

        .group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible=icon] *) {
            padding: calc(var(--spacing) * 2) !important
        }

        .group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *) {
            opacity: 0
        }

        .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *) {
            right: calc(var(--sidebar-width) * -1)
        }

        .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *) {
            left: calc(var(--sidebar-width) * -1)
        }

        .group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *) {
            width: 0
        }

        .group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *) {
            --tw-translate-x: 0px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *) {
            position: relative
        }

        .group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *) {
            z-index: 10
        }

        .group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *) {
            border-color: var(--primary)
        }

        .group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *) {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *) {
            --tw-ring-color: var(--primary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *) {
                --tw-ring-color: color-mix(in oklab, var(--primary) 50%, transparent)
            }
        }

        .group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *) {
            right: calc(var(--spacing) * -4)
        }

        .group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *) {
            border-right-style: var(--tw-border-style);
            border-right-width: 1px
        }

        .group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *) {
            left: 0
        }

        .group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *) {
            rotate: 180deg
        }

        .group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *) {
            border-left-style: var(--tw-border-style);
            border-left-width: 1px
        }

        .group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *) {
            rotate: 180deg
        }

        .group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *) {
            border-radius: 8px
        }

        .group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *) {
            border-style: var(--tw-border-style);
            border-width: 1px
        }

        .group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant=floating] *) {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .group-\[\.toast\]\:bg-muted:is(:where(.group).toast *) {
            background-color: var(--secondary)
        }

        .group-\[\.toast\]\:bg-primary:is(:where(.group).toast *) {
            background-color: var(--primary)
        }

        .group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *) {
            color: var(--muted-foreground)
        }

        .group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *) {
            color: var(--primary-foreground)
        }

        .group-\[\.toaster\]\:border-border:is(:where(.group).toaster *) {
            border-color: var(--border)
        }

        .group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *) {
            background-color: var(--background)
        }

        .group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *) {
            color: var(--foreground)
        }

        .group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *) {
            --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*) {
            cursor: not-allowed
        }

        .peer-disabled\:opacity-70:is(:where(.peer):disabled~*) {
            opacity: .7
        }

        .peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*) {
            top: calc(var(--spacing) * 1.5)
        }

        .peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*) {
            top: calc(var(--spacing) * 2.5)
        }

        .peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*) {
            top: var(--spacing)
        }

        .file\:border-0::file-body.elementor-page-7-button {
            border-style: var(--tw-border-style);
            border-width: 0
        }

        .file\:bg-transparent::file-body.elementor-page-7-button {
            background-color: #0000
        }

        .file\:text-sm::file-body.elementor-page-7-button {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height))
        }

        .file\:font-medium::file-body.elementor-page-7-button {
            --tw-font-weight: var(--font-weight-medium);
            font-weight: var(--font-weight-medium)
        }

        .file\:text-foreground::file-body.elementor-page-7-button {
            color: var(--foreground)
        }

        .placeholder\:text-muted-foreground::placeholder {
            color: var(--muted-foreground)
        }

        .after\:absolute:after {
            content: var(--tw-content);
            position: absolute
        }

        .after\:-inset-2:after {
            content: var(--tw-content);
            inset: calc(var(--spacing) * -2)
        }

        .after\:inset-y-0:after {
            content: var(--tw-content);
            inset-block: 0
        }

        .after\:left-1\/2:after {
            content: var(--tw-content);
            left: 50%
        }

        .after\:w-1:after {
            content: var(--tw-content);
            width: var(--spacing)
        }

        .after\:w-\[2px\]:after {
            content: var(--tw-content);
            width: 2px
        }

        .after\:-translate-x-1\/2:after {
            content: var(--tw-content);
            --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after {
            content: var(--tw-content);
            left: 100%
        }

        .first\:rounded-l-md:first-child {
            border-top-left-radius: 6px;
            border-bottom-left-radius: 6px
        }

        .first\:border-l:first-child {
            border-left-style: var(--tw-border-style);
            border-left-width: 1px
        }

        .last\:rounded-r-md:last-child {
            border-top-right-radius: 6px;
            border-bottom-right-radius: 6px
        }

        @media (hover:hover) {
            .hover\:bg-accent:hover {
                background-color: var(--secondary)
            }

            .hover\:bg-destructive\/80:hover {
                background-color: oklab(58% .199388 .092976/.8)
            }

            .hover\:bg-destructive\/90:hover {
                background-color: oklab(58% .199388 .092976/.9)
            }

            .hover\:bg-muted:hover,
            .hover\:bg-muted\/50:hover {
                background-color: var(--secondary)
            }

            @supports (color:color-mix(in lab, red, red)) {
                .hover\:bg-muted\/50:hover {
                    background-color: color-mix(in oklab, var(--secondary) 50%, transparent)
                }
            }

            .hover\:bg-primary\/80:hover {
                background-color: var(--primary)
            }

            @supports (color:color-mix(in lab, red, red)) {
                .hover\:bg-primary\/80:hover {
                    background-color: color-mix(in oklab, var(--primary) 80%, transparent)
                }
            }

            .hover\:bg-primary\/90:hover {
                background-color: var(--primary)
            }

            @supports (color:color-mix(in lab, red, red)) {
                .hover\:bg-primary\/90:hover {
                    background-color: color-mix(in oklab, var(--primary) 90%, transparent)
                }
            }

            .hover\:bg-secondary:hover,
            .hover\:bg-secondary\/80:hover {
                background-color: var(--secondary)
            }

            @supports (color:color-mix(in lab, red, red)) {
                .hover\:bg-secondary\/80:hover {
                    background-color: color-mix(in oklab, var(--secondary) 80%, transparent)
                }
            }

            .hover\:text-accent-foreground:hover {
                color: var(--primary)
            }

            .hover\:text-foreground:hover {
                color: var(--foreground)
            }

            .hover\:text-muted-foreground:hover {
                color: var(--muted-foreground)
            }

            .hover\:underline:hover {
                text-decoration-line: underline
            }

            .hover\:opacity-100:hover {
                opacity: 1
            }

            .hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover {
                --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-accent));
                box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
            }
        }

        .focus\:bg-accent:focus {
            background-color: var(--secondary)
        }

        .focus\:text-accent-foreground:focus {
            color: var(--primary)
        }

        .focus\:ring-1:focus {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .focus\:ring-2:focus {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .focus\:ring-ring:focus {
            --tw-ring-color: var(--primary)
        }

        .focus\:ring-offset-2:focus {
            --tw-ring-offset-width: 2px;
            --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
        }

        .focus\:outline-none:focus {
            --tw-outline-style: none;
            outline-style: none
        }

        .focus-visible\:ring-1:focus-visible {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .focus-visible\:ring-2:focus-visible {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .focus-visible\:ring-ring:focus-visible {
            --tw-ring-color: var(--primary)
        }

        .focus-visible\:ring-offset-1:focus-visible {
            --tw-ring-offset-width: 1px;
            --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
        }

        .focus-visible\:ring-offset-2:focus-visible {
            --tw-ring-offset-width: 2px;
            --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)
        }

        .focus-visible\:ring-offset-background:focus-visible {
            --tw-ring-offset-color: var(--background)
        }

        .focus-visible\:outline-none:focus-visible {
            --tw-outline-style: none;
            outline-style: none
        }

        .disabled\:pointer-events-none:disabled {
            pointer-events: none
        }

        .disabled\:cursor-not-allowed:disabled {
            cursor: not-allowed
        }

        .disabled\:opacity-50:disabled {
            opacity: .5
        }

        .has-focus\:border-ring:has(:focus) {
            border-color: var(--primary)
        }

        .has-focus\:ring-\[3px\]:has(:focus) {
            --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .has-focus\:ring-ring\/50:has(:focus) {
            --tw-ring-color: var(--primary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .has-focus\:ring-ring\/50:has(:focus) {
                --tw-ring-color: color-mix(in oklab, var(--primary) 50%, transparent)
            }
        }

        .has-\[\:disabled\]\:opacity-50:has(:disabled) {
            opacity: .5
        }

        .aria-disabled\:pointer-events-none[aria-disabled=true] {
            pointer-events: none
        }

        .aria-disabled\:opacity-50[aria-disabled=true] {
            opacity: .5
        }

        .aria-selected\:text-muted-foreground[aria-selected=true] {
            color: var(--muted-foreground)
        }

        .data-\[active\=true\]\:font-medium[data-active=true] {
            --tw-font-weight: var(--font-weight-medium);
            font-weight: var(--font-weight-medium)
        }

        .data-\[disabled\]\:pointer-events-none[data-disabled] {
            pointer-events: none
        }

        .data-\[disabled\]\:opacity-50[data-disabled] {
            opacity: .5
        }

        .data-\[disabled\=true\]\:pointer-events-none[data-disabled=true] {
            pointer-events: none
        }

        .data-\[disabled\=true\]\:opacity-50[data-disabled=true] {
            opacity: .5
        }

        .data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end] {
            --tw-enter-translate-x: calc(52*var(--spacing))
        }

        .data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start] {
            --tw-enter-translate-x: calc(52*var(--spacing)*-1)
        }

        .data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end] {
            --tw-exit-translate-x: calc(52*var(--spacing))
        }

        .data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start] {
            --tw-exit-translate-x: calc(52*var(--spacing)*-1)
        }

        .data-\[motion\^\=from-\]\:animate-in[data-motion^=from-] {
            animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[motion\^\=from-\]\:fade-in[data-motion^=from-] {
            --tw-enter-opacity: 0
        }

        .data-\[motion\^\=to-\]\:animate-out[data-motion^=to-] {
            animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[motion\^\=to-\]\:fade-out[data-motion^=to-] {
            --tw-exit-opacity: 0
        }

        .data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical] {
            height: 1px
        }

        .data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical] {
            width: 100%
        }

        .data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical] {
            flex-direction: column
        }

        .data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after {
            content: var(--tw-content);
            left: 0
        }

        .data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after {
            content: var(--tw-content);
            height: var(--spacing)
        }

        .data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after {
            content: var(--tw-content);
            width: 100%
        }

        .data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after {
            content: var(--tw-content);
            --tw-translate-x: 0px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after {
            content: var(--tw-content);
            --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[placeholder\]\:text-muted-foreground[data-placeholder] {
            color: var(--muted-foreground)
        }

        .data-\[range-end\=true\]\:rounded-md[data-range-end=true] {
            border-radius: 6px
        }

        .data-\[range-end\=true\]\:bg-primary[data-range-end=true] {
            background-color: var(--primary)
        }

        .data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true] {
            color: var(--primary-foreground)
        }

        .data-\[range-middle\=true\]\:rounded-none[data-range-middle=true] {
            border-radius: 0
        }

        .data-\[range-middle\=true\]\:bg-accent[data-range-middle=true] {
            background-color: var(--secondary)
        }

        .data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true] {
            color: var(--primary)
        }

        .data-\[range-start\=true\]\:rounded-md[data-range-start=true] {
            border-radius: 6px
        }

        .data-\[range-start\=true\]\:bg-primary[data-range-start=true] {
            background-color: var(--primary)
        }

        .data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true] {
            color: var(--primary-foreground)
        }

        .data-\[selected-single\=true\]\:bg-primary[data-selected-single=true] {
            background-color: var(--primary)
        }

        .data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true] {
            color: var(--primary-foreground)
        }

        .data-\[selected\=true\]\:rounded-none[data-selected=true] {
            border-radius: 0
        }

        .data-\[selected\=true\]\:bg-accent[data-selected=true] {
            background-color: var(--secondary)
        }

        .data-\[selected\=true\]\:text-accent-foreground[data-selected=true] {
            color: var(--primary)
        }

        .data-\[side\=bottom\]\:translate-y-1[data-side=bottom] {
            --tw-translate-y: var(--spacing);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom] {
            --tw-enter-translate-y: calc(2*var(--spacing)*-1)
        }

        .data-\[side\=left\]\:-translate-x-1[data-side=left] {
            --tw-translate-x: calc(var(--spacing) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[side\=left\]\:slide-in-from-right-2[data-side=left] {
            --tw-enter-translate-x: calc(2*var(--spacing))
        }

        .data-\[side\=right\]\:translate-x-1[data-side=right] {
            --tw-translate-x: var(--spacing);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[side\=right\]\:slide-in-from-left-2[data-side=right] {
            --tw-enter-translate-x: calc(2*var(--spacing)*-1)
        }

        .data-\[side\=top\]\:-translate-y-1[data-side=top] {
            --tw-translate-y: calc(var(--spacing) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top] {
            --tw-enter-translate-y: calc(2*var(--spacing))
        }

        .data-\[state\=active\]\:bg-background[data-state=active] {
            background-color: var(--background)
        }

        .data-\[state\=active\]\:text-foreground[data-state=active] {
            color: var(--foreground)
        }

        .data-\[state\=active\]\:shadow[data-state=active] {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .data-\[state\=checked\]\:translate-x-4[data-state=checked] {
            --tw-translate-x: calc(var(--spacing) * 4);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[state\=checked\]\:bg-primary[data-state=checked] {
            background-color: var(--primary)
        }

        .data-\[state\=checked\]\:text-primary-foreground[data-state=checked] {
            color: var(--primary-foreground)
        }

        .data-\[state\=closed\]\:animate-accordion-up[data-state=closed] {
            animation: accordion-up var(--tw-animation-duration, var(--tw-duration, .2s))var(--tw-ease, ease-out)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=closed\]\:animate-out[data-state=closed] {
            animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=closed\]\:duration-300[data-state=closed] {
            --tw-duration: .3s;
            transition-duration: .3s
        }

        .data-\[state\=closed\]\:fade-out-0[data-state=closed] {
            --tw-exit-opacity: 0
        }

        .data-\[state\=closed\]\:zoom-out-95[data-state=closed] {
            --tw-exit-scale: .95
        }

        .data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed] {
            --tw-exit-translate-y: 100%
        }

        .data-\[state\=closed\]\:slide-out-to-left[data-state=closed] {
            --tw-exit-translate-x: -100%
        }

        .data-\[state\=closed\]\:slide-out-to-right[data-state=closed] {
            --tw-exit-translate-x: 100%
        }

        .data-\[state\=closed\]\:slide-out-to-top[data-state=closed] {
            --tw-exit-translate-y: -100%
        }

        .data-\[state\=hidden\]\:animate-out[data-state=hidden] {
            animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=hidden\]\:fade-out[data-state=hidden] {
            --tw-exit-opacity: 0
        }

        .data-\[state\=on\]\:bg-accent[data-state=on] {
            background-color: var(--secondary)
        }

        .data-\[state\=on\]\:text-accent-foreground[data-state=on] {
            color: var(--primary)
        }

        .data-\[state\=open\]\:animate-accordion-down[data-state=open] {
            animation: accordion-down var(--tw-animation-duration, var(--tw-duration, .2s))var(--tw-ease, ease-out)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=open\]\:animate-in[data-state=open] {
            animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=open\]\:bg-accent[data-state=open],
        .data-\[state\=open\]\:bg-accent\/50[data-state=open] {
            background-color: var(--secondary)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .data-\[state\=open\]\:bg-accent\/50[data-state=open] {
                background-color: color-mix(in oklab, var(--secondary) 50%, transparent)
            }
        }

        .data-\[state\=open\]\:bg-secondary[data-state=open] {
            background-color: var(--secondary)
        }

        .data-\[state\=open\]\:text-accent-foreground[data-state=open] {
            color: var(--primary)
        }

        .data-\[state\=open\]\:text-muted-foreground[data-state=open] {
            color: var(--muted-foreground)
        }

        .data-\[state\=open\]\:opacity-100[data-state=open] {
            opacity: 1
        }

        .data-\[state\=open\]\:duration-500[data-state=open] {
            --tw-duration: .5s;
            transition-duration: .5s
        }

        .data-\[state\=open\]\:fade-in-0[data-state=open] {
            --tw-enter-opacity: 0
        }

        .data-\[state\=open\]\:zoom-in-90[data-state=open] {
            --tw-enter-scale: .9
        }

        .data-\[state\=open\]\:zoom-in-95[data-state=open] {
            --tw-enter-scale: .95
        }

        .data-\[state\=open\]\:slide-in-from-bottom[data-state=open] {
            --tw-enter-translate-y: 100%
        }

        .data-\[state\=open\]\:slide-in-from-left[data-state=open] {
            --tw-enter-translate-x: -100%
        }

        .data-\[state\=open\]\:slide-in-from-right[data-state=open] {
            --tw-enter-translate-x: 100%
        }

        .data-\[state\=open\]\:slide-in-from-top[data-state=open] {
            --tw-enter-translate-y: -100%
        }

        @media (hover:hover) {
            .data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover {
                background-color: var(--secondary)
            }
        }

        .data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus,
        .data-\[state\=selected\]\:bg-muted[data-state=selected] {
            background-color: var(--secondary)
        }

        .data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked] {
            --tw-translate-x: 0px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .data-\[state\=unchecked\]\:bg-input[data-state=unchecked] {
            background-color: var(--border)
        }

        .data-\[state\=visible\]\:animate-in[data-state=visible] {
            animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none)
        }

        .data-\[state\=visible\]\:fade-in[data-state=visible] {
            --tw-enter-opacity: 0
        }

        @media (width>=40rem) {
            .sm\:mt-0 {
                margin-top: 0
            }

            .sm\:flex {
                display: flex
            }

            .sm\:max-w-sm {
                max-width: var(--container-sm)
            }

            .sm\:flex-row {
                flex-direction: row
            }

            .sm\:justify-end {
                justify-content: flex-end
            }

            .sm\:gap-2\.5 {
                gap: calc(var(--spacing) * 2.5)
            }

            :where(.sm\:space-x-2>:not(:last-child)) {
                --tw-space-x-reverse: 0;
                margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
                margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))
            }

            .sm\:rounded-lg {
                border-radius: 8px
            }

            .sm\:text-left {
                text-align: left
            }
        }

        @media (width>=48rem) {
            .md\:absolute {
                position: absolute
            }

            .md\:block {
                display: block
            }

            .md\:flex {
                display: flex
            }

            .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] {
                width: var(--radix-navigation-menu-viewport-width)
            }

            .md\:w-auto {
                width: auto
            }

            .md\:flex-row {
                flex-direction: row
            }

            .md\:text-sm {
                font-size: var(--text-sm);
                line-height: var(--tw-leading, var(--text-sm--line-height))
            }

            .md\:opacity-0 {
                opacity: 0
            }

            .md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*) {
                margin: calc(var(--spacing) * 2)
            }

            .md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*) {
                margin-left: 0
            }

            .md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*) {
                border-radius: var(--radius-xl)
            }

            .md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant=inset]~*) {
                --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
                box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
            }

            .md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state=collapsed]~*):is(:where(.peer)[data-variant=inset]~*) {
                margin-left: calc(var(--spacing) * 2)
            }
        }

        .after\:md\:hidden:after {
            content: var(--tw-content)
        }

        @media (width>=48rem) {
            .after\:md\:hidden:after {
                display: none
            }
        }

        .dark\:border-destructive:is(.dark *) {
            border-color: oklch(58% .22 25)
        }

        .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text {
            fill: var(--muted-foreground)
        }

        .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc] {
            stroke: var(--border)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc] {
                stroke: color-mix(in oklab, var(--border) 50%, transparent)
            }
        }

        .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor {
            stroke: var(--border)
        }

        .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff] {
            stroke: #0000
        }

        .\[\&_\.recharts-layer\]\:outline-none .recharts-layer {
            --tw-outline-style: none;
            outline-style: none
        }

        .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc] {
            stroke: var(--border)
        }

        .\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,
        .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor {
            fill: var(--secondary)
        }

        .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc] {
            stroke: var(--border)
        }

        .\[\&_\.recharts-sector\]\:outline-none .recharts-sector {
            --tw-outline-style: none;
            outline-style: none
        }

        .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff] {
            stroke: #0000
        }

        .\[\&_\.recharts-surface\]\:outline-none .recharts-surface {
            --tw-outline-style: none;
            outline-style: none
        }

        .\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
            padding-inline: calc(var(--spacing) * 2)
        }

        .\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
            padding-block: calc(var(--spacing) * 1.5)
        }

        .\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
            font-size: var(--text-xs);
            line-height: var(--tw-leading, var(--text-xs--line-height))
        }

        .\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
            --tw-font-weight: var(--font-weight-medium);
            font-weight: var(--font-weight-medium)
        }

        .\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
            color: var(--muted-foreground)
        }

        .\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
            padding-inline: calc(var(--spacing) * 2)
        }

        .\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group] {
            padding-top: 0
        }

        .\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
            height: calc(var(--spacing) * 5)
        }

        .\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
            width: calc(var(--spacing) * 5)
        }

        .\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
            height: calc(var(--spacing) * 12)
        }

        .\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
            padding-inline: calc(var(--spacing) * 2)
        }

        .\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
            padding-block: calc(var(--spacing) * 3)
        }

        .\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
            height: calc(var(--spacing) * 5)
        }

        .\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
            width: calc(var(--spacing) * 5)
        }

        .\[\&_p\]\:leading-relaxed p {
            --tw-leading: var(--leading-relaxed);
            line-height: var(--leading-relaxed)
        }

        .\[\&_svg\]\:pointer-events-none svg {
            pointer-events: none
        }

        .\[\&_svg\]\:size-4 svg {
            width: calc(var(--spacing) * 4);
            height: calc(var(--spacing) * 4)
        }

        .\[\&_svg\]\:shrink-0 svg {
            flex-shrink: 0
        }

        .\[\&_tr\]\:border-b tr {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 1px
        }

        .\[\&_tr\:last-child\]\:border-0 tr:last-child {
            border-style: var(--tw-border-style);
            border-width: 0
        }

        .\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button {
            border-top-left-radius: 6px;
            border-bottom-left-radius: 6px
        }

        .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) {
            padding-right: 0
        }

        :is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir=rtl], [dir=rtl] *) *):is(.rdp-button_next>svg),
        :is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir=rtl], [dir=rtl] *) *):is(.rdp-button_previous>svg) {
            rotate: 180deg
        }

        .\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button {
            border-top-right-radius: 6px;
            border-bottom-right-radius: 6px
        }

        .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox] {
            --tw-translate-y: 2px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .\[\&\>button\]\:hidden>button {
            display: none
        }

        .\[\&\>span\]\:line-clamp-1>span {
            -webkit-line-clamp: 1;
            -webkit-box-orient: vertical;
            display: -webkit-box;
            overflow: hidden
        }

        .\[\&\>span\]\:text-xs>span {
            font-size: var(--text-xs);
            line-height: var(--tw-leading, var(--text-xs--line-height))
        }

        .\[\&\>span\]\:opacity-70>span {
            opacity: .7
        }

        .\[\&\>span\:last-child\]\:truncate>span:last-child {
            text-overflow: ellipsis;
            white-space: nowrap;
            overflow: hidden
        }

        .\[\&\>svg\]\:absolute>svg {
            position: absolute
        }

        .\[\&\>svg\]\:top-4>svg {
            top: calc(var(--spacing) * 4)
        }

        .\[\&\>svg\]\:left-4>svg {
            left: calc(var(--spacing) * 4)
        }

        .\[\&\>svg\]\:size-3\.5>svg {
            width: calc(var(--spacing) * 3.5);
            height: calc(var(--spacing) * 3.5)
        }

        .\[\&\>svg\]\:size-4>svg {
            width: calc(var(--spacing) * 4);
            height: calc(var(--spacing) * 4)
        }

        .\[\&\>svg\]\:h-2\.5>svg {
            height: calc(var(--spacing) * 2.5)
        }

        .\[\&\>svg\]\:h-3>svg {
            height: calc(var(--spacing) * 3)
        }

        .\[\&\>svg\]\:h-3\.5>svg {
            height: calc(var(--spacing) * 3.5)
        }

        .\[\&\>svg\]\:w-2\.5>svg {
            width: calc(var(--spacing) * 2.5)
        }

        .\[\&\>svg\]\:w-3>svg {
            width: calc(var(--spacing) * 3)
        }

        .\[\&\>svg\]\:w-3\.5>svg {
            width: calc(var(--spacing) * 3.5)
        }

        .\[\&\>svg\]\:shrink-0>svg {
            flex-shrink: 0
        }

        .\[\&\>svg\]\:text-destructive>svg {
            color: oklch(58% .22 25)
        }

        .\[\&\>svg\]\:text-foreground>svg {
            color: var(--foreground)
        }

        .\[\&\>svg\]\:text-muted-foreground>svg {
            color: var(--muted-foreground)
        }

        .\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div {
            --tw-translate-y: -3px;
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .\[\&\>svg\~\*\]\:pl-7>svg~* {
            padding-left: calc(var(--spacing) * 7)
        }

        .\[\&\>tr\]\:last\:border-b-0>tr:last-child {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 0
        }

        .\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div {
            rotate: 90deg
        }

        .\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg {
            rotate: 180deg
        }

        [data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize {
            cursor: w-resize
        }

        [data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
            right: calc(var(--spacing) * -2)
        }

        [data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize,
        [data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize {
            cursor: e-resize
        }

        [data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
            left: calc(var(--spacing) * -2)
        }

        [data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
            cursor: w-resize
        }

        [data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,
        [data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent {
            background-color: #0000
        }
    }

    @property --tw-animation-delay {
        syntax: "*";
        inherits: false;
        initial-value: 0s
    }

    @property --tw-animation-direction {
        syntax: "*";
        inherits: false;
        initial-value: normal
    }

    @property --tw-animation-duration {
        syntax: "*";
        inherits: false
    }

    @property --tw-animation-fill-mode {
        syntax: "*";
        inherits: false;
        initial-value: none
    }

    @property --tw-animation-iteration-count {
        syntax: "*";
        inherits: false;
        initial-value: 1
    }

    @property --tw-enter-blur {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-enter-opacity {
        syntax: "*";
        inherits: false;
        initial-value: 1
    }

    @property --tw-enter-rotate {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-enter-scale {
        syntax: "*";
        inherits: false;
        initial-value: 1
    }

    @property --tw-enter-translate-x {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-enter-translate-y {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-exit-blur {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-exit-opacity {
        syntax: "*";
        inherits: false;
        initial-value: 1
    }

    @property --tw-exit-rotate {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-exit-scale {
        syntax: "*";
        inherits: false;
        initial-value: 1
    }

    @property --tw-exit-translate-x {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-exit-translate-y {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    :root {
        --background: oklch(98.8% .002 247);
        --foreground: oklch(25% .033 257);
        --card: oklch(100% 0 0);
        --primary: oklch(62.3% .214 259.8);
        --primary-foreground: oklch(100% 0 0);
        --secondary: oklch(95.6% .015 253);
        --muted-foreground: oklch(52% .025 257);
        --border: oklch(91.7% .012 251);
        --success: oklch(48% .105 167);
        --success-soft: oklch(95.1% .031 166);
        --hero-wash: linear-gradient(90deg, var(--background) 0%, var(--background) 27%, var(--background) 47%, transparent 63%)
    }

    @supports (color:color-mix(in lab, red, red)) {
        :root {
            --hero-wash: linear-gradient(90deg, var(--background) 0%, color-mix(in oklab, var(--background) 94%, transparent) 27%, color-mix(in oklab, var(--background) 40%, transparent) 47%, transparent 63%)
        }
    }

    :root {
        --shadow-soft: 0 8px 30px oklch(25% .033 257/.06)
    }

    .container {
        width: min(1184px, 100% - 64px);
        margin-inline: auto
    }

    .topbar {
        background: var(--secondary);
        color: var(--muted-foreground);
        font-size: 11px
    }

    .topbar .container {
        justify-content: space-between;
        align-items: center;
        height: 34px;
        display: flex
    }

    .topbar span,
    .topbar a {
        align-items: center;
        gap: 7px;
        display: flex
    }

    .topbar svg {
        width: 13px;
        height: 13px
    }

    .topbar-group {
        gap: 24px;
        display: flex
    }

    .header {
        background: var(--card);
        z-index: 30;
        border-bottom: 1px solid var(--border);
        position: sticky;
        top: 0
    }

    .header-inner {
        justify-content: space-between;
        align-items: center;
        gap: 24px;
        height: 85px;
        display: flex
    }

    .brand {
        flex-shrink: 0;
        align-items: center;
        gap: 10px;
        display: flex
    }

    .brand-mark {
        background: var(--primary);
        color: var(--primary-foreground);
        border-radius: 10px;
        place-items: center;
        width: 39px;
        height: 39px;
        display: grid
    }

    .brand-mark svg {
        stroke-width: 3.5px;
        width: 28px;
        height: 28px
    }

    .brand-name {
        font: 600 23px/1.05 var(--font-display)
    }

    .brand-name small {
        font: 500 9px/1.8 var(--font-sans);
        color: var(--muted-foreground);
        text-transform: uppercase;
        display: block
    }

    .desktop-nav {
        align-items: center;
        gap: 26px;
        font-size: 13px;
        font-weight: 500;
        display: flex
    }

    .desktop-nav a:hover,
    .desktop-nav a.active {
        color: var(--primary)
    }

    .menu-toggle {
        display: none
    }

    .hero {
        isolation: isolate;
        min-height: 570px;
        position: relative;
        overflow: hidden
    }

    .hero-image {
        object-fit: cover;
        object-position: center;
        z-index: -2;
        width: 100%;
        height: 100%;
        position: absolute;
        inset: 0
    }

    .hero:after {
        content: "";
        background: var(--hero-wash);
        z-index: -1;
        position: absolute;
        inset: 0
    }

    .hero-content {
        max-width: 560px;
        padding: 68px 0 55px
    }

    .eyebrow {
        color: var(--primary);
        text-transform: uppercase;
        align-items: center;
        gap: 8px;
        margin-bottom: 18px;
        font-size: 11px;
        font-weight: 600;
        display: flex
    }

    .eyebrow svg {
        width: 14px;
        height: 14px
    }

    .hero-label {
        background: var(--card);
        border: 1px solid var(--border);
        color: var(--muted-foreground);
        border-radius: 99px;
        align-items: center;
        gap: 8px;
        margin-bottom: 22px;
        padding: 7px 11px;
        font-size: 11px;
        display: inline-flex
    }

    .status-dot {
        background: var(--success);
        border-radius: 50%;
        width: 6px;
        height: 6px
    }

    .hero h1 {
        max-width: 550px;
        margin: 0 0 18px;
        font-size: 54px;
        font-weight: 500;
        line-height: 1.12
    }

    .hero h1 span {
        color: var(--primary)
    }

    .hero-description {
        max-width: 420px;
        color: var(--muted-foreground);
        margin-bottom: 26px;
        font-size: 15px;
        line-height: 1.8
    }

    .hero-actions {
        gap: 12px;
        display: flex
    }

    .hero-actions a {
        height: 46px;
        padding-inline: 20px;
        font-size: 12px
    }

    .hero-assurance {
        color: var(--muted-foreground);
        gap: 20px;
        margin-top: 27px;
        font-size: 10px;
        display: flex
    }

    .hero-assurance span {
        align-items: center;
        gap: 5px;
        display: flex
    }

    .hero-assurance svg {
        width: 13px;
        height: 13px;
        color: var(--success)
    }

    .care-note {
        background: var(--card);
        box-shadow: var(--shadow-soft);
        border-radius: 8px;
        align-items: center;
        gap: 12px;
        padding: 14px 19px;
        display: flex;
        position: absolute;
        bottom: 38px;
        right: max(32px, 50% - 592px)
    }

    .care-note strong {
        font-size: 12px;
        display: block
    }

    .care-note small {
        color: var(--muted-foreground);
        font-size: 10px
    }

    .icon-tile {
        background: var(--secondary);
        width: 42px;
        height: 42px;
        color: var(--primary);
        border-radius: 8px;
        flex-shrink: 0;
        place-items: center;
        display: grid
    }

    .icon-tile svg {
        width: 21px;
        height: 21px
    }

    .care-note .icon-tile {
        background: var(--success-soft);
        color: var(--success)
    }

    .stats {
        background: var(--card);
        border-block: 1px solid var(--border)
    }

    .stats-inner {
        grid-template-columns: repeat(4, 1fr);
        padding: 28px 0;
        display: grid
    }

    .stat {
        border-right: 1px solid var(--border);
        justify-content: center;
        align-items: center;
        gap: 15px;
        display: flex
    }

    .stat:last-child {
        border: 0
    }

    .stat strong {
        font: 500 29px var(--font-display)
    }

    .stat span {
        color: var(--muted-foreground);
        max-width: 86px;
        font-size: 11px;
        line-height: 1.5
    }

    .section {
        padding: 76px 0
    }

    .section-heading {
        justify-content: space-between;
        align-items: end;
        gap: 24px;
        margin-bottom: 30px;
        display: flex
    }

    .section h2 {
        margin: 0 0 12px;
        font-size: 35px;
        font-weight: 500;
        line-height: 1.2
    }

    .section-heading p,
    .section-copy {
        color: var(--muted-foreground);
        margin: 0;
        font-size: 14px;
        line-height: 1.8
    }

    .section-heading .eyebrow {
        margin-bottom: 12px
    }

    .service-tabs {
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 23px;
        display: flex
    }

    .service-tabs button {
        height: 36px;
        padding-inline: 17px;
        font-size: 12px
    }

    .services-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
        display: grid
    }

    .service-card {
        background: var(--card);
        border: 1px solid var(--border);
        border-radius: 8px;
        min-height: 206px;
        padding: 25px;
        transition: transform .2s, border-color .2s;
        position: relative
    }

    .service-card:hover {
        border-color: var(--primary);
        transform: translateY(-3px)
    }

    .service-card .icon-tile {
        margin-bottom: 20px
    }

    .service-card h3 {
        margin: 0 0 9px;
        font-size: 18px;
        font-weight: 500
    }

    .service-card p {
        color: var(--muted-foreground);
        max-width: 290px;
        margin: 0;
        font-size: 12px;
        line-height: 1.8
    }

    .card-arrow {
        color: var(--muted-foreground);
        width: 17px;
        position: absolute;
        top: 28px;
        right: 20px
    }

    .service-card.featured {
        background: var(--primary);
        border-color: var(--primary);
        color: var(--primary-foreground)
    }

    .service-card.featured p,
    .service-card.featured .card-arrow {
        color: var(--primary-foreground)
    }

    @supports (color:color-mix(in lab, red, red)) {

        .service-card.featured p,
        .service-card.featured .card-arrow {
            color: color-mix(in oklab, var(--primary-foreground) 85%, transparent)
        }
    }

    .service-card.featured .icon-tile {
        background: var(--primary-foreground)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .service-card.featured .icon-tile {
            background: color-mix(in oklab, var(--primary-foreground) 17%, transparent)
        }
    }

    .service-card.featured .icon-tile {
        color: var(--primary-foreground)
    }

    .about {
        background: var(--card)
    }

    .about-grid {
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 70px;
        display: grid
    }

    .about-visual {
        position: relative
    }

    .about-visual img {
        object-fit: cover;
        object-position: right;
        border-radius: 8px;
        width: 100%;
        height: 360px
    }

    .about-visual .image-caption {
        background: var(--card);
        border-radius: 6px;
        align-items: center;
        gap: 12px;
        padding: 16px;
        font-size: 12px;
        display: flex;
        position: absolute;
        bottom: 17px;
        left: 17px;
        right: 17px
    }

    .about-copy p {
        color: var(--muted-foreground);
        font-size: 14px;
        line-height: 1.85
    }

    .reason-grid {
        grid-template-columns: 1fr 1fr;
        gap: 18px 20px;
        margin: 25px 0;
        display: grid
    }

    .reason {
        align-items: center;
        gap: 8px;
        font-size: 12px;
        display: flex
    }

    .reason svg {
        width: 17px;
        color: var(--primary);
        flex-shrink: 0
    }

    .center-heading {
        text-align: center;
        max-width: 650px;
        margin: 0 auto 36px
    }

    .center-heading .eyebrow {
        justify-content: center
    }

    .process-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 35px;
        display: grid
    }

    .process-item {
        border-top: 1px solid var(--border);
        padding-top: 21px
    }

    .process-item .number {
        font: 500 30px var(--font-display);
        color: var(--primary)
    }

    .process-item h3 {
        margin: 18px 0 10px;
        font-size: 17px;
        font-weight: 500
    }

    .process-item p {
        color: var(--muted-foreground);
        font-size: 13px;
        line-height: 1.8
    }

    .equipment {
        background: var(--secondary)
    }

    .equipment-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 14px;
        display: grid
    }

    .equipment-item {
        background: var(--card);
        border: 1px solid var(--border);
        border-radius: 8px;
        align-items: center;
        gap: 14px;
        padding: 22px;
        font-size: 13px;
        display: flex
    }

    .equipment-item svg {
        color: var(--primary);
        flex-shrink: 0;
        width: 27px
    }

    .condition-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
        display: grid
    }

    .condition-list article {
        border-top: 1px solid var(--border);
        padding-top: 20px
    }

    .condition-list h3 {
        margin-bottom: 8px;
        font-size: 17px;
        font-weight: 500
    }

    .condition-list p {
        color: var(--muted-foreground);
        font-size: 13px;
        line-height: 1.8
    }

    .reviews {
        background: var(--card)
    }

    .reviews-grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        display: grid
    }

    .review {
        border: 1px solid var(--border);
        border-radius: 8px;
        padding: 30px
    }

    .stars {
        color: var(--primary);
        gap: 3px;
        display: flex
    }

    .stars svg {
        fill: currentColor;
        width: 14px;
        height: 14px
    }

    .review blockquote {
        margin: 20px 0 25px;
        font-size: 16px;
        line-height: 1.7
    }

    .review strong {
        font-size: 12px
    }

    .review small {
        color: var(--muted-foreground);
        margin-top: 6px;
        font-size: 11px;
        display: block
    }

    .faq-grid {
        grid-template-columns: .7fr 1.3fr;
        gap: 70px;
        display: grid
    }

    .faq-item {
        border-bottom: 1px solid var(--border)
    }

    .faq-question {
        white-space: normal;
        text-align: left;
        justify-content: space-between;
        width: 100%;
        height: auto;
        min-height: 65px;
        padding: 16px 0;
        font-size: 14px
    }

    .faq-question:hover {
        color: var(--primary);
        background: 0 0
    }

    .faq-item p {
        color: var(--muted-foreground);
        margin: 0 30px 20px 0;
        font-size: 13px;
        line-height: 1.8
    }

    .areas {
        border-block: 1px solid var(--border);
        background: var(--card);
        padding: 40px 0
    }

    .area-inner {
        justify-content: space-between;
        align-items: center;
        gap: 40px;
        display: flex
    }

    .area-inner h2 {
        font: 500 24px var(--font-display);
        margin: 0 0 10px
    }

    .area-inner p {
        color: var(--muted-foreground);
        font-size: 12px
    }

    .area-tags {
        flex-wrap: wrap;
        gap: 8px;
        max-width: 530px;
        display: flex
    }

    .area-tags span {
        border: 1px solid var(--border);
        border-radius: 4px;
        padding: 8px 12px;
        font-size: 11px
    }

    .contact-grid {
        grid-template-columns: 1fr 1fr;
        align-items: start;
        gap: 90px;
        display: grid
    }

    .contact-details {
        gap: 25px;
        margin-top: 30px;
        display: grid
    }

    .contact-detail {
        gap: 15px;
        font-size: 13px;
        line-height: 1.8;
        display: flex
    }

    .contact-detail p {
        color: var(--muted-foreground);
        overflow-wrap: anywhere;
        margin: 4px 0 0
    }

    .contact-detail a:hover {
        color: var(--primary)
    }

    .contact-form {
        background: var(--card);
        border: 1px solid var(--border);
        box-shadow: var(--shadow-soft);
        border-radius: 8px;
        padding: 30px
    }

    .contact-form h3 {
        margin: 0 0 8px;
        font-size: 23px;
        font-weight: 500
    }

    .contact-form>p {
        color: var(--muted-foreground);
        margin-bottom: 25px;
        font-size: 12px
    }

    .form-fields {
        grid-template-columns: 1fr 1fr;
        gap: 17px;
        margin-bottom: 22px;
        display: grid
    }

    .form-fields label {
        flex-direction: column;
        gap: 8px;
        font-size: 11px;
        font-weight: 500;
        display: flex
    }

    .form-fields input,
    .form-fields select {
        border: 1px solid var(--border);
        background: var(--background);
        width: 100%;
        min-width: 0;
        color: var(--foreground);
        outline-color: var(--primary);
        border-radius: 5px;
        padding: 12px;
        font-family: inherit;
        font-size: 12px
    }

    .form-fields .full {
        grid-column: 1/-1
    }

    .contact-form .privacy {
        justify-content: center;
        gap: 6px;
        margin: 13px 0 0;
        font-size: 10px;
        display: flex
    }

    .contact-form .privacy svg {
        width: 12px;
        height: 12px
    }

    .cta-band {
        background: var(--primary);
        color: var(--primary-foreground);
        padding: 44px 0
    }

    .cta-inner {
        justify-content: space-between;
        align-items: center;
        gap: 30px;
        display: flex
    }

    .cta-inner h2 {
        margin: 0 0 8px;
        font-size: 29px;
        font-weight: 500
    }

    .cta-inner p {
        opacity: .85;
        font-size: 13px
    }

    footer {
        background: var(--card);
        padding: 50px 0 20px
    }

    .footer-grid {
        grid-template-columns: 2fr 1fr 1fr 1.2fr;
        gap: 45px;
        display: grid
    }

    .footer-grid p {
        max-width: 260px;
        color: var(--muted-foreground);
        margin-top: 20px;
        font-size: 12px;
        line-height: 1.8
    }

    .footer-grid h4 {
        margin: 0 0 18px;
        font-size: 14px;
        font-weight: 500
    }

    .footer-grid a:not(.brand) {
        color: var(--muted-foreground);
        margin-bottom: 11px;
        font-size: 12px;
        display: block
    }

    .footer-grid a:hover {
        color: var(--primary)
    }

    .footer-bottom {
        border-top: 1px solid var(--border);
        color: var(--muted-foreground);
        justify-content: space-between;
        margin-top: 38px;
        padding-top: 20px;
        font-size: 10px;
        display: flex
    }

    .mobile-nav {
        display: none
    }

    @media (width>=1500px) {
        .hero {
            min-height: 620px
        }

        .hero-content {
            padding-top: 85px
        }
    }

    @media (width<=1100px) {
        .desktop-nav {
            gap: 15px;
            font-size: 12px
        }

        .header-inner {
            gap: 15px
        }

        .brand-name {
            font-size: 20px
        }

        .hero h1 {
            max-width: 480px;
            font-size: 48px
        }

        .hero-content {
            max-width: 490px
        }

        .hero-assurance {
            gap: 12px
        }

        .about-grid {
            gap: 35px
        }
    }

    @media (width<=800px) {
        .container {
            width: calc(100% - 40px)
        }

        .topbar-group:last-child a:last-child {
            display: none
        }

        .topbar-group {
            gap: 12px
        }

        .desktop-nav,
        .header-cta {
            display: none
        }

        .menu-toggle {
            display: flex
        }

        .header-inner {
            height: 72px
        }

        .mobile-nav {
            border-top: 1px solid var(--border);
            flex-direction: column;
            gap: 14px;
            padding: 10px 20px 20px;
            font-size: 14px;
            display: flex
        }

        .hero {
            min-height: 620px
        }

        .hero-image {
            object-position: 65% center;
            opacity: .42;
            height: 100%
        }

        .hero:after {
            background: linear-gradient(90deg, var(--background), var(--background) 50%, transparent)
        }

        @supports (color:color-mix(in lab, red, red)) {
            .hero:after {
                background: linear-gradient(90deg, var(--background), color-mix(in oklab, var(--background) 85%, transparent) 50%, transparent)
            }
        }

        .hero-content {
            max-width: 450px;
            padding: 55px 0 100px
        }

        .hero h1 {
            font-size: 46px
        }

        .care-note {
            bottom: 22px;
            right: 20px
        }

        .hero-assurance {
            flex-wrap: wrap;
            gap: 12px
        }

        .stats-inner {
            grid-template-columns: 1fr 1fr;
            gap: 25px 0
        }

        .stat:nth-child(2) {
            border: 0
        }

        .stat {
            justify-content: flex-start;
            padding-left: 20px
        }

        .stat strong {
            font-size: 26px
        }

        .section {
            padding: 55px 0
        }

        .section h2 {
            font-size: 30px
        }

        .section-heading {
            align-items: start
        }

        .section-heading>a {
            display: none
        }

        .services-grid {
            grid-template-columns: 1fr 1fr
        }

        .about-grid,
        .faq-grid,
        .contact-grid {
            grid-template-columns: 1fr;
            gap: 35px
        }

        .about-visual img {
            height: 340px
        }

        .process-grid,
        .equipment-grid {
            grid-template-columns: 1fr 1fr;
            gap: 20px
        }

        .condition-list {
            grid-template-columns: 1fr 1fr
        }

        .area-inner,
        .cta-inner {
            flex-direction: column;
            align-items: start;
            gap: 15px
        }

        .footer-grid {
            grid-template-columns: 1fr 1fr;
            gap: 30px
        }

        .reviews-grid {
            gap: 15px
        }
    }

    @media (width<=480px) {
        .topbar {
            font-size: 9px
        }

        .topbar-group:first-child span:last-child {
            display: none
        }

        .hero {
            min-height: 600px
        }

        .hero-content {
            padding-top: 40px
        }

        .hero h1 {
            font-size: 40px
        }

        .hero-description {
            max-width: 340px;
            font-size: 14px
        }

        .hero-actions {
            gap: 8px
        }

        .hero-actions a {
            padding-inline: 13px;
            font-size: 11px
        }

        .hero-assurance {
            max-width: 320px
        }

        .services-grid {
            grid-template-columns: 1fr
        }

        .service-card {
            min-height: 185px;
            padding: 23px
        }

        .service-tabs {
            gap: 6px
        }

        .service-tabs button {
            padding-inline: 10px;
            font-size: 10px
        }

        .stats-inner {
            padding: 23px 0
        }

        .stat {
            gap: 10px;
            padding-left: 8px
        }

        .stat span {
            font-size: 10px
        }

        .stat strong {
            font-size: 25px
        }

        .reviews-grid,
        .condition-list {
            grid-template-columns: 1fr
        }

        .equipment-grid {
            gap: 10px
        }

        .equipment-item {
            flex-direction: column;
            align-items: start;
            padding: 19px;
            font-size: 12px
        }

        .form-fields {
            grid-template-columns: 1fr
        }

        .contact-form {
            padding: 23px
        }

        .footer-grid {
            gap: 30px 20px
        }

        .footer-grid>div:first-child {
            grid-column: 1/-1
        }

        .footer-bottom {
            flex-direction: column;
            gap: 10px
        }
    }

    @media (prefers-reduced-motion:reduce) {
        html {
            scroll-behavior: auto
        }

        * {
            transition: none !important
        }
    }

    @property --tw-translate-x {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-translate-y {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-translate-z {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-rotate-x {
        syntax: "*";
        inherits: false
    }

    @property --tw-rotate-y {
        syntax: "*";
        inherits: false
    }

    @property --tw-rotate-z {
        syntax: "*";
        inherits: false
    }

    @property --tw-skew-x {
        syntax: "*";
        inherits: false
    }

    @property --tw-skew-y {
        syntax: "*";
        inherits: false
    }

    @property --tw-space-y-reverse {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-space-x-reverse {
        syntax: "*";
        inherits: false;
        initial-value: 0
    }

    @property --tw-border-style {
        syntax: "*";
        inherits: false;
        initial-value: solid
    }

    @property --tw-leading {
        syntax: "*";
        inherits: false
    }

    @property --tw-font-weight {
        syntax: "*";
        inherits: false
    }

    @property --tw-tracking {
        syntax: "*";
        inherits: false
    }

    @property --tw-ordinal {
        syntax: "*";
        inherits: false
    }

    @property --tw-slashed-zero {
        syntax: "*";
        inherits: false
    }

    @property --tw-numeric-figure {
        syntax: "*";
        inherits: false
    }

    @property --tw-numeric-spacing {
        syntax: "*";
        inherits: false
    }

    @property --tw-numeric-fraction {
        syntax: "*";
        inherits: false
    }

    @property --tw-shadow {
        syntax: "*";
        inherits: false;
        initial-value: 0 0 #0000
    }

    @property --tw-shadow-color {
        syntax: "*";
        inherits: false
    }

    @property --tw-shadow-alpha {
        syntax: "<percentage>";
        inherits: false;
        initial-value: 100%
    }

    @property --tw-inset-shadow {
        syntax: "*";
        inherits: false;
        initial-value: 0 0 #0000
    }

    @property --tw-inset-shadow-color {
        syntax: "*";
        inherits: false
    }

    @property --tw-inset-shadow-alpha {
        syntax: "<percentage>";
        inherits: false;
        initial-value: 100%
    }

    @property --tw-ring-color {
        syntax: "*";
        inherits: false
    }

    @property --tw-ring-shadow {
        syntax: "*";
        inherits: false;
        initial-value: 0 0 #0000
    }

    @property --tw-inset-ring-color {
        syntax: "*";
        inherits: false
    }

    @property --tw-inset-ring-shadow {
        syntax: "*";
        inherits: false;
        initial-value: 0 0 #0000
    }

    @property --tw-ring-inset {
        syntax: "*";
        inherits: false
    }

    @property --tw-ring-offset-width {
        syntax: "<length>";
        inherits: false;
        initial-value: 0
    }

    @property --tw-ring-offset-color {
        syntax: "*";
        inherits: false;
        initial-value: #fff
    }

    @property --tw-ring-offset-shadow {
        syntax: "*";
        inherits: false;
        initial-value: 0 0 #0000
    }

    @property --tw-outline-style {
        syntax: "*";
        inherits: false;
        initial-value: solid
    }

    @property --tw-blur {
        syntax: "*";
        inherits: false
    }

    @property --tw-brightness {
        syntax: "*";
        inherits: false
    }

    @property --tw-contrast {
        syntax: "*";
        inherits: false
    }

    @property --tw-grayscale {
        syntax: "*";
        inherits: false
    }

    @property --tw-hue-rotate {
        syntax: "*";
        inherits: false
    }

    @property --tw-invert {
        syntax: "*";
        inherits: false
    }

    @property --tw-opacity {
        syntax: "*";
        inherits: false
    }

    @property --tw-saturate {
        syntax: "*";
        inherits: false
    }

    @property --tw-sepia {
        syntax: "*";
        inherits: false
    }

    @property --tw-drop-shadow {
        syntax: "*";
        inherits: false
    }

    @property --tw-drop-shadow-color {
        syntax: "*";
        inherits: false
    }

    @property --tw-drop-shadow-alpha {
        syntax: "<percentage>";
        inherits: false;
        initial-value: 100%
    }

    @property --tw-drop-shadow-size {
        syntax: "*";
        inherits: false
    }

    @property --tw-duration {
        syntax: "*";
        inherits: false
    }

    @property --tw-ease {
        syntax: "*";
        inherits: false
    }

    @property --tw-content {
        syntax: "*";
        inherits: false;
        initial-value: ""
    }

    @keyframes pulse {
        50% {
            opacity: .5
        }
    }

    @keyframes enter {
        0% {
            opacity: var(--tw-enter-opacity, 1);
            transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0)scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1))rotate(var(--tw-enter-rotate, 0));
            filter: blur(var(--tw-enter-blur, 0))
        }
    }

    @keyframes exit {
        to {
            opacity: var(--tw-exit-opacity, 1);
            transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0)scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1))rotate(var(--tw-exit-rotate, 0));
            filter: blur(var(--tw-exit-blur, 0))
        }
    }

    @keyframes accordion-down {
        0% {
            height: 0
        }

        to {
            height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, var(--ngp-accordion-content-height, auto)))))
        }
    }

    @keyframes accordion-up {
        0% {
            height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, var(--ngp-accordion-content-height, auto)))))
        }

        to {
            height: 0
        }
    }

    @keyframes caret-blink {

        0%,
        70%,
        to {
            opacity: 1
        }

        20%,
        50% {
            opacity: 0
        }
    }


    .gallery-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 1.5rem;
        margin-top: 3rem;
    }

    .gallery-img {
        width: 100%;
        height: 400px;
        object-fit: cover;
        border-radius: var(--radius);
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s ease;
    }

    .gallery-img:hover {
        transform: scale(1.02);
    }

    /* Fix Elementor tab colors */
    .grace-healthcare-wrapper button[aria-selected="true"],
    .grace-healthcare-wrapper [role="tab"][aria-selected="true"] {
        background-color: var(--primary) !important;
        color: var(--primary-foreground) !important;
    }

    .grace-healthcare-wrapper button[aria-selected="false"],
    .grace-healthcare-wrapper [role="tab"][aria-selected="false"] {
        background-color: var(--background) !important;
        color: var(--foreground) !important;
    }/* End custom CSS */