@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+1f??
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+1f??
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+1f??
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+1f??
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff
}

@font-face {
    font-family: __Inter_8b3a0b;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Inter");
    unicode-range: u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd
}

@font-face {
    font-family: __Inter_Fallback_8b3a0b;
    src: local("Arial");
    ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}

.__className_8b3a0b {
    font-family: __Inter_8b3a0b,__Inter_Fallback_8b3a0b;
    font-style: normal
}

.__variable_8b3a0b {
    --font-body: "__Inter_8b3a0b","__Inter_Fallback_8b3a0b"
}

/*! tailwindcss v4.2.2 | 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)))) {
        *,::backdrop,:after,:before {
            --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-border-style: solid;
            --tw-gradient-position: initial;
            --tw-gradient-from: #0000;
            --tw-gradient-via: #0000;
            --tw-gradient-to: #0000;
            --tw-gradient-stops: initial;
            --tw-gradient-via-stops: initial;
            --tw-gradient-from-position: 0%;
            --tw-gradient-via-position: 50%;
            --tw-gradient-to-position: 100%;
            --tw-leading: initial;
            --tw-font-weight: initial;
            --tw-tracking: 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-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-backdrop-blur: initial;
            --tw-backdrop-brightness: initial;
            --tw-backdrop-contrast: initial;
            --tw-backdrop-grayscale: initial;
            --tw-backdrop-hue-rotate: initial;
            --tw-backdrop-invert: initial;
            --tw-backdrop-opacity: initial;
            --tw-backdrop-saturate: initial;
            --tw-backdrop-sepia: initial;
            --tw-duration: initial;
            --tw-scale-x: 1;
            --tw-scale-y: 1;
            --tw-scale-z: 1
        }
    }
}

@layer theme {
    :host,:root {
        --font-sans: ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
        --font-mono: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
        --color-black: #1a1e23;
        --color-white: #fff;
        --spacing: .25rem;
        --container-sm: 24rem;
        --container-xl: 36rem;
        --container-2xl: 42rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --container-7xl: 80rem;
        --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-2xl: 1.5rem;
        --text-2xl--line-height: calc(2 / 1.5);
        --text-3xl: 1.875rem;
        --text-3xl--line-height: calc(2.25 / 1.875);
        --text-4xl: 2.25rem;
        --text-4xl--line-height: calc(2.5 / 2.25);
        --text-5xl: 3rem;
        --text-5xl--line-height: 1;
        --text-6xl: 3.75rem;
        --text-6xl--line-height: 1;
        --text-7xl: 4.5rem;
        --text-7xl--line-height: 1;
        --font-weight-light: 300;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --font-weight-bold: 700;
        --leading-tight: 1.25;
        --radius-md: .375rem;
        --radius-lg: .5rem;
        --radius-2xl: 1rem;
        --blur-sm: 8px;
        --blur-lg: 16px;
        --blur-xl: 24px;
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4,0,.2,1);
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono);
        --color-charcoal: #c7ccd2;
        --color-charcoal-light: #9da4ac;
        --color-gold: #c7ccd2;
        --color-gold-dark: #9299a1;
        --color-cream: #080a0d;
        --color-cream-dark: #c7ccd2;
        --color-warm-white: #f5f7f9;
        --font-body: var(--font-body),ui-sans-serif,system-ui,sans-serif;
        --font-heading: "Gilroy",var(--font-body),ui-sans-serif,system-ui,sans-serif
    }
}

@layer base {
    *,::backdrop,:after,:before {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    :host,html {
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        line-height: 1.5;
        font-family: var(--default-font-family,ui-sans-serif,system-ui,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;
        text-decoration: inherit
    }

    b,strong {
        font-weight: bolder
    }

    code,kbd,pre,samp {
        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 {
        outline: auto
    }

    progress {
        vertical-align: baseline
    }

    summary {
        display: list-item
    }

    menu,ol,ul {
        list-style: none
    }

    audio,canvas,embed,iframe,img,object,svg,video {
        vertical-align: middle;
        display: block
    }

    img,video {
        max-width: 100%;
        height: auto
    }

    button,input,optgroup,select,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-selector-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-selector-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,::-webkit-datetime-edit-year-field {
        padding-block:0}

    ::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field {
        padding-block:0}

    ::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field {
        padding-block:0}

    ::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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-selector-button {
        appearance: button
    }

    ::-webkit-inner-spin-button,::-webkit-outer-spin-button {
        height: auto
    }

    [hidden]:where(:not([hidden=until-found])) {
        display:none!important
    }
}

@layer components;@layer utilities {
    .pointer-events-auto {
        pointer-events: auto
    }

    .pointer-events-none {
        pointer-events: none
    }

    .invisible {
        visibility: hidden
    }

    .visible {
        visibility: visible
    }

    .absolute {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .inset-0 {
        inset: calc(var(--spacing) * 0)
    }

    .inset-x-0 {
        inset-inline: calc(var(--spacing) * 0)
    }

    .start {
        inset-inline-start: var(--spacing)
    }

    .end {
        inset-inline-end: var(--spacing)
    }

    .top-0 {
        top: calc(var(--spacing) * 0)
    }

    .right-0 {
        right: calc(var(--spacing) * 0)
    }

    .right-3 {
        right: calc(var(--spacing) * 3)
    }

    .right-6 {
        right: calc(var(--spacing) * 6)
    }

    .bottom-0 {
        bottom: calc(var(--spacing) * 0)
    }

    .bottom-6 {
        bottom: calc(var(--spacing) * 6)
    }

    .left-3 {
        left: calc(var(--spacing) * 3)
    }

    .z-10 {
        z-index: 10
    }

    .z-50 {
        z-index: 50
    }

    .z-\[55\] {
        z-index: 55
    }

    .z-\[60\] {
        z-index: 60
    }

    .mx-auto {
        margin-inline:auto}

    .mt-2 {
        margin-top: calc(var(--spacing) * 2)
    }

    .mt-3 {
        margin-top: calc(var(--spacing) * 3)
    }

    .mt-4 {
        margin-top: calc(var(--spacing) * 4)
    }

    .mt-5 {
        margin-top: calc(var(--spacing) * 5)
    }

    .mt-6 {
        margin-top: calc(var(--spacing) * 6)
    }

    .mt-7 {
        margin-top: calc(var(--spacing) * 7)
    }

    .mt-8 {
        margin-top: calc(var(--spacing) * 8)
    }

    .mt-10 {
        margin-top: calc(var(--spacing) * 10)
    }

    .mt-\[10px\] {
        margin-top: 10px
    }

    .mb-2 {
        margin-bottom: calc(var(--spacing) * 2)
    }

    .mb-3 {
        margin-bottom: calc(var(--spacing) * 3)
    }

    .mb-4 {
        margin-bottom: calc(var(--spacing) * 4)
    }

    .mb-12 {
        margin-bottom: calc(var(--spacing) * 12)
    }

    .block {
        display: block
    }

    .flex {
        display: flex
    }

    .grid {
        display: grid
    }

    .hidden {
        display: none
    }

    .inline-flex {
        display: inline-flex
    }

    .table {
        display: table
    }

    .h-0\.5 {
        height: calc(var(--spacing) * .5)
    }

    .h-2 {
        height: calc(var(--spacing) * 2)
    }

    .h-4 {
        height: calc(var(--spacing) * 4)
    }

    .h-5 {
        height: calc(var(--spacing) * 5)
    }

    .h-6 {
        height: calc(var(--spacing) * 6)
    }

    .h-7 {
        height: calc(var(--spacing) * 7)
    }

    .h-8 {
        height: calc(var(--spacing) * 8)
    }

    .h-12 {
        height: calc(var(--spacing) * 12)
    }

    .h-14 {
        height: calc(var(--spacing) * 14)
    }

    .h-full {
        height: 100%
    }

    .min-h-11 {
        min-height: calc(var(--spacing) * 11)
    }

    .min-h-12 {
        min-height: calc(var(--spacing) * 12)
    }

    .min-h-\[60vh\] {
        min-height: 60vh
    }

    .min-h-screen {
        min-height: 100vh
    }

    .w-2 {
        width: calc(var(--spacing) * 2)
    }

    .w-4 {
        width: calc(var(--spacing) * 4)
    }

    .w-5 {
        width: calc(var(--spacing) * 5)
    }

    .w-6 {
        width: calc(var(--spacing) * 6)
    }

    .w-7 {
        width: calc(var(--spacing) * 7)
    }

    .w-10 {
        width: calc(var(--spacing) * 10)
    }

    .w-12 {
        width: calc(var(--spacing) * 12)
    }

    .w-14 {
        width: calc(var(--spacing) * 14)
    }

    .w-16 {
        width: calc(var(--spacing) * 16)
    }

    .w-full {
        width: 100%
    }

    .w-px {
        width: 1px
    }

    .max-w-2xl {
        max-width: var(--container-2xl)
    }

    .max-w-3xl {
        max-width: var(--container-3xl)
    }

    .max-w-4xl {
        max-width: var(--container-4xl)
    }

    .max-w-5xl {
        max-width: var(--container-5xl)
    }

    .max-w-7xl {
        max-width: var(--container-7xl)
    }

    .max-w-sm {
        max-width: var(--container-sm)
    }

    .max-w-xl {
        max-width: var(--container-xl)
    }

    .min-w-0 {
        min-width: calc(var(--spacing) * 0)
    }

    .min-w-\[180px\] {
        min-width: 180px
    }

    .min-w-\[220px\] {
        min-width: 220px
    }

    .flex-1 {
        flex: 1
    }

    .flex-shrink {
        flex-shrink: 1
    }

    .shrink-0 {
        flex-shrink: 0
    }

    .border-collapse {
        border-collapse: collapse
    }

    .translate-x-0 {
        --tw-translate-x: calc(var(--spacing) * 0)
    }

    .translate-x-0,.translate-x-full {
        translate: var(--tw-translate-x) var(--tw-translate-y)
    }

    .translate-x-full {
        --tw-translate-x: 100%
    }

    .transform {
        transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)
    }

    .cursor-pointer {
        cursor: pointer
    }

    .resize {
        resize: both
    }

    .flex-col {
        flex-direction: column
    }

    .flex-wrap {
        flex-wrap: wrap
    }

    .items-center {
        align-items: center
    }

    .items-start {
        align-items: flex-start
    }

    .justify-between {
        justify-content: space-between
    }

    .justify-center {
        justify-content: center
    }

    .justify-end {
        justify-content: flex-end
    }

    .gap-2 {
        gap: calc(var(--spacing) * 2)
    }

    .gap-3 {
        gap: calc(var(--spacing) * 3)
    }

    .gap-4 {
        gap: calc(var(--spacing) * 4)
    }

    .gap-5 {
        gap: calc(var(--spacing) * 5)
    }

    .gap-6 {
        gap: calc(var(--spacing) * 6)
    }

    .gap-8 {
        gap: calc(var(--spacing) * 8)
    }

    .gap-10 {
        gap: calc(var(--spacing) * 10)
    }

    .gap-12 {
        gap: calc(var(--spacing) * 12)
    }

    :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-y-3>:not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))
    }

    :where(.space-y-4>:not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))
    }

    :where(.space-y-5>:not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))
    }

    .overflow-hidden {
        overflow: hidden
    }

    .overflow-y-auto {
        overflow-y: auto
    }

    .rounded-2xl {
        border-radius: var(--radius-2xl)
    }

    .rounded-\[1\.6rem\] {
        border-radius: 1.6rem
    }

    .rounded-\[1\.9rem\] {
        border-radius: 1.9rem
    }

    .rounded-\[1\.75rem\] {
        border-radius: 1.75rem
    }

    .rounded-\[2\.2rem\] {
        border-radius: 2.2rem
    }

    .rounded-\[2rem\] {
        border-radius: 2rem
    }

    .rounded-full {
        border-radius: 3.40282e+38px
    }

    .rounded-lg {
        border-radius: var(--radius-lg)
    }

    .rounded-md {
        border-radius: var(--radius-md)
    }

    .border {
        border-style: var(--tw-border-style);
        border-width: 1px
    }

    .border-t {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px
    }

    .border-\[\#2F6F5E\] {
        border-color: #2f6f5e
    }

    .border-\[\#2F3841\]\/10 {
        border-color: oklab(33.6049% -.00736512 -.0186236/.1)
    }

    .border-\[\#2F3841\]\/12 {
        border-color: oklab(33.6049% -.00736512 -.0186236/.12)
    }

    .border-\[\#285B4D\] {
        border-color: #285b4d
    }

    .border-\[\#D1BE98\] {
        border-color: #c7ccd2
    }

    .border-black\/8 {
        border-color: #1a1e2314
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-black\/8 {
            border-color:color-mix(in oklab,var(--color-black) 8%,transparent)
        }
    }

    .border-gold {
        border-color: var(--color-gold)
    }

    .border-gold\/80 {
        border-color: #2f3841cc
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-gold\/80 {
            border-color:color-mix(in oklab,var(--color-gold) 80%,transparent)
        }
    }

    .border-white\/8 {
        border-color: #ffffff14
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-white\/8 {
            border-color:color-mix(in oklab,var(--color-white) 8%,transparent)
        }
    }

    .border-white\/10 {
        border-color: #ffffff1a
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-white\/10 {
            border-color:color-mix(in oklab,var(--color-white) 10%,transparent)
        }
    }

    .border-white\/12 {
        border-color: #ffffff1f
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-white\/12 {
            border-color:color-mix(in oklab,var(--color-white) 12%,transparent)
        }
    }

    .border-white\/18 {
        border-color: #ffffff2e
    }

    @supports (color: color-mix(in lab,red,red)) {
        .border-white\/18 {
            border-color:color-mix(in oklab,var(--color-white) 18%,transparent)
        }
    }

    .bg-\[\#1A1E23\] {
        background-color: #1a1e23
    }

    .bg-\[\#2F6F5E\] {
        background-color: #2f6f5e
    }

    .bg-\[\#151A20\] {
        background-color: #151a20
    }

    .bg-\[\#11161B\] {
        background-color: #11161b
    }

    .bg-\[\#11161B\]\/82 {
        background-color: oklab(19.7295% -.00466139 -.0118163/.82)
    }

    .bg-\[\#11161B\]\/94 {
        background-color: oklab(19.7295% -.00466139 -.0118163/.94)
    }

    .bg-\[\#D1BE98\] {
        background-color: #c7ccd2
    }

    .bg-\[\#F5F3EE\] {
        background-color: #f5f3ee
    }

    .bg-\[\#F8F6F1\] {
        background-color: #f8f6f1
    }

    .bg-black\/18 {
        background-color: #1a1e232e
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-black\/18 {
            background-color:color-mix(in oklab,var(--color-black) 18%,transparent)
        }
    }

    .bg-black\/55 {
        background-color: #1a1e238c
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-black\/55 {
            background-color:color-mix(in oklab,var(--color-black) 55%,transparent)
        }
    }

    .bg-charcoal {
        background-color: var(--color-charcoal)
    }

    .bg-cream {
        background-color: var(--color-cream)
    }

    .bg-gold {
        background-color: var(--color-gold)
    }

    .bg-white {
        background-color: var(--color-white)
    }

    .bg-white\/5 {
        background-color: #ffffff0d
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/5 {
            background-color:color-mix(in oklab,var(--color-white) 5%,transparent)
        }
    }

    .bg-white\/6 {
        background-color: #ffffff0f
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/6 {
            background-color:color-mix(in oklab,var(--color-white) 6%,transparent)
        }
    }

    .bg-white\/8 {
        background-color: #ffffff14
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/8 {
            background-color:color-mix(in oklab,var(--color-white) 8%,transparent)
        }
    }

    .bg-white\/10 {
        background-color: #ffffff1a
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/10 {
            background-color:color-mix(in oklab,var(--color-white) 10%,transparent)
        }
    }

    .bg-white\/92 {
        background-color: #ffffffeb
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/92 {
            background-color:color-mix(in oklab,var(--color-white) 92%,transparent)
        }
    }

    .bg-white\/\[0\.04\] {
        background-color: #ffffff0a
    }

    @supports (color: color-mix(in lab,red,red)) {
        .bg-white\/\[0\.04\] {
            background-color:color-mix(in oklab,var(--color-white) 4%,transparent)
        }
    }

    .bg-gradient-to-b {
        --tw-gradient-position: to bottom in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops))
    }

    .bg-\[linear-gradient\(135deg\,rgba\(255\,255\,255\,0\.07\)\,rgba\(255\,255\,255\,0\.03\)\)\] {
        background-image: linear-gradient(135deg,#ffffff12,#ffffff08)
    }

    .bg-\[linear-gradient\(180deg\,rgba\(11\,15\,19\,0\.62\)\,rgba\(11\,15\,19\,0\.84\)_55\%\,rgba\(11\,15\,19\,0\.98\)\)\] {
        background-image: linear-gradient(#0b0f139e,#0b0f13d6 55%,#0b0f13fa)
    }

    .from-black\/70 {
        --tw-gradient-from: #1a1e23b3
    }

    @supports (color: color-mix(in lab,red,red)) {
        .from-black\/70 {
            --tw-gradient-from:color-mix(in oklab,var(--color-black) 70%,transparent)
        }
    }

    .from-black\/70 {
        --tw-gradient-stops: var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))
    }

    .via-black\/60 {
        --tw-gradient-via: #1a1e2399
    }

    @supports (color: color-mix(in lab,red,red)) {
        .via-black\/60 {
            --tw-gradient-via:color-mix(in oklab,var(--color-black) 60%,transparent)
        }
    }

    .via-black\/60 {
        --tw-gradient-via-stops: var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);
        --tw-gradient-stops: var(--tw-gradient-via-stops)
    }

    .to-\[\#1A1E23\] {
        --tw-gradient-to: #1a1e23;
        --tw-gradient-stops: var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))
    }

    .object-cover {
        object-fit: cover
    }

    .p-2 {
        padding: calc(var(--spacing) * 2)
    }

    .p-5 {
        padding: calc(var(--spacing) * 5)
    }

    .p-6 {
        padding: calc(var(--spacing) * 6)
    }

    .p-7 {
        padding: calc(var(--spacing) * 7)
    }

    .p-8 {
        padding: calc(var(--spacing) * 8)
    }

    .px-3 {
        padding-inline:calc(var(--spacing) * 3)}

    .px-4 {
        padding-inline: calc(var(--spacing) * 4)
    }

    .px-5 {
        padding-inline:calc(var(--spacing) * 5)}

    .px-6 {
        padding-inline: calc(var(--spacing) * 6)
    }

    .px-8 {
        padding-inline:calc(var(--spacing) * 8)}

    .py-1\.5 {
        padding-block: calc(var(--spacing) * 1.5)
    }

    .py-2 {
        padding-block:calc(var(--spacing) * 2)}

    .py-2\.5 {
        padding-block: calc(var(--spacing) * 2.5)
    }

    .py-3 {
        padding-block:calc(var(--spacing) * 3)}

    .py-4 {
        padding-block: calc(var(--spacing) * 4)
    }

    .py-10 {
        padding-block:calc(var(--spacing) * 10)}

    .py-16 {
        padding-block: calc(var(--spacing) * 16)
    }

    .py-24 {
        padding-block:calc(var(--spacing) * 24)}

    .pt-6 {
        padding-top: calc(var(--spacing) * 6)
    }

    .pt-24 {
        padding-top: calc(var(--spacing) * 24)
    }

    .pt-32 {
        padding-top: calc(var(--spacing) * 32)
    }

    .pb-8 {
        padding-bottom: calc(var(--spacing) * 8)
    }

    .pb-18 {
        padding-bottom: calc(var(--spacing) * 18)
    }

    .pb-20 {
        padding-bottom: calc(var(--spacing) * 20)
    }

    .text-center {
        text-align: center
    }

    .font-heading {
        font-family: var(--font-heading)
    }

    .text-2xl {
        font-size: var(--text-2xl);
        line-height: var(--tw-leading,var(--text-2xl--line-height))
    }

    .text-3xl {
        font-size: var(--text-3xl);
        line-height: var(--tw-leading,var(--text-3xl--line-height))
    }

    .text-4xl {
        font-size: var(--text-4xl);
        line-height: var(--tw-leading,var(--text-4xl--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-\[10px\] {
        font-size: 10px
    }

    .text-\[11px\] {
        font-size: 11px
    }

    .leading-6 {
        --tw-leading: calc(var(--spacing) * 6);
        line-height: calc(var(--spacing) * 6)
    }

    .leading-7 {
        --tw-leading: calc(var(--spacing) * 7);
        line-height: calc(var(--spacing) * 7)
    }

    .leading-8 {
        --tw-leading: calc(var(--spacing) * 8);
        line-height: calc(var(--spacing) * 8)
    }

    .leading-none {
        --tw-leading: 1;
        line-height: 1
    }

    .leading-tight {
        --tw-leading: var(--leading-tight);
        line-height: var(--leading-tight)
    }

    .font-bold {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold)
    }

    .font-light {
        --tw-font-weight: var(--font-weight-light);
        font-weight: var(--font-weight-light)
    }

    .font-medium {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }

    .font-semibold {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }

    .tracking-\[0\.01em\] {
        --tw-tracking: .01em;
        letter-spacing: .01em
    }

    .tracking-\[0\.2em\] {
        --tw-tracking: .2em;
        letter-spacing: .2em
    }

    .tracking-\[0\.3em\] {
        --tw-tracking: .3em;
        letter-spacing: .3em
    }

    .tracking-\[0\.5em\] {
        --tw-tracking: .5em;
        letter-spacing: .5em
    }

    .tracking-\[0\.7em\] {
        --tw-tracking: .7em;
        letter-spacing: .7em
    }

    .tracking-\[0\.24em\] {
        --tw-tracking: .24em;
        letter-spacing: .24em
    }

    .tracking-\[0\.28em\] {
        --tw-tracking: .28em;
        letter-spacing: .28em
    }

    .tracking-\[0\.34em\] {
        --tw-tracking: .34em;
        letter-spacing: .34em
    }

    .tracking-\[0\.42em\] {
        --tw-tracking: .42em;
        letter-spacing: .42em
    }

    .tracking-\[0\.44em\] {
        --tw-tracking: .44em;
        letter-spacing: .44em
    }

    .tracking-\[0\.72em\] {
        --tw-tracking: .72em;
        letter-spacing: .72em
    }

    .whitespace-normal {
        white-space: normal
    }

    .text-\[\#1A1E23\] {
        color: #1a1e23
    }

    .text-\[\#4A4A4A\] {
        color: #4a4a4a
    }

    .text-\[\#8B3A3A\] {
        color: #8b3a3a
    }

    .text-\[\#11161B\] {
        color: #11161b
    }

    .text-\[\#E8E6E1\] {
        color: #c7ccd2
    }

    .text-charcoal {
        color: var(--color-charcoal)
    }

    .text-charcoal-light {
        color: var(--color-charcoal-light)
    }

    .text-cream-dark {
        color: var(--color-cream-dark)
    }

    .text-gold {
        color: var(--color-gold)
    }

    .text-warm-white {
        color: var(--color-warm-white)
    }

    .text-white {
        color: var(--color-white)
    }

    .text-white\/50 {
        color: #ffffff80
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/50 {
            color:color-mix(in oklab,var(--color-white) 50%,transparent)
        }
    }

    .text-white\/52 {
        color: #ffffff85
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/52 {
            color:color-mix(in oklab,var(--color-white) 52%,transparent)
        }
    }

    .text-white\/55 {
        color: #ffffff8c
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/55 {
            color:color-mix(in oklab,var(--color-white) 55%,transparent)
        }
    }

    .text-white\/56 {
        color: #ffffff8f
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/56 {
            color:color-mix(in oklab,var(--color-white) 56%,transparent)
        }
    }

    .text-white\/60 {
        color: #fff9
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/60 {
            color:color-mix(in oklab,var(--color-white) 60%,transparent)
        }
    }

    .text-white\/68 {
        color: #ffffffad
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/68 {
            color:color-mix(in oklab,var(--color-white) 68%,transparent)
        }
    }

    .text-white\/70 {
        color: #ffffffb3
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/70 {
            color:color-mix(in oklab,var(--color-white) 70%,transparent)
        }
    }

    .text-white\/72 {
        color: #ffffffb8
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/72 {
            color:color-mix(in oklab,var(--color-white) 72%,transparent)
        }
    }

    .text-white\/74 {
        color: #ffffffbd
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/74 {
            color:color-mix(in oklab,var(--color-white) 74%,transparent)
        }
    }

    .text-white\/78 {
        color: #ffffffc7
    }

    @supports (color: color-mix(in lab,red,red)) {
        .text-white\/78 {
            color:color-mix(in oklab,var(--color-white) 78%,transparent)
        }
    }

    .uppercase {
        text-transform: uppercase
    }

    .underline {
        text-decoration-line: underline
    }

    .opacity-0 {
        opacity: 0
    }

    .opacity-28 {
        opacity: .28
    }

    .opacity-100 {
        opacity: 1
    }

    .opacity-\[0\.08\] {
        opacity: .08
    }

    .opacity-\[0\.12\] {
        opacity: .12
    }

    .opacity-\[0\.14\] {
        opacity: .14
    }

    .shadow-2xl {
        --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color,#00000040)
    }

    .shadow-2xl,.shadow-\[0_14px_34px_rgba\(0\,0\,0\,0\.16\)\] {
        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_14px_34px_rgba\(0\,0\,0\,0\.16\)\] {
        --tw-shadow: 0 14px 34px var(--tw-shadow-color,#00000029)
    }

    .shadow-\[0_14px_34px_rgba\(24\,50\,43\,0\.22\)\] {
        --tw-shadow: 0 14px 34px var(--tw-shadow-color,#18322b38)
    }

    .shadow-\[0_14px_34px_rgba\(24\,50\,43\,0\.22\)\],.shadow-\[0_14px_36px_rgba\(47\,56\,65\,0\.2\)\] {
        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_14px_36px_rgba\(47\,56\,65\,0\.2\)\] {
        --tw-shadow: 0 14px 36px var(--tw-shadow-color,#2f384133)
    }

    .shadow-\[0_14px_36px_rgba\(47\,56\,65\,0\.12\)\] {
        --tw-shadow: 0 14px 36px var(--tw-shadow-color,#2f38411f)
    }

    .shadow-\[0_14px_36px_rgba\(47\,56\,65\,0\.12\)\],.shadow-\[0_16px_40px_rgba\(0\,0\,0\,0\.18\)\] {
        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_16px_40px_rgba\(0\,0\,0\,0\.18\)\] {
        --tw-shadow: 0 16px 40px var(--tw-shadow-color,#0000002e)
    }

    .shadow-\[0_18px_40px_rgba\(24\,50\,43\,0\.3\)\] {
        --tw-shadow: 0 18px 40px var(--tw-shadow-color,#18322b4d)
    }

    .shadow-\[0_18px_40px_rgba\(24\,50\,43\,0\.3\)\],.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.28\)\] {
        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_18px_50px_rgba\(0\,0\,0\,0\.28\)\] {
        --tw-shadow: 0 18px 50px var(--tw-shadow-color,#00000047)
    }

    .shadow-\[0_18px_50px_rgba\(26\,26\,26\,0\.05\)\] {
        --tw-shadow: 0 18px 50px var(--tw-shadow-color,#1a1a1a0d)
    }

    .shadow-\[0_18px_50px_rgba\(26\,26\,26\,0\.05\)\],.shadow-\[0_20px_60px_rgba\(26\,26\,26\,0\.05\)\] {
        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_20px_60px_rgba\(26\,26\,26\,0\.05\)\] {
        --tw-shadow: 0 20px 60px var(--tw-shadow-color,#1a1a1a0d)
    }

    .shadow-\[0_20px_60px_rgba\(26\,26\,26\,0\.06\)\] {
        --tw-shadow: 0 20px 60px var(--tw-shadow-color,#1a1a1a0f)
    }

    .shadow-\[0_20px_60px_rgba\(26\,26\,26\,0\.06\)\],.shadow-\[0_22px_70px_rgba\(26\,26\,26\,0\.06\)\] {
        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_22px_70px_rgba\(26\,26\,26\,0\.06\)\] {
        --tw-shadow: 0 22px 70px var(--tw-shadow-color,#1a1a1a0f)
    }

    .shadow-\[0_22px_70px_rgba\(26\,26\,26\,0\.07\)\] {
        --tw-shadow: 0 22px 70px var(--tw-shadow-color,#1a1a1a12)
    }

    .shadow-\[0_22px_70px_rgba\(26\,26\,26\,0\.07\)\],.shadow-\[0_24px_70px_rgba\(26\,26\,26\,0\.08\)\] {
        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_24px_70px_rgba\(26\,26\,26\,0\.08\)\] {
        --tw-shadow: 0 24px 70px var(--tw-shadow-color,#1a1a1a14)
    }

    .shadow-\[0_24px_80px_rgba\(26\,26\,26\,0\.08\)\] {
        --tw-shadow: 0 24px 80px var(--tw-shadow-color,#1a1a1a14)
    }

    .shadow-\[0_24px_80px_rgba\(26\,26\,26\,0\.08\)\],.shadow-\[0_28px_90px_rgba\(0\,0\,0\,0\.18\)\] {
        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_28px_90px_rgba\(0\,0\,0\,0\.18\)\] {
        --tw-shadow: 0 28px 90px var(--tw-shadow-color,#0000002e)
    }

    .shadow-\[0_30px_80px_rgba\(26\,26\,26\,0\.16\)\] {
        --tw-shadow: 0 30px 80px var(--tw-shadow-color,#1a1a1a29);
        box-shadow: var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)
    }

    .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,)
    }

    .backdrop-blur-lg {
        --tw-backdrop-blur: blur(var(--blur-lg))
    }

    .backdrop-blur-lg,.backdrop-blur-sm {
        -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)
    }

    .backdrop-blur-sm {
        --tw-backdrop-blur: blur(var(--blur-sm))
    }

    .backdrop-blur-xl {
        --tw-backdrop-blur: blur(var(--blur-xl))
    }

    .backdrop-blur-xl,.backdrop-filter {
        -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)
    }

    .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-\[background-color\,border-color\,color\,box-shadow\,transform\] {
        transition-property: background-color,border-color,color,box-shadow,transform;
        transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
        transition-duration: var(--tw-duration,var(--default-transition-duration))
    }

    .transition-\[background-color\,border-color\,transform\,box-shadow\] {
        transition-property: background-color,border-color,transform,box-shadow;
        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
    }

    .outline-none {
        --tw-outline-style: none;
        outline-style: none
    }

    @media (hover: hover) {
        .hover\:-translate-y-0\.5:hover {
            --tw-translate-y:calc(var(--spacing) * -.5);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .hover\:-translate-y-1:hover {
            --tw-translate-y: calc(var(--spacing) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .hover\:scale-110:hover {
            --tw-scale-x: 110%;
            --tw-scale-y: 110%;
            --tw-scale-z: 110%;
            scale: var(--tw-scale-x) var(--tw-scale-y)
        }

        .hover\:border-\[\#214A3E\]:hover {
            border-color: #214a3e
        }

        .hover\:border-\[\#285B4D\]:hover {
            border-color: #285b4d
        }

        .hover\:border-\[\#C3AE84\]:hover {
            border-color: #e1e4e7
        }

        .hover\:border-gold-dark:hover {
            border-color: var(--color-gold-dark)
        }

        .hover\:border-white\/16:hover {
            border-color: #ffffff29
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:border-white\/16:hover {
                border-color:color-mix(in oklab,var(--color-white) 16%,transparent)
            }
        }

        .hover\:border-white\/18:hover {
            border-color: #ffffff2e
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:border-white\/18:hover {
                border-color:color-mix(in oklab,var(--color-white) 18%,transparent)
            }
        }

        .hover\:border-white\/22:hover {
            border-color: #ffffff38
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:border-white\/22:hover {
                border-color:color-mix(in oklab,var(--color-white) 22%,transparent)
            }
        }

        .hover\:border-white\/24:hover {
            border-color: #ffffff3d
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:border-white\/24:hover {
                border-color:color-mix(in oklab,var(--color-white) 24%,transparent)
            }
        }

        .hover\:border-white\/36:hover {
            border-color: #ffffff5c
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:border-white\/36:hover {
                border-color:color-mix(in oklab,var(--color-white) 36%,transparent)
            }
        }

        .hover\:bg-\[\#285B4D\]:hover {
            background-color: #285b4d
        }

        .hover\:bg-\[\#C3AE84\]:hover {
            background-color: #e1e4e7
        }

        .hover\:bg-gold:hover {
            background-color: var(--color-gold)
        }

        .hover\:bg-gold-dark:hover {
            background-color: var(--color-gold-dark)
        }

        .hover\:bg-white\/6:hover {
            background-color: #ffffff0f
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:bg-white\/6:hover {
                background-color:color-mix(in oklab,var(--color-white) 6%,transparent)
            }
        }

        .hover\:bg-white\/10:hover {
            background-color: #ffffff1a
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:bg-white\/10:hover {
                background-color:color-mix(in oklab,var(--color-white) 10%,transparent)
            }
        }

        .hover\:bg-white\/12:hover {
            background-color: #ffffff1f
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:bg-white\/12:hover {
                background-color:color-mix(in oklab,var(--color-white) 12%,transparent)
            }
        }

        .hover\:bg-white\/14:hover {
            background-color: #ffffff24
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:bg-white\/14:hover {
                background-color:color-mix(in oklab,var(--color-white) 14%,transparent)
            }
        }

        .hover\:bg-white\/\[0\.07\]:hover {
            background-color: #ffffff12
        }

        @supports (color: color-mix(in lab,red,red)) {
            .hover\:bg-white\/\[0\.07\]:hover {
                background-color:color-mix(in oklab,var(--color-white) 7%,transparent)
            }
        }

        .hover\:text-white:hover {
            color: var(--color-white)
        }

        .hover\:underline:hover {
            text-decoration-line: underline
        }

        .hover\:shadow-\[0_22px_48px_rgba\(24\,50\,43\,0\.34\)\]:hover {
            --tw-shadow: 0 22px 48px var(--tw-shadow-color,#18322b57);
            box-shadow: var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)
        }
    }

    .focus\\:border-\[\#2F3841\]:focus {
        border-color:#2f3841
    }

    .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-\[\#2F3841\]\/10:focus {
        --tw-ring-color:oklab(33.6049% -.00736512 -.0186236/.1)
    }

    .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-gold:focus-visible {
        --tw-ring-color:var(--color-gold)
    }

    .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-warm-white:focus-visible {
        --tw-ring-offset-color:var(--color-warm-white)
    }

    .focus-visible\\:outline-none:focus-visible {
        --tw-outline-style:none;
        outline-style: none
    }

    .active\\:scale-95:active {
        --tw-scale-x:95%;
        --tw-scale-y: 95%;
        --tw-scale-z: 95%;
        scale: var(--tw-scale-x) var(--tw-scale-y)
    }

    .active\\:border-\[\#214A3E\]:active {
        border-color:#214a3e
    }

    .active\\:border-\[\#B59F74\]:active {
        border-color:#a6adb5
    }

    .active\\:bg-\[\#214A3E\]:active {
        background-color:#214a3e
    }

    .active\\:bg-\[\#B59F74\]:active {
        background-color:#a6adb5
    }

    .active\\:bg-gold-dark:active {
        background-color:var(--color-gold-dark)
    }

    .active\\:bg-gold-dark\/90:active {
        background-color:#20272de6
    }

    @supports (color: color-mix(in lab,red,red)) {
        .active\:bg-gold-dark\/90:active {
            background-color:color-mix(in oklab,var(--color-gold-dark) 90%,transparent)
        }
    }

    .active\\:bg-white\/16:active {
        background-color:#ffffff29
    }

    @supports (color: color-mix(in lab,red,red)) {
        .active\:bg-white\/16:active {
            background-color:color-mix(in oklab,var(--color-white) 16%,transparent)
        }
    }

    .active\\:text-white:active {
        color:var(--color-white)
    }

    @media (min-width: 40rem) {
        .sm\:grid-cols-2 {
            grid-template-columns:repeat(2,minmax(0,1fr))
        }

        .sm\:flex-row {
            flex-direction: row
        }

        .sm\:items-center {
            align-items: center
        }

        .sm\:justify-between {
            justify-content: space-between
        }

        .sm\:p-8 {
            padding: calc(var(--spacing) * 8)
        }

        .sm\:p-10 {
            padding: calc(var(--spacing) * 10)
        }

        .sm\:px-6 {
            padding-inline:calc(var(--spacing) * 6)}

        .sm\\:pt-36 {
            padding-top:calc(var(--spacing) * 36)
        }

        .sm\:pb-22 {
            padding-bottom: calc(var(--spacing) * 22)
        }

        .sm\:pb-24 {
            padding-bottom: calc(var(--spacing) * 24)
        }

        .sm\:text-2xl {
            font-size: var(--text-2xl);
            line-height: var(--tw-leading,var(--text-2xl--line-height))
        }

        .sm\:text-4xl {
            font-size: var(--text-4xl);
            line-height: var(--tw-leading,var(--text-4xl--line-height))
        }

        .sm\:text-5xl {
            font-size: var(--text-5xl);
            line-height: var(--tw-leading,var(--text-5xl--line-height))
        }

        .sm\:text-base {
            font-size: var(--text-base);
            line-height: var(--tw-leading,var(--text-base--line-height))
        }

        .sm\:text-lg {
            font-size: var(--text-lg);
            line-height: var(--tw-leading,var(--text-lg--line-height))
        }

        .sm\:text-sm {
            font-size: var(--text-sm);
            line-height: var(--tw-leading,var(--text-sm--line-height))
        }
    }

    @media (min-width: 48rem) {
        .md\:grid-cols-2 {
            grid-template-columns:repeat(2,minmax(0,1fr))
        }

        .md\:grid-cols-3 {
            grid-template-columns: repeat(3,minmax(0,1fr))
        }

        .md\:py-20 {
            padding-block:calc(var(--spacing) * 20)}

        .md\\:py-24 {
            padding-block:calc(var(--spacing) * 24)
        }

        .md\:py-32 {
            padding-block:calc(var(--spacing) * 32)}
    }

    @media (min-width: 64rem) {
        .lg\:grid-cols-2 {
            grid-template-columns:repeat(2,minmax(0,1fr))
        }

        .lg\:grid-cols-3 {
            grid-template-columns: repeat(3,minmax(0,1fr))
        }

        .lg\:grid-cols-\[minmax\(0\,0\.9fr\)_minmax\(0\,1\.1fr\)\] {
            grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr)
        }

        .lg\:grid-cols-\[minmax\(0\,1\.2fr\)_minmax\(320px\,0\.8fr\)\] {
            grid-template-columns: minmax(0,1.2fr) minmax(320px,.8fr)
        }

        .lg\:grid-cols-\[minmax\(0\,1fr\)_auto\] {
            grid-template-columns: minmax(0,1fr) auto
        }

        .lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(320px\,0\.9fr\)\] {
            grid-template-columns: minmax(0,1fr) minmax(320px,.9fr)
        }

        .lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(320px\,0\.85fr\)\] {
            grid-template-columns: minmax(0,1fr) minmax(320px,.85fr)
        }

        .lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(320px\,0\.95fr\)\] {
            grid-template-columns: minmax(0,1fr) minmax(320px,.95fr)
        }

        .lg\:flex-col {
            flex-direction: column
        }

        .lg\:flex-row {
            flex-direction: row
        }

        .lg\:items-end {
            align-items: flex-end
        }

        .lg\:items-start {
            align-items: flex-start
        }

        .lg\:justify-between {
            justify-content: space-between
        }

        .lg\:p-12 {
            padding: calc(var(--spacing) * 12)
        }

        .lg\:px-8 {
            padding-inline:calc(var(--spacing) * 8)}

        .lg\\:text-5xl {
            font-size:var(--text-5xl);
            line-height: var(--tw-leading,var(--text-5xl--line-height))
        }

        .lg\:text-6xl {
            font-size: var(--text-6xl);
            line-height: var(--tw-leading,var(--text-6xl--line-height))
        }

        .lg\:text-7xl {
            font-size: var(--text-7xl);
            line-height: var(--tw-leading,var(--text-7xl--line-height))
        }
    }

    @media (min-width: 80rem) {
        .xl\:flex {
            display:flex
        }

        .xl\:hidden {
            display: none
        }

        .xl\:grid-cols-4 {
            grid-template-columns: repeat(4,minmax(0,1fr))
        }
    }
}

html {
    scroll-behavior: smooth
}

body {
    font-family: var(--font-body);
    color: var(--color-charcoal);
    background: radial-gradient(circle at top,#c7ccd20d,transparent 34%),var(--color-cream);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden
}

.skip-link {
    position: fixed;
    z-index: 1000;
    top: .75rem;
    left: .75rem;
    padding: .75rem 1rem;
    color: #11161b;
    background: #fff;
    border-radius: .375rem;
    font-weight: 700;
    transform: translateY(-160%);
    transition: transform .2s ease
}

.skip-link:focus {
    transform: translateY(0)
}

::selection {
    color: #fff;
    background: #800080
}

.font-heading {
    font-family: var(--font-heading)
}

/* Brand logo */
.brand-logo {
    display: block;
    object-fit: contain
}

.brand-lockup {
    display: inline-flex;
    align-items: center;
    gap: .85rem
}

.brand-name {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start
}

.brand-name:after {
    width: 3.75rem;
    height: 2px;
    margin-top: .65rem;
    background: #800080;
    content: ""
}

.accent-purple {
    color: #800080
}

.accent-purple-bg {
    background-color: #800080
}

.infra-outline {
    border-color: #800080
}

.infra-outline:hover {
    border-color: #a000a0;
    box-shadow: 0 0 0 1px rgba(128,0,128,.35),0 10px 28px rgba(128,0,128,.42)
}

.nav-route-link[aria-current="page"] {
    border-color: transparent;
    border-radius: 0;
    background: transparent;
    color: #fff;
    box-shadow: inset 0 -2px 0 #a000a0;
    cursor: default
}

.mobile-menu-panel .nav-route-link[aria-current="page"] {
    border-color: rgba(255,255,255,.1);
    border-left-color: #a000a0;
    border-radius: 1rem;
    background: rgba(128,0,128,.12);
    box-shadow: none
}

.infra-section-link {
    color: inherit;
    cursor: pointer
}

.infra-section-link:focus-visible {
    outline: 2px solid #800080;
    outline-offset: -4px
}

a[href^="https://wa.me/"]:hover {
    box-shadow: 0 0 0 1px rgba(47,111,94,.4),0 10px 30px rgba(47,111,94,.55)
}

.hero-brand-line {
    width: 6rem
}

@media (min-width:640px) {
    .hero-brand-line {
        width: 8.5rem
    }
}

@media (min-width:1024px) {
    .hero-brand-line {
        width: 10rem
    }
}

/* Moving constellation backgrounds */
.constellation-section {
    position: relative;
    isolation: isolate;
    overflow: hidden
}

.constellation-bg {
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none
}

.constellation-canvas {
    display: block;
    width: 100%;
    height: 100%
}

@media (min-width: 1024px) {
    #companies .company-grid {
        grid-template-columns: repeat(6,minmax(0,1fr))
    }

    #companies .company-grid > .company-card {
        grid-column: span 2
    }

    #companies .company-grid > .company-card:nth-child(4) {
        grid-column: 2 / span 2
    }

    #companies .company-grid > .company-card:nth-child(5) {
        grid-column: 4 / span 2
    }
}

#companies .company-card {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    min-height: 17.5rem;
    overflow: hidden;
    isolation: isolate;
    border-color: color-mix(in srgb,var(--company-accent,#800080) 58%,transparent);
    background: linear-gradient(135deg,rgba(8,14,21,.94),rgba(15,24,32,.78));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05),0 16px 35px rgba(0,0,0,.24);
    --company-accent: #25c8ff
}

#companies .company-card:before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: radial-gradient(circle at 0 0,color-mix(in srgb,var(--company-accent) 18%,transparent),transparent 55%);
    content: "";
    pointer-events: none
}

#companies .company-card:nth-child(2) {
    --company-accent: #b45cff;
    background: linear-gradient(135deg,rgba(20,8,29,.94),rgba(30,15,42,.78))
}

#companies .company-card:nth-child(3) {
    --company-accent: #e0b93f
}

#companies .company-card:nth-child(4) {
    --company-accent: #65e52b;
    background: linear-gradient(135deg,rgba(8,21,10,.94),rgba(15,32,18,.78))
}

#companies .company-card:nth-child(5) {
    --company-accent: #c98a52
}

#companies .company-card .accent-purple-bg {
    width: 2rem;
    height: .22rem;
    border-radius: 999px;
    background-color: var(--company-accent);
    box-shadow: 0 0 14px color-mix(in srgb,var(--company-accent) 65%,transparent)
}

#companies .company-card h3 {
    letter-spacing: .015em
}

#companies .company-card .company-card-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: min(100%,7.5rem);
    height: 5rem;
    flex-shrink: 0;
    margin-top: 1.25rem;
    overflow: visible
}

#companies .company-card .company-card-logo a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 100%
}

#companies .company-card .company-card-logo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: contain;
    object-position: left center;
    mix-blend-mode: normal;
    filter: none
}

#companies .company-card h3 .accent-purple {
    color: var(--company-accent)
}

#companies .company-card > p:nth-of-type(1) {
    color: color-mix(in srgb,var(--company-accent) 78%,white)
}

#companies .company-card .company-email {
    margin-top: auto;
    padding-top: 1.25rem;
    color: color-mix(in srgb,var(--company-accent) 76%,white)
}

#companies .company-card .company-email-icon {
    flex: 0 0 auto
}

@media (hover:hover) and (pointer:fine) {
    #companies .company-card:hover,
    #companies .company-card:focus-within {
        border-color: var(--company-accent);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.08),0 20px 42px rgba(0,0,0,.3),0 0 26px color-mix(in srgb,var(--company-accent) 22%,transparent)
    }
}

.company-email {
    margin-top: auto;
    padding-top: 1.25rem;
    color: #800080
}

.company-email:hover {
    color: #a000a0
}

.footer-email-purple {
    border-color: #800080
}

.footer-email-purple:hover {
    border-color: #a000a0
}

.footer-brand-grid {
    grid-template-columns: repeat(2, max-content);
    justify-content: space-between
}

.footer-brand-grid a {
    padding-inline: .75rem;
    text-align: center;
    justify-self: start
}

.footer-brand-grid a:nth-child(even) {
    justify-self: end
}

@media (max-width: 360px) {
    .footer-brand-grid a {
        padding-inline: .6rem;
        font-size: .75rem
    }
}

@media (min-width: 768px) {
    .footer-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        justify-content: stretch
    }

    .footer-brand-grid a,
    .footer-brand-grid a:nth-child(even) {
        padding-inline: 1rem;
        justify-self: stretch
    }
}

.contact-service-card {
    transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease
}

.contact-service-card:hover {
    transform: translateY(-4px);
    border-color: rgba(128,0,128,.7);
    box-shadow: 0 14px 32px rgba(0,0,0,.22),0 0 20px rgba(128,0,128,.1)
}

.brand-logo-header {
    width: 13rem;
    height: 4rem;
    object-fit: cover
}

.brand-logo-drawer {
    width: 13rem;
    height: 4rem;
    object-fit: cover
}

.brand-logo-footer {
    width: 15rem;
    height: 5.5rem;
    object-fit: cover
}

.brand-spacing {
    letter-spacing: .72em
}

@keyframes whatsapp-pulse {
    0% {
        box-shadow: 0 0 #2f6f5e57
    }

    70% {
        box-shadow: 0 0 0 14px #2f6f5e00
    }

    to {
        box-shadow: 0 0 #2f6f5e00
    }
}

.animate-whatsapp-pulse {
    animation: whatsapp-pulse 2s ease-in-out 3
}

@keyframes fade-in-up {
    0% {
        opacity: 0;
        transform: translateY(24px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.reveal-section {
    opacity: 1;
    will-change: opacity,transform;
    transition: opacity .42s ease-out,transform .42s ease-out;
    transform: translateY(0)
}

.reveal-section[data-reveal=hidden] {
    opacity: 0;
    transform: translateY(24px)
}

.animate-fade-in-up {
    animation: fade-in-up .42s ease-out both
}

@keyframes fade-in-gallery {
    0% {
        opacity: 0;
        transform: translateY(16px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.animate-fade-in-gallery {
    animation: fade-in-gallery .4s ease-out both
}

@media (prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    .animate-fade-in-gallery,.animate-whatsapp-pulse {
        animation: none
    }

    .reveal-section {
        opacity: 1;
        transition: none;
        transform: none
    }
}

/* Free vulnerability assessment */
.assessment-section {
    background: radial-gradient(circle at 16% 18%, rgba(128,0,128,.07), transparent 32%), #11161b;
    padding: 4rem 0
}

.assessment-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(32rem, 1.05fr);
    gap: 2.5rem;
    align-items: center;
    width: 100%;
    max-width: 80rem;
    margin-inline: auto;
    padding-inline: 1rem
}

@media (min-width: 640px) {
    .assessment-layout { padding-inline: 1.5rem }
}

@media (min-width: 1024px) {
    .assessment-layout { padding-inline: 2rem }
}

.assessment-eyebrow {
    color: rgba(255,255,255,.58);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .35em
}

.assessment-title {
    margin-top: 1.35rem;
    max-width: 46rem;
    color: #fff;
    font-family: var(--font-heading, inherit);
    font-size: clamp(2.1rem, 3.2vw, 3.3rem);
    font-weight: 700;
    line-height: 1.06
}

.assessment-title>span,
.assessment-dot { color: #800080 }

.assessment-summary {
    margin-top: 1.5rem;
    max-width: 42rem;
    color: rgba(232,230,225,.72);
    font-size: 1.1rem;
    line-height: 1.6
}

.assessment-benefits {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 2.3rem
}

.assessment-benefits p {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .25rem 1rem;
    border-left: 1px solid rgba(255,255,255,.16);
    color: #fff;
    font-size: .82rem;
    line-height: 1.45
}

.assessment-benefits svg {
    width: 2.15rem;
    height: 2.15rem;
    flex: 0 0 auto;
    fill: none;
    stroke: #800080;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round
}

.assessment-benefits p:first-child { border-left: 0; padding-left: 0 }

.assessment-card {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 1.5rem;
    background: rgba(255,255,255,.025)
}

.assessment-card-body {
    display: grid;
    grid-template-columns: 1fr 1.08fr;
    min-height: 21rem
}

.assessment-list-wrap { padding: 2rem 0 1.5rem 2rem }
.assessment-list-wrap h3 { color: #fff; font-size: 1.25rem; font-weight: 700 }
.assessment-list-wrap ul { margin-top: 1.1rem; color: #fff; font-size: .82rem; line-height: 1.5 }
.assessment-list-wrap li { position: relative; margin-top: .9rem; padding-left: 2rem }
.assessment-list-wrap li:before {
    position: absolute;
    left: 0;
    top: -.05rem;
    display: grid;
    width: 1.25rem;
    height: 1.25rem;
    place-items: center;
    border-radius: 50%;
    background: #800080;
    color: #fff;
    content: "✓";
    font-size: .72rem
}

.assessment-image { width: 100%; height: 100%; object-fit: contain; object-position: center }
.assessment-card-footer { display: flex; align-items: center; gap: 1rem; border-top: 1px solid rgba(255,255,255,.1); padding: 1rem 1.75rem }
.assessment-card-footer p { display: flex; min-width: 12rem; align-items: center; gap: .75rem; color: #fff; font-size: .8rem; line-height: 1.35 }
.assessment-shield { display: grid; width: 2.8rem; height: 2.8rem; flex: 0 0 auto; place-items: center }
.assessment-shield svg { width: 2.7rem; height: 2.7rem; fill: rgba(128,0,128,.2); stroke: #a64ca6; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round }
.assessment-button { display: flex; flex: 1; align-items: center; justify-content: center; gap: .65rem; border-radius: .55rem; background: #188c48; padding: .9rem 1rem; color: #fff; text-align: center; font-weight: 700; transition: background-color .2s ease, transform .2s ease }
.assessment-button svg { width: 1.45rem; height: 1.45rem; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round }
.assessment-button:hover { background: #20a457; transform: translateY(-2px) }

@media (max-width: 1050px) {
    .assessment-layout { grid-template-columns: 1fr }
}

@media (max-width: 640px) {
    .assessment-section { padding-block: 3.5rem }
    .assessment-benefits { grid-template-columns: repeat(2, 1fr); row-gap: 1.25rem }
    .assessment-benefits p:nth-child(3) { border-left: 0; padding-left: 0 }
    .assessment-card-body { grid-template-columns: 1fr }
    .assessment-list-wrap { padding: 1.5rem }
    .assessment-image { max-height: 17rem }
    .assessment-card-footer { flex-direction: column; align-items: stretch }
    .assessment-card-footer p { min-width: 0 }
}

section[id] {
    scroll-margin-top: 6rem
}

/* Security service imagery */
.service-icon-frame {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    margin-inline: auto;
    overflow: visible
}

.service-card-icon {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .35s ease,filter .35s ease
}

.service-icon-frame + h3 {
    text-align: center
}

#services .company-card p {
    text-align: center
}

.company-card:hover .service-card-icon,
.company-card:focus-within .service-card-icon {
    transform: scale(1.035);
    filter: saturate(1.08)
}

/* Trusted-partner marquee */
.partner-marquee {
    overflow: hidden;
    mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
    -webkit-mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)
}

.partner-marquee-track {
    display: flex;
    width: max-content;
    gap: 1rem;
    animation: partner-marquee 36s linear infinite
}

.partner-marquee:hover .partner-marquee-track {
    animation-play-state: paused
}

.partner-marquee-secondary {
    margin-top: 1rem
}

.partner-marquee-secondary .partner-marquee-track {
    animation-duration: 42s;
    animation-delay: -12s;
    animation-direction: reverse
}

.partner-logo-card {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 11rem;
    height: 5.5rem;
    padding: 1rem 1.4rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 1rem;
    background: rgba(255,255,255,.92)
}

.partner-logo-card img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.partner-logo-text {
    color: #11161b;
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -.02em
}

@keyframes partner-marquee {
    to {
        transform: translateX(calc(-50% - .5rem))
    }
}

@media (prefers-reduced-motion:reduce) {
    .partner-marquee-track {
        animation: none
    }

    .service-card-icon {
        transition: none
    }
}

/* Floating WhatsApp action */
.floating-whatsapp {
    position: fixed;
    right: 1.5rem;
    bottom: 1.5rem;
    z-index: 50;
    display: inline-flex;
    width: 3.75rem;
    height: 3.75rem;
    align-items: center;
    justify-content: center;
    border: 1px solid #ffffff1f;
    border-radius: 9999px;
    color: #fff;
    background: #2f6f5e;
    box-shadow: 0 18px 40px #18322b4d;
    transition: transform .2s ease,background-color .2s ease
}

.floating-whatsapp:hover {
    background: #285b4d;
    transform: translateY(-2px)
}

.floating-whatsapp:focus-visible {
    outline: 2px solid #c7ccd2;
    outline-offset: 3px
}

/* Mobile navigation states */
#mobile-menu-button {
    transition: background-color .2s ease,border-color .2s ease,transform .2s ease
}

#mobile-menu-button:active {
    transform: scale(.92)
}

#mobile-menu-button line {
    transform-box: fill-box;
    transform-origin: center;
    transition: transform .28s cubic-bezier(.22,1,.36,1),opacity .18s ease
}

#mobile-menu-button[aria-expanded="true"] line:first-child {
    transform: translateY(6px) rotate(45deg)
}

#mobile-menu-button[aria-expanded="true"] line:nth-child(2) {
    opacity: 0;
    transform: scaleX(.35)
}

#mobile-menu-button[aria-expanded="true"] line:last-child {
    transform: translateY(-6px) rotate(-45deg)
}

.mobile-menu-overlay {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    backdrop-filter: blur(0);
    transition: opacity .3s ease,visibility .3s ease,backdrop-filter .3s ease
}

.mobile-menu-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    backdrop-filter: blur(3px)
}

.mobile-menu-panel {
    visibility: hidden;
    transform: translateX(100%);
    transition: transform .42s cubic-bezier(.22,1,.36,1),visibility .42s ease
}

.mobile-menu-panel.is-open {
    visibility: visible;
    transform: translateX(0)
}

.mobile-menu-panel > * {
    opacity: 0;
    transform: translateX(1rem);
    transition: opacity .25s ease,transform .35s cubic-bezier(.22,1,.36,1)
}

.mobile-menu-panel.is-open > * {
    opacity: 1;
    transform: translateX(0)
}

.mobile-menu-panel.is-open > :nth-child(2) {
    transition-delay: .08s
}

.mobile-menu-panel.is-open > :nth-child(3) {
    transition-delay: .13s
}

.mobile-menu-panel.is-open > :nth-child(4) {
    transition-delay: .18s
}

body.menu-open {
    overflow: hidden
}

@media (min-width:80rem) {
    .mobile-menu-overlay,.mobile-menu-panel {
        display: none!important
    }
}

@media (prefers-reduced-motion:reduce) {
    #mobile-menu-button,#mobile-menu-button line,.mobile-menu-overlay,.mobile-menu-panel,.mobile-menu-panel > * {
        transition: none;
        transform: none
    }
}

@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-border-style {
    syntax: "*";
    inherits: false;
    initial-value: solid
}

@property --tw-gradient-position {
    syntax: "*";
    inherits: false
}

@property --tw-gradient-from {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000
}

@property --tw-gradient-via {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000
}

@property --tw-gradient-to {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000
}

@property --tw-gradient-stops {
    syntax: "*";
    inherits: false
}

@property --tw-gradient-via-stops {
    syntax: "*";
    inherits: false
}

@property --tw-gradient-from-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 0
}

@property --tw-gradient-via-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 50%
}

@property --tw-gradient-to-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-leading {
    syntax: "*";
    inherits: false
}

@property --tw-font-weight {
    syntax: "*";
    inherits: false
}

@property --tw-tracking {
    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-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-backdrop-blur {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-brightness {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-contrast {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-grayscale {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-hue-rotate {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-invert {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-opacity {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-saturate {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-sepia {
    syntax: "*";
    inherits: false
}

@property --tw-duration {
    syntax: "*";
    inherits: false
}

@property --tw-scale-x {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

@property --tw-scale-y {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

@property --tw-scale-z {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

/* Company card hover animation */
:root,
.__variable_8b3a0b {
    --font-body: Inter, Arial, ui-sans-serif, system-ui, sans-serif;
    --font-heading: Inter, Arial, ui-sans-serif, system-ui, sans-serif
}

.site-loader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 1.15rem;
    overflow: hidden;
    isolation: isolate;
    background: #11161b;
    opacity: 1;
    visibility: visible;
    transition: opacity .3s cubic-bezier(.23,1,.32,1),visibility .3s ease
}

.site-loader:before,
.site-loader:after {
    position: absolute;
    z-index: 0;
    pointer-events: none;
    content: ""
}

.site-loader:before {
    inset: -35%;
    background: conic-gradient(from 90deg at 50% 50%,transparent 0 18%,rgba(128,0,128,.2) 27%,transparent 38% 64%,rgba(221,31,221,.14) 75%,transparent 84%);
    filter: blur(36px);
    animation: loader-field-spin 4.5s linear infinite
}

.site-loader:after {
    inset: 0;
    background: repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.012) 3px 4px);
    animation: loader-static 1.1s steps(2,end) infinite
}

.js .site-loader {
    display: flex
}

.site-loader.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.site-loader-mark {
    position: relative;
    z-index: 2;
    display: grid;
    width: min(32rem,86vw);
    height: 12rem;
    place-items: center
}

.site-loader-mark:before {
    position: absolute;
    inset: 50% auto auto 50%;
    width: min(35rem,94vw);
    height: 10rem;
    border: 1px solid rgba(220,43,220,.17);
    border-right-color: rgba(255,95,255,.75);
    border-left-color: rgba(255,95,255,.46);
    border-radius: 50%;
    box-shadow: 0 0 34px rgba(128,0,128,.18),inset 0 0 28px rgba(128,0,128,.1);
    content: "";
    transform: translate(-50%,-50%);
    animation: loader-orbit-reverse 2.2s linear infinite
}

.site-loader-mark:after {
    position: absolute;
    z-index: 4;
    top: 22%;
    bottom: 22%;
    left: 50%;
    width: 3.5rem;
    background: linear-gradient(90deg,transparent,rgba(255,117,255,.34),rgba(255,255,255,.76),transparent);
    filter: blur(2px) drop-shadow(0 0 14px #e22ce2);
    mix-blend-mode: screen;
    content: "";
    animation: loader-energy-sweep .6s cubic-bezier(.77,0,.175,1) .05s both
}

.site-loader-mark img {
    position: relative;
    z-index: 3;
    width: min(28rem,82vw);
    height: auto;
    opacity: 1;
    object-fit: contain;
    filter: drop-shadow(0 0 10px rgba(210,26,210,.42));
    animation: loader-logo-ignite .4s cubic-bezier(.23,1,.32,1) both,loader-logo-charge .3s cubic-bezier(.77,0,.175,1) .4s infinite alternate
}

.site-loader-ring {
    position: absolute;
    z-index: 1;
    inset: 50% auto auto 50%;
    width: min(29rem,88vw);
    height: 8rem;
    border: 1px dashed rgba(205,46,205,.3);
    border-top-color: rgba(255,105,255,.9);
    border-bottom-color: rgba(255,105,255,.64);
    border-radius: 50%;
    transform: translate(-50%,-50%);
    animation: loader-orbit 1.65s linear infinite
}

.site-loader-name {
    position: relative;
    z-index: 2;
    color: rgba(232,230,225,.72);
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .2em;
    animation: loader-copy-in .25s ease .1s both
}

.site-loader-line {
    position: relative;
    z-index: 2;
    overflow: hidden;
    width: min(22rem,72vw);
    height: 2px;
    background: rgba(255,255,255,.09)
}

.site-loader-line:after {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg,#800080,#ef4bef 70%,#fff);
    box-shadow: 0 0 14px rgba(239,75,239,.82);
    content: "";
    transform-origin: left;
    animation: loader-progress-ignite .6s cubic-bezier(.77,0,.175,1) .05s both
}

@keyframes loader-field-spin { to { transform: rotate(360deg) scale(1.08) } }
@keyframes loader-static { 50% { opacity: .35; transform: translateY(2px) } }
@keyframes loader-orbit { from { transform: translate(-50%,-50%) rotate(0) } to { transform: translate(-50%,-50%) rotate(360deg) } }
@keyframes loader-orbit-reverse { from { transform: translate(-50%,-50%) rotate(360deg) } to { transform: translate(-50%,-50%) rotate(0) } }
@keyframes loader-logo-ignite { from { filter: brightness(1.5) blur(2px) drop-shadow(0 0 24px #e52ce5); transform: scale(.88) } to { filter: brightness(1) blur(0) drop-shadow(0 0 10px rgba(210,26,210,.42)); transform: scale(1) } }
@keyframes loader-logo-charge { to { filter: brightness(1.12) drop-shadow(0 0 22px rgba(236,53,236,.68)); transform: scale(1.018) } }
@keyframes loader-energy-sweep { from { opacity: 0; transform: translateX(-620%) skewX(-12deg) } 20% { opacity: 1 } to { opacity: 0; transform: translateX(520%) skewX(-12deg) } }
@keyframes loader-copy-in { from { letter-spacing: .42em } to { letter-spacing: .2em } }
@keyframes loader-progress-ignite { from { transform: scaleX(0) } to { transform: scaleX(1) } }

@media (prefers-reduced-motion:reduce) {
    .site-loader:before,
    .site-loader:after,
    .site-loader-mark:before,
    .site-loader-mark:after,
    .site-loader-mark img,
    .site-loader-ring,
    .site-loader-name,
    .site-loader-line:after { animation: none }
}

.site-header {
    z-index: 50;
    background: rgba(17,22,27,.72)
}

.site-hero {
    z-index: 0;
    padding-top: 6rem
}

.hero-background {
    object-position: center 58%;
    transform: scale(1.16);
    transform-origin: center center
}

.infra-services-hero-background {
    object-position: center center;
    opacity: .92;
    filter: saturate(1.25) contrast(1.06);
    transform: scale(1.03)
}

.infra-services-hero-overlay {
    background: linear-gradient(180deg,rgba(16,7,22,.38),rgba(18,7,25,.58) 55%,rgba(11,15,19,.84))
}

@media (min-width:640px) {
    .site-hero {
        padding-top: 7rem
    }
}

@media (max-width:639px) {
    .site-header {
        background: rgba(17,22,27,.64)
    }

    /* Keep the hero label below the fixed mobile header and inside narrow screens. */
    .site-hero {
        padding-top: 8.5rem
    }

    .hero-brand-word {
        max-width: 100%;
        font-size: clamp(1.5rem, 7.5vw, 1.875rem);
        letter-spacing: clamp(.42em, 3.4vw, .7em);
        white-space: nowrap
    }

    .hero-background {
        object-position: center 62%;
        transform: scale(1.24)
    }

    .infra-services-hero-background {
        object-position: 68% center;
        opacity: .82;
        transform: scale(1.08)
    }
}

.company-card {
    transition: transform .3s ease, border-color .3s ease, background-color .3s ease, box-shadow .3s ease;
    will-change: transform
}

.company-card:hover,
.company-card:focus-within {
    transform: translateY(-10px);
    border-color: rgba(128,0,128,.78);
    background-color: rgba(255,255,255,.07);
    box-shadow: 0 20px 45px rgba(0,0,0,.32),0 0 24px rgba(128,0,128,.2)
}

@media (prefers-reduced-motion:reduce) {
    .company-card {
        transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
        will-change: auto
    }

    .company-card:hover,
    .company-card:focus-within {
        transform: none
    }
}
/* Global scrollbar baseline */
html {
    scrollbar-color: rgba(209, 190, 152, 0.58) #11161b;
    scrollbar-width: thin;
}

html::-webkit-scrollbar {
    width: 0.7rem;
    height: 0.7rem;
}

html::-webkit-scrollbar-track {
    background: #11161b;
}

html::-webkit-scrollbar-thumb {
    border: 2px solid #11161b;
    border-radius: 999px;
    background: rgba(209, 190, 152, 0.58);
}

html::-webkit-scrollbar-thumb:hover {
    background: rgba(209, 190, 152, 0.78);
}

@media (forced-colors: active) {
    html {
        scrollbar-color: auto;
    }
}

/* SEO navigation and contact page */
.site-breadcrumb {
    margin-bottom: 1.5rem;
    color: rgba(255, 255, 255, 0.62);
    font-size: 0.8125rem;
}

.site-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-breadcrumb li + li::before {
    content: "/";
    margin-right: 0.55rem;
    color: rgba(255, 255, 255, 0.32);
}

.site-breadcrumb a {
    color: #e8e6e1;
    text-decoration: none;
    transition: color 160ms ease;
}

.site-breadcrumb a:hover,
.site-breadcrumb a:focus-visible {
    color: #fff;
}

.site-breadcrumb [aria-current="page"] {
    color: rgba(255, 255, 255, 0.78);
}

.contact-hero {
    position: relative;
    display: flex;
    min-height: 82vh;
    min-height: 82svh;
    align-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 84% 12%, rgba(156, 39, 176, 0.14), transparent 31rem),
        linear-gradient(145deg, #11161b, #151a20);
}

.contact-hero > div {
    width: 100%;
}

.contact-route-grid,
.contact-brand-grid {
    display: grid;
    gap: 1rem;
}

.contact-route-card,
.contact-brand-grid a {
    display: flex;
    min-width: 0;
    flex-direction: column;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: #e8e6e1;
    text-decoration: none;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.contact-route-card {
    min-height: 12rem;
    justify-content: space-between;
    border-radius: 1.6rem;
    padding: 1.5rem;
}

.contact-route-card:hover,
.contact-route-card:focus-visible,
.contact-brand-grid a:hover,
.contact-brand-grid a:focus-visible {
    border-color: #800080;
    background: rgba(255, 255, 255, 0.075);
    transform: translateY(-2px);
}

.contact-route-card.contact-whatsapp-link:hover,
.contact-route-card.contact-whatsapp-link:focus-visible {
    box-shadow: none;
}

.contact-route-label {
    color: rgba(255, 255, 255, 0.55);
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.contact-route-card strong,
.contact-brand-grid strong {
    color: #fff;
    font-size: 1.15rem;
}

.contact-route-card > span:last-child,
.contact-brand-grid span {
    overflow-wrap: anywhere;
    color: #800080;
    font-size: 0.9rem;
}

.contact-brand-grid a {
    gap: 0.55rem;
    border-radius: 1rem;
    padding: 1.25rem;
}

@media (min-width: 40rem) {
    .contact-route-grid,
    .contact-brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 64rem) {
    .contact-route-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .contact-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-breadcrumb a,
    .contact-route-card,
    .contact-brand-grid a {
        transition: none;
    }

    .contact-route-card:hover,
    .contact-route-card:focus-visible,
    .contact-brand-grid a:hover,
    .contact-brand-grid a:focus-visible {
        transform: none;
    }
}
