/*
------------------------------------------------------------------------------
:: Movys 2026 Developed by Julio Cosmo | 14/07/2026 - 04:27.
:: WARNING: This computer program is protected by copyright law and international treaties.
:: Unauthorized duplication or distribution of this program, or any portion of it, may result
:: in severe civil or criminal penalties, and will be prosecuted to the maximum extent possible
:: under the law.
::
:: v.1.0 - 28/06/2026 - Adiciona o cabeçalho institucional à folha de estilos da solução.
------------------------------------------------------------------------------
:: v.1.1 - 28/06/2026 - Corrige o alinhamento dos ícones do footer compartilhado nas páginas internas.
:: v.1.2 - 13/07/2026 - Limita o logo compartilhado do footer ao contêiner padrão das páginas internas.
:: v.1.9 - 13/07/2026 - Ajusta o gutter do scroll do modal, reduz os controles para a referência e replica o acabamento do scrollbar do select.
:: v.1.8 - 13/07/2026 - Uniformiza a tipografia do modal entre landing e páginas internas e reforça o comportamento de scroll do select.
:: v.1.10 - 13/07/2026 - Replica a paleta do scrollbar de cargo da referência e prepara o painel para rolagem suave.
:: v.1.11 - 13/07/2026 - Remove a suavização artificial do scroll do cargo e alinha a scrollbar nativa ao comportamento da referência.
:: v.1.12 - 13/07/2026 - Impede a herança da paleta global de scrollbar e força no select de cargo as cores exatas da referência.
:: v.1.13 - 13/07/2026 - Restaura o scroll nativo das páginas e centraliza o botão de envio abaixo do disclaimer na mesma malha do formulário.
:: v.1.14 - 13/07/2026 - Ajusta a área de ações do modal para manter o empilhamento responsivo do botão no mobile.
:: v.1.15 - 13/07/2026 - Remove a declaração explícita de scrollbar-color do select para reproduzir no Windows o desenho nativo da referência.
:: v.1.16 - 13/07/2026 - Remove o arredondamento do trilho e do thumb do select para igualar com fidelidade o scrollbar da referência.
:: v.1.17 - 13/07/2026 - Atualiza a paleta do scrollbar do select e alinha o botão de envio à esquerda no modal.
:: v.1.18 - 13/07/2026 - Restaura o scrollbar das páginas com o mesmo desenho do select de cargo, incluindo trilho, thumb e espessura.
:: v.1.19 - 13/07/2026 - Reduz o título do modal em 20% e remove a nota final de privacidade com seus estilos associados.
:: v.1.20 - 13/07/2026 - Ajusta apenas o scrollbar das páginas para usar trilho transparente e thumb azul, preservando o select de cargo.
:: v.1.21 - 13/07/2026 - Move a mensagem do formulário para o topo, adiciona ícone de atenção e reduz sua tipografia.
:: v.1.7 - 13/07/2026 - Corrige o box-sizing do modal global para preservar nas páginas internas a mesma largura visual da landing.
:: v.1.6 - 13/07/2026 - Converte o CTA comercial do header para aparência nativa de botão sem estilos residuais do navegador.
:: v.1.5 - 13/07/2026 - Remove o outline preto dos botões comerciais do header e consolida o acabamento visual global do CTA.
:: v.1.4 - 13/07/2026 - Refina o posicionamento e as animações do modal comercial, com botão de fechar integrado ao card.
:: v.1.3 - 13/07/2026 - Adiciona o modal global de contato comercial com visual glass e formulário responsivo compartilhado.
:: v.1.22 - 13/07/2026 - Padroniza o botão de envio comercial com o mesmo acabamento visual do CTA da tela de login.
:: v.1.23 - 13/07/2026 - Remove a selecao e o cursor de texto indevido dos labels de formulario, preservando o foco nos inputs reais.
:: v.1.24 - 13/07/2026 - Expande a protecao contra caret solto para wrappers de formulario, mantendo a edicao apenas dentro de inputs e textareas.
:: v.1.25 - 14/07/2026 - Padroniza a cor textual dos campos editaveis do site com a mesma referencia usada no modal comercial.
*/

:root {
    --movys-form-field-color: #56708e;
}

body input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
body textarea,
body select,
.w-input,
.w-select,
.email-field,
.contact-form-textarea {
    color: var(--movys-form-field-color);
    caret-color: var(--movys-form-field-color);
}

@font-face {
    font-family: "Inter Tight";
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../fonts/inter-tight/inter-tight-300.ttf") format("truetype");
}

.login-field-label,
.contact-form-field-label,
.account-form-label,
.sales-card--modal .sales-label,
.sales-card--modal .sales-label-group,
.sales-card--modal .sales-detail {
    cursor: default;
    -webkit-user-select: none;
    user-select: none;
}

.login-field,
.login-field-row,
.login-password-field,
.form-field-wrap,
.form-group.account-form,
.sales-card--modal .sales-field-grid,
.sales-card--modal .sales-control-wrap,
.sales-card--modal .sales-disclaimer,
.sales-card--modal .sales-message-counter,
.sales-card--modal .sales-form-message {
    cursor: default;
    -webkit-user-select: none;
    user-select: none;
}

form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
form textarea {
    cursor: text;
    -webkit-user-select: text;
    user-select: text;
}

@font-face {
    font-family: "Inter Tight";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/inter-tight/inter-tight-400.ttf") format("truetype");
}

@font-face {
    font-family: "Inter Tight";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/inter-tight/inter-tight-500.ttf") format("truetype");
}

@font-face {
    font-family: "Inter Tight";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/inter-tight/inter-tight-600.ttf") format("truetype");
}

@font-face {
    font-family: "Inter Tight";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/inter-tight/inter-tight-700.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../fonts/poppins/poppins-300.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/poppins/poppins-400.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/poppins/poppins-500.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/poppins/poppins-600.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/poppins/poppins-700.ttf") format("truetype");
}

@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/inter/inter-variable.ttf") format("truetype");
}

@font-face {
    font-family: "Inter";
    font-style: italic;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/inter/inter-italic-variable.ttf") format("truetype");
}

:root {
    --_color---primary-color--grey: #f6f6f6;
    --font-family: Poppins, sans-serif;
    --_paragraph---normal: 16px;
    --_line-height---body: 150%;
    --_font-weight---normal: 400;
    --_color---neutral-color--black: #000;
    --h1-font-size: 64px;
    --_line-height---h1: 100%;
    --_font-weight---medium: 500;
    --_letter-spacing---h1: -1.92px;
    --h2-font-size: 48px;
    --_line-height---h2: 108.333%;
    --_letter-spacing---h2: -1.44px;
    --h3-font-size: 40px;
    --_line-height---h3: 120%;
    --_letter-spacing---h3: -.8px;
    --h4-font-size: 36px;
    --_line-height---h4: 133.333%;
    --_letter-spacing---h4: -.72px;
    --h5-font-size: 32px;
    --_line-height---h5: 112.5%;
    --_letter-spacing---h5: -.32px;
    --h6-font-size: 24px;
    --_line-height---h6: 125%;
    --_color---primary-color--body-color: #575757;
    --_color---neutral-color--white: white;
    --_spacing---padding-global: 40px;
    --_color---primary-color--green: #bcef4a;
    --_spacing---spacing-medium: 80px;
    --_color---neutral-color--grey-01: #222f04;
    --_color---neutral-color--grey-02: #658d0c;
    --_color---neutral-color--grey-03: #87bb11;
    --_color---neutral-color--grey-04: #a8ea15;
    --_color---neutral-color--grey-05: #baee44;
    --_color---neutral-color--grey-06: #cbf372;
    --_color---neutral-color--grey-07: #dcf7a1;
    --_color---neutral-color--grey-08: #eefbd0;
    --_paragraph---small: 14px;
    --_paragraph---medium: 18px;
    --_spacing---spacing-extra-large: 160px;
    --_spacing---spacing-large: 100px;
    --_spacing---spacing-small: 60px;
    --_color---border-color--border-color-01: #11111103;
    --_color---box-shadow-color--box-shadow-color-02: #00000014;
    --_color---box-shadow-color--box-shadow-color-01: #0000001a;
    --_border-radius---border-radius-24px: 24px;
    --_font-weight---semi-bold: 600;
    --_color---primary-color--green-light-02: #eaf5d4;
}

@media (min-width: 992px) {
    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e8528e"] {
        height: 116px;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e852a4"] {
        height: 116px;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e852af"] {
        height: 116px;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e8528f"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e852ad"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e852b8"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e8529e"] {
        color: rgb(70, 70, 70);
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="9ae1cfd8-09a4-080f-c4f0-e9c968e852a0"] {
        border-color: rgb(87, 87, 87);
    }
}

html.w-mod-js:not(.w-mod-ix3) :is(.button, .navbar, .change-log-item, .feature-item, .service-section-heading, .accordion-item, .about-section-heading, .parameter-card, .service-item-background, .feature-section-heading) {
    visibility: hidden !important;
}

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

html {
    height: auto;
}

/* Reusable custom scrollbar */
.custom-scrollbar {
    overflow: auto;
    scrollbar-width: auto;
    scrollbar-color: auto;
}

html.custom-scrollbar {
    overflow: visible;
    scrollbar-width: auto;
    scrollbar-color: auto;
}

.custom-scrollbar::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #063869;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #063869;
}

.custom-scrollbar::-webkit-scrollbar-button,
.custom-scrollbar::-webkit-scrollbar-button:single-button,
.custom-scrollbar::-webkit-scrollbar-button:decrement,
.custom-scrollbar::-webkit-scrollbar-button:increment {
    display: none;
    width: 0;
    height: 0;
    background: transparent;
}

.custom-scrollbar::-webkit-scrollbar-button:vertical:start,
.custom-scrollbar::-webkit-scrollbar-button:vertical:end,
.custom-scrollbar::-webkit-scrollbar-button:horizontal:start,
.custom-scrollbar::-webkit-scrollbar-button:horizontal:end {
    display: none;
    width: 0;
    height: 0;
}

.custom-scrollbar::-webkit-scrollbar-corner {
    background: transparent;
}

/* Shared landing footer */
.footer-text-slide-section {
    max-width: 1920px;
    margin: 140px auto var(--_spacing---spacing-medium);
    overflow: hidden;
}

.text-slide {
    flex-flow: row;
    justify-content: center;
    align-items: center;
    display: flex;
}

.slide-item {
    flex: none;
    padding-left: 30px;
    padding-right: 30px;
}

.text-slide-content {
    letter-spacing: -3px;
    -webkit-text-fill-color: transparent;
    background-color: #0000;
    background-image: linear-gradient(181deg, #00000052, #0000 90%);
    -webkit-background-clip: text;
    background-clip: text;
    font-family: Inter Tight, sans-serif;
    font-size: 140px;
    font-weight: 500;
    line-height: 80%;
    transition: all .2s;
}

.text-slide-content a {
    color: inherit;
    text-decoration: none;
}

.text-slide-content:hover {
    background-color: #000;
    background-position-y: 0%;
}

.footer-text-slide {
    text-decoration: none;
}

.footer-main-wrapper {
    --footer-grid-size: 72px;
    background-color: #06386b;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
    width: min(calc(100% - 40px), 1920px);
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
}

.footer-main-wrapper::before,
.footer-main-wrapper::after {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
}

.footer-main-wrapper::before {
    inset: -42% -12%;
    z-index: 0;
    opacity: .55;
    background-image:
        linear-gradient(to right, rgb(255 255 255 / 12%) 1px, transparent 1px),
        linear-gradient(to bottom, rgb(255 255 255 / 12%) 1px, transparent 1px);
    background-size: var(--footer-grid-size) var(--footer-grid-size);
    background-position: center;
    transform: skewY(-12deg) scale(1.18);
    transform-origin: center;
    -webkit-mask-image: radial-gradient(circle at 75% 45%, rgb(255 255 255 / 100%) 0, rgb(255 255 255 / 78%) 34%, transparent 78%);
    mask-image: radial-gradient(circle at 75% 45%, rgb(255 255 255 / 100%) 0, rgb(255 255 255 / 78%) 34%, transparent 78%);
}

.footer-main-wrapper::after {
    inset: -18% -8%;
    z-index: 0;
    opacity: .38;
    background-image:
        linear-gradient(rgb(255 255 255 / 18%), rgb(255 255 255 / 18%)),
        linear-gradient(rgb(255 255 255 / 14%), rgb(255 255 255 / 14%)),
        linear-gradient(rgb(255 255 255 / 16%), rgb(255 255 255 / 16%)),
        linear-gradient(rgb(255 255 255 / 12%), rgb(255 255 255 / 12%)),
        linear-gradient(rgb(255 255 255 / 10%), rgb(255 255 255 / 10%)),
        radial-gradient(circle at center, rgb(115 199 255 / 26%) 0, transparent 72%);
    background-size:
        var(--footer-grid-size) var(--footer-grid-size),
        var(--footer-grid-size) var(--footer-grid-size),
        var(--footer-grid-size) var(--footer-grid-size),
        var(--footer-grid-size) var(--footer-grid-size),
        var(--footer-grid-size) var(--footer-grid-size),
        520px 520px;
    background-position:
        calc(100% - (var(--footer-grid-size) * 6)) calc(50% - (var(--footer-grid-size) * 2)),
        calc(100% - (var(--footer-grid-size) * 4)) calc(50% - (var(--footer-grid-size) * 4)),
        calc(100% - (var(--footer-grid-size) * 2)) calc(50% - (var(--footer-grid-size) * 1)),
        calc(100% - (var(--footer-grid-size) * 5)) calc(50% + (var(--footer-grid-size) * 1)),
        calc(100% - (var(--footer-grid-size) * 3)) calc(50% + (var(--footer-grid-size) * 3)),
        calc(100% - 220px) 50%;
    background-repeat: no-repeat;
    -webkit-mask-image: radial-gradient(circle at 78% 48%, rgb(255 255 255 / 100%) 0, rgb(255 255 255 / 82%) 36%, transparent 76%);
    mask-image: radial-gradient(circle at 78% 48%, rgb(255 255 255 / 100%) 0, rgb(255 255 255 / 82%) 36%, transparent 76%);
}

.footer-background-mark {
    pointer-events: none;
    position: absolute;
    right: 50px;
    bottom: 50px;
    z-index: 0;
    opacity: .18;
}

.footer-background-mark img {
    display: block;
    width: min(34vw, 460px);
    height: auto;
}

.footer-main-content {
    width: 100%;
    max-width: 1440px;
    padding: 40px var(--_spacing---padding-global) 40px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
}

.footer-block-01 {
    width: 100%;
}

.footer-block-02 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex: 0 auto;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    display: flex;
}

.footer-inner {
    margin-bottom: 40px;
    display: flex;
}

.footer-logo {
    text-decoration: none;
    width: 200px;
}

.logo-image {
    object-fit: cover;
    width: 555px;
    max-width: 100%;
    height: auto;
}

.social-wrapper {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    margin-top: 60px;
    display: flex;
}

.social-item {
    border: 1px solid #fff3;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 45px;
    transition: transform .2s cubic-bezier(.645, .045, .355, 1);
    display: flex;
}

.social-wrapper .social-item {
    display: flex;
}

.social-item:hover {
    transform: translate(0, -5px);
}

.footer-social-icon {
    width: 18px;
    height: 18px;
}

.footer-column {
    width: auto;
}

.footer-column--concept-links {
    width: min(100%, 320px);
}

.footer-links {
    color: #fff9;
    font-size: 14px;
    text-decoration: none;
    transition: color .2s;
}

.footer-links--concept {
    color: #ffffff8c;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
}

.footer-links--concept-icon {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    justify-content: flex-end;
    align-items: center;
    display: inline-flex;
}

.footer-links-icon {
    color: #ffffff73;
    font-size: 10px;
    line-height: 1;
}

.footer-links:hover {
    color: var(--_color---neutral-color--white);
    text-decoration: underline;
}

.footer-links--concept-icon:hover,
.footer-links--concept-icon:focus-visible {
    text-decoration: none;
}

.footer-list-wrapper {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    flex-flow: column;
    margin-top: 30px;
    display: flex;
}

.footer-list-wrapper--concept-links {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
    text-align: right;
    align-items: flex-end;
    margin-top: 0;
}

.footer-copyright {
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: column;
    gap: 18px;
    padding-top: 40px;
    display: flex;
    font-size: 12px;
}

.copyright-text {
    color: var(--_color---neutral-color--white);
}

.footer-disclaimer {
    max-width: 960px;
    color: rgb(255 255 255 / 78%);
    line-height: 1.7;
}

.footer-disclaimer p {
    margin-bottom: 14px;
    font-size: 10px;
    color: #fff;
    opacity: 0.6;
}

.footer-disclaimer p:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 991px) {
    .footer-text-slide-section {
        margin-top: 100px;
    }

    .text-slide-content {
        font-size: 90px;
    }

    .footer-main-content {
        padding-top: 40px;
        padding-bottom: 20px;
    }

    .footer-main-wrapper {
        --footer-grid-size: 60px;
        width: calc(100% - 30px);
    }

    .footer-block-01 {
        width: 40%;
    }

    .footer-block-02 {
        width: 60%;
    }

    .footer-inner {
        grid-column-gap: 30px;
        grid-row-gap: 30px;
    }

    .logo-image {
        width: 300px;
        height: auto;
    }

    .footer-copyright {
        padding-top: 20px;
    }
}

@media screen and (max-width: 479px) {
    .footer-text-slide-section {
        margin-top: 60px;
    }

    .text-slide-content {
        font-size: 60px;
    }

    .footer-main-content {
        padding-top: 40px;
    }

    .footer-main-wrapper {
        --footer-grid-size: 52px;
        width: calc(100% - 20px);
    }

    .footer-main-wrapper::before {
        inset: -34% -20%;
        opacity: .42;
        transform: skewY(-10deg) scale(1.08);
    }

    .footer-main-wrapper::after {
        inset: -10% -18%;
        opacity: .3;
        background-size:
            var(--footer-grid-size) var(--footer-grid-size),
            var(--footer-grid-size) var(--footer-grid-size),
            var(--footer-grid-size) var(--footer-grid-size),
            var(--footer-grid-size) var(--footer-grid-size),
            var(--footer-grid-size) var(--footer-grid-size),
            340px 340px;
        background-position:
            calc(100% - (var(--footer-grid-size) * 5.3)) calc(50% - (var(--footer-grid-size) * 1.6)),
            calc(100% - (var(--footer-grid-size) * 3.2)) calc(50% - (var(--footer-grid-size) * 3.2)),
            calc(100% - (var(--footer-grid-size) * 1.6)) calc(50% - (var(--footer-grid-size) * .8)),
            calc(100% - (var(--footer-grid-size) * 4.4)) calc(50% + (var(--footer-grid-size) * .7)),
            calc(100% - (var(--footer-grid-size) * 2.4)) calc(50% + (var(--footer-grid-size) * 2.3)),
            calc(100% - 110px) 52%;
    }

    .footer-block-01,
    .footer-block-02 {
        width: 100%;
    }

    .footer-inner {
        flex-flow: column;
    }

    .footer-block-02 {
        justify-content: flex-start;
    }

    .social-wrapper {
        margin-top: 30px;
    }

    .footer-list-wrapper {
        margin-top: 15px;
    }

    .footer-list-wrapper--concept-links {
        text-align: left;
        align-items: flex-start;
        margin-top: 0;
    }

    .footer-links--concept-icon {
        justify-content: flex-start;
    }

    .footer-copyright {
        flex-flow: column;
    }

.copyright-text {
        font-size: 14px;
    }
}

:root {
    --contact-modal-brand: #063869;
    --contact-modal-brand-hover: #0b5c7b;
    --contact-modal-brand-deep: #b1eb2e;
    --contact-modal-surface: rgba(255, 255, 255, 0.94);
    --contact-modal-surface-border: rgba(20, 48, 77, 0.08);
    --contact-modal-shadow: 0 32px 80px rgba(17, 38, 67, 0.16);
    --contact-modal-input-border: #dbe5ef;
    --contact-modal-input-placeholder: #73839b;
    --contact-modal-focus-ring: rgba(0, 67, 92, 0.12);
    --contact-modal-overlay: rgba(5, 18, 32, 0.36);
}

html.contact-modal-is-open,
body.contact-modal-is-open {
    overflow: hidden;
}

.header-button-redirect .header-cta-option,
.header-button-redirect .header-cta-option:focus,
.header-button-redirect .header-cta-option:focus-visible {
    outline: none;
    box-shadow: none;
    -webkit-tap-highlight-color: transparent;
}

.header-button-redirect button.header-cta-option {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.contact-sales-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.contact-sales-modal,
.contact-sales-modal::before,
.contact-sales-modal::after,
.contact-sales-modal *,
.contact-sales-modal *::before,
.contact-sales-modal *::after {
    box-sizing: border-box;
}

.contact-sales-modal.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.contact-sales-modal__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(4, 19, 33, 0.12) 0%, rgba(7, 23, 40, 0.2) 100%);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.contact-sales-modal__overlay::before {
    content: "";
    position: absolute;
    inset: -18%;
    background:
        radial-gradient(circle at 50% 22%, rgba(105, 176, 211, 0.22) 0%, rgba(105, 176, 211, 0) 44%),
        radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.24) 0%, rgba(255, 255, 255, 0) 52%);
    opacity: 0;
    transform: scale(0.92);
    transition: opacity 0.42s ease, transform 0.42s ease;
    pointer-events: none;
}

.contact-sales-modal__shell {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 20px;
    overflow-y: auto;
    box-sizing: border-box;
}

.contact-sales-modal__dialog {
    position: relative;
    width: min(100%, 1120px);
    margin: auto;
    transform: translateY(22px) scale(0.98);
    opacity: 0;
    transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.34s ease;
}

.contact-sales-modal__close {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 3;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 67, 92, 0.1);
    border-radius: 999px;
    background: rgba(246, 250, 253, 0.96);
    color: var(--contact-modal-brand);
    box-shadow: 0 10px 24px rgba(17, 38, 67, 0.1);
    cursor: pointer;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background-color 0.16s ease;
    font-size: 1rem;
}

.contact-sales-modal__close:hover,
.contact-sales-modal__close:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(0, 67, 92, 0.24);
    background: rgba(255, 255, 255, 1);
    box-shadow: 0 14px 30px rgba(17, 38, 67, 0.16);
    outline: none;
}

.sales-card--modal {
    position: relative;
    width: min(100%, 1000px);
    margin: 0 auto;
    padding: 56px 42px 34px;
    border: 1px solid var(--contact-modal-surface-border);
    border-radius: 26px;
    background: var(--contact-modal-surface);
    box-shadow: var(--contact-modal-shadow);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    color: #546577;
}

.contact-sales-modal.is-visible .contact-sales-modal__overlay {
    opacity: 1;
}

.contact-sales-modal.is-visible .contact-sales-modal__overlay::before {
    opacity: 1;
    transform: scale(1);
}

.contact-sales-modal.is-visible .contact-sales-modal__dialog {
    transform: translateY(0) scale(1);
    opacity: 1;
}

.sales-card--modal .sales-card-head {
    margin-bottom: 30px;
}

.sales-card--modal .sales-title {
    margin: 0;
    font-family: "Inter Tight", sans-serif;
    font-size: clamp(1.72rem, 2.88vw, 3.4rem);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.06em;
    color: var(--contact-modal-brand);
}

.sales-card--modal .sales-lead {
    margin: 16px 0 0;
    max-width: 620px;
    font-size: 12px;
    line-height: 1.65;
    color: #6c7b90;
}

.sales-card--modal .sales-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 20px;
}

.sales-card--modal .sales-field-grid {
    display: grid;
    grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
    gap: 16px 24px;
    align-items: start;
}

.sales-card--modal .sales-label,
.sales-card--modal .sales-label-group {
    padding-top: 12px;
}

.sales-card--modal .sales-label {
    display: block;
    font-family: "Inter Tight", sans-serif;
    font-size: 0.98rem;
    font-weight: 600;
    color: var(--contact-modal-brand);
}

.sales-card--modal .sales-label-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sales-card--modal .sales-detail {
    font-size: 11px;
    line-height: 1.6;
    color: #6f7f93;
}

.sales-card--modal .sales-control-wrap {
    position: relative;
}

.sales-card--modal .sales-control-wrap input,
.sales-card--modal .sales-control-wrap textarea {
    width: 100%;
    font: inherit;
    outline: 0;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.sales-card--modal .sales-control-wrap input {
    height: 41px;
    min-height: 41px;
    padding: 10px 13px;
    font-size: 15px;
    line-height: 19px;
    color: var(--movys-form-field-color);
    background: #fff;
    border: 1px solid var(--contact-modal-input-border);
    border-radius: 6px;
    appearance: none;
    -webkit-appearance: none;
}

.sales-card--modal .sales-control-wrap textarea {
    height: 128px;
    min-height: 128px;
    padding: 13px 15px;
    font-size: 0.98rem;
    line-height: 1.35;
    color: var(--movys-form-field-color);
    background: #fff;
    border: 1px solid var(--contact-modal-input-border);
    border-radius: 8px;
    resize: vertical;
}

.sales-card--modal .sales-control-wrap input::placeholder,
.sales-card--modal .sales-control-wrap textarea::placeholder {
    color: var(--contact-modal-input-placeholder);
}

.sales-card--modal .sales-control-wrap input:focus,
.sales-card--modal .sales-control-wrap textarea:focus {
    border-color: var(--contact-modal-brand);
    box-shadow: 0 0 0 3px var(--contact-modal-focus-ring);
    background: #fff;
}

.sales-card--modal .sales-control-wrap input.is-invalid,
.sales-card--modal .sales-control-wrap textarea.is-invalid {
    border-color: rgba(166, 62, 42, 0.45);
    box-shadow: 0 0 0 4px rgba(166, 62, 42, 0.12);
}

.sales-card--modal .sales-select-wrap {
    z-index: 2;
}

.sales-card--modal .sales-select-trigger {
    font: inherit;
    font-size: 13.3333px;
    display: flex;
    width: 100%;
    height: 65.7031px;
    min-height: 66px;
    align-items: stretch;
    justify-content: space-between;
    padding: 0;
    border: 1px solid rgba(17, 38, 67, 0.12);
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 248, 252, 0.96) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 12px 28px rgba(17, 38, 67, 0.06);
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.sales-card--modal .sales-select-trigger:hover {
    border-color: rgba(0, 67, 92, 0.2);
}

.sales-card--modal .sales-select-trigger:focus-visible {
    border-color: var(--contact-modal-brand);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84), 0 0 0 4px rgba(0, 67, 92, 0.1), 0 16px 32px rgba(17, 38, 67, 0.08);
    outline: none;
}

.sales-card--modal .sales-select-wrap.is-open .sales-select-trigger {
    border-color: var(--contact-modal-brand);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.sales-card--modal .sales-select-wrap.is-invalid .sales-select-trigger {
    border-color: rgba(166, 62, 42, 0.45);
    box-shadow: 0 0 0 4px rgba(166, 62, 42, 0.12);
}

.sales-card--modal .sales-select-copy {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
    padding: 10px 13px 10px 16px;
}

.sales-card--modal .sales-select-value {
    font-family: "Inter", Arial, sans-serif;
    font-size: 15.68px;
    font-weight: 600;
    line-height: 19.6px;
    color: #73839b;
}

.sales-card--modal .sales-select-value.is-placeholder {
    color: #73839b;
}

.sales-card--modal .sales-select-caption {
    font-family: "Inter", Arial, sans-serif;
    font-size: 12.48px;
    line-height: 18.096px;
    color: #6b7280;
}

.sales-card--modal .sales-select-side {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 0 16px 0 14px;
}

.sales-card--modal .sales-select-side::before {
    content: "";
    position: absolute;
    top: 12px;
    bottom: 12px;
    left: 0;
    width: 1px;
    background: rgba(17, 38, 67, 0.1);
}

.sales-card--modal .sales-select-chevron,
.sales-card--modal .sales-select-indicator,
.sales-card--modal .sales-select-option-indicator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sales-card--modal .sales-select-indicator,
.sales-card--modal .sales-select-option-indicator {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: rgba(0, 67, 92, 0.08);
    box-shadow: inset 0 0 0 1px rgba(0, 67, 92, 0.08);
}

.sales-card--modal .sales-select-indicator {
    color: rgba(0, 67, 92, 0.36);
    opacity: 0.82;
    transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease, transform 0.15s ease;
}

.sales-card--modal .sales-select-option-indicator {
    color: transparent;
    transition: background-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.sales-card--modal .sales-select-chevron {
    color: var(--contact-modal-brand);
    font-size: 13.44px;
    opacity: 0.74;
    transition: color 0.15s ease, opacity 0.15s ease, transform 0.15s ease;
}

.sales-card--modal .sales-select-wrap.is-open .sales-select-chevron {
    color: var(--contact-modal-brand-hover);
    opacity: 1;
    transform: rotate(180deg);
}

.sales-card--modal .sales-select-wrap.is-selected .sales-select-indicator {
    background: rgba(31, 106, 99, 0.12);
    color: var(--contact-modal-brand);
    opacity: 1;
}

.sales-card--modal .sales-select-wrap.is-selected .sales-select-chevron {
    opacity: 0.92;
}

.sales-card--modal .sales-select-panel {
    position: absolute;
    top: calc(100% + 14px);
    left: 0;
    right: 0;
    overflow: hidden;
    border: 1px solid rgba(17, 38, 67, 0.1);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 24px 60px rgba(17, 38, 67, 0.16);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: 30;
    overscroll-behavior: contain;
}

.sales-card--modal .sales-select-panel[hidden] {
    display: none;
}

.sales-card--modal .sales-select-panel-scroll {
    display: grid;
    gap: 6px;
    max-height: min(26rem, calc(100vh - 9rem));
    padding: 10px 6px 10px 10px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: auto;
}

.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar-track {
    background: #063869;
}

.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar-thumb {
    background: #b1eb2e;
}

.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar-thumb:hover {
    background: #b1eb2e;
}

.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar-button,
.sales-card--modal .sales-select-panel-scroll::-webkit-scrollbar-corner {
    display: none;
    width: 0;
    height: 0;
}

.sales-card--modal .sales-select-option {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 11px 12px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.sales-card--modal .sales-select-option:hover,
.sales-card--modal .sales-select-option:focus-visible {
    background: rgba(0, 67, 92, 0.06);
    box-shadow: inset 0 0 0 1px rgba(0, 67, 92, 0.08);
    outline: none;
}

.sales-card--modal .sales-select-option[aria-selected="true"] {
    background: rgba(0, 67, 92, 0.08);
}

.sales-card--modal .sales-select-option[aria-selected="true"] .sales-select-option-indicator {
    background: rgba(31, 106, 99, 0.12);
    color: var(--contact-modal-brand-deep);
    transform: scale(1.04);
}

.sales-card--modal .sales-select-option-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.sales-card--modal .sales-select-option-title {
    font-family: "Inter Tight", sans-serif;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--contact-modal-brand);
}

.sales-card--modal .sales-select-option-detail {
    font-size: 0.76rem;
    line-height: 1.45;
    color: #6c7b90;
}

.sales-card--modal .sales-message-counter {
    margin: 8px 2px 0;
    font-size: 0.72rem;
    line-height: 1.4;
    color: #9ba9b9;
    text-align: right;
}

.sales-card--modal .sales-message-counter.is-limit {
    color: var(--contact-modal-brand);
}

.sales-card--modal .sales-disclaimer {
    margin: 14px 0 0;
    max-width: 620px;
    font-size: 11px;
    line-height: 1.7;
    color: #6c7b90;
}

.sales-card--modal .sales-disclaimer a {
    color: var(--contact-modal-brand);
    font-weight: 700;
    text-decoration: none;
}

.sales-card--modal .sales-disclaimer a:hover {
    text-decoration: underline;
}

.sales-card--modal .sales-form-message {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 2px;
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 10px;
    line-height: 1.45;
}

.sales-card--modal .sales-form-message i {
    flex: none;
    margin-top: 1px;
    font-size: 11px;
}

.sales-card--modal .sales-form-message-copy {
    display: inline-block;
}

.sales-card--modal .sales-form-message strong {
    font-weight: 700;
}

.sales-card--modal .sales-form-message[hidden] {
    display: none;
}

.sales-card--modal .sales-form-message.is-error {
    color: #8f2d1f;
    background: rgba(245, 111, 84, 0.08);
    border-color: rgba(166, 62, 42, 0.16);
}

.sales-card--modal .sales-form-message.is-attention {
    color: var(--contact-modal-brand);
    background: rgba(0, 67, 92, 0.08);
    border-color: rgba(0, 67, 92, 0.16);
}

.sales-card--modal .sales-actions {
    display: grid;
    grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
    gap: 16px 24px;
    align-items: start;
    margin-top: 22px;
    padding-top: 6px;
}

.sales-card--modal .sales-actions::before {
    content: "";
}

.sales-card--modal .sales-actions-note {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 0.9rem;
    color: var(--contact-modal-brand);
}

.sales-card--modal .sales-actions-note i {
    font-size: 1rem;
    opacity: 0.8;
}

.sales-card--modal .sales-submit-button {
    min-width: 148px;
    min-height: 48px;
    padding: 12px 24px;
    border: 0;
    border-radius: 10px;
    background: #07386b;
    box-shadow: 0 2px 14px rgba(7, 56, 107, 0.22);
    color: #fff;
    font-family: Inter, "Inter Tight", sans-serif;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    justify-self: start;
    transition: background-color 0.2s ease, transform 0.14s ease, box-shadow 0.2s ease, opacity 0.15s ease;
}

.sales-card--modal .sales-submit-button:hover,
.sales-card--modal .sales-submit-button:focus-visible {
    background: #0f4c90;
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(7, 56, 107, 0.24);
    outline: none;
}

@media (max-width: 960px) {
    .contact-sales-modal__shell {
        padding: 24px 16px;
        align-items: flex-start;
    }

    .sales-card--modal {
        padding: 40px 24px 28px;
    }

    .sales-card--modal .sales-field-grid {
        grid-template-columns: minmax(150px, 180px) minmax(0, 1fr);
        gap: 14px 18px;
    }

    .sales-card--modal .sales-actions {
        grid-template-columns: minmax(150px, 180px) minmax(0, 1fr);
        gap: 14px 18px;
    }
}

@media (max-width: 720px) {
    .contact-sales-modal__shell {
        padding: 16px 10px;
    }

    .contact-sales-modal__close {
        top: 14px;
        right: 14px;
        width: 40px;
        height: 40px;
    }

    .sales-card--modal {
        padding: 52px 18px 22px;
        border-radius: 22px;
    }

    .sales-card--modal .sales-lead br {
        display: none;
    }

    .sales-card--modal .sales-field-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .sales-card--modal .sales-label,
    .sales-card--modal .sales-label-group {
        padding-top: 0;
    }

    .sales-card--modal .sales-select-caption {
        font-size: 0.78rem;
    }

    .sales-card--modal .sales-actions {
        display: flex;
        grid-template-columns: 1fr;
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .sales-card--modal .sales-actions::before {
        display: none;
    }

    .sales-card--modal .sales-submit-button {
        width: 100%;
        justify-self: stretch;
    }

    .sales-card--modal .sales-actions-note {
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .sales-card--modal {
        padding: 38px 16px 20px;
        border-radius: 18px;
    }

    .sales-card--modal .sales-title {
        font-size: 1.48rem;
    }

    .sales-card--modal .sales-label,
    .sales-card--modal .sales-select-value {
        font-size: 0.94rem;
    }

    .sales-card--modal .sales-detail,
    .sales-card--modal .sales-disclaimer {
        font-size: 0.78rem;
    }

    .sales-card--modal .sales-control-wrap input {
        min-height: 54px;
        padding-inline: 15px;
    }

    .sales-card--modal .sales-select-trigger {
        min-height: 84px;
    }
}
