/* =========================================================
   MOZGO SERVICE MODAL — DESKTOP FINAL
========================================================= */

.mozgo-service-choice-modal {
    box-sizing: border-box !important;
    padding: 24px !important;
}

/* Caixa central */
.mozgo-service-choice-modal .modal-dialog {
    width: calc(100% - 48px) !important;
    max-width: 680px !important;

    margin: 72px auto 30px !important;
    padding: 0 !important;

    transform: none !important;
}

.mozgo-service-choice-modal .modal-content,
.mozgo-service-choice-modal .mozgo-service-content {
    position: relative !important;

    display: block !important;

    width: 100% !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 32px 34px 34px !important;

    overflow: hidden !important;

    border: 0 !important;
    border-radius: 20px !important;

    background: #ffffff !important;

    box-sizing: border-box !important;

    box-shadow:
        0 28px 75px rgba(0, 0, 0, .27) !important;
}

/* =========================================================
   REMOVER POSICIONAMENTOS ANTIGOS
========================================================= */

.mozgo-service-choice-modal .modal-header,
.mozgo-service-choice-modal .modal-body,
.mozgo-service-choice-modal .modal-footer,
.mozgo-service-choice-modal .mozgo-service-title-wrap,
.mozgo-service-choice-modal .mozgo-service-sections-wrap {
    position: static !important;

    display: block !important;

    width: 100% !important;
    min-height: 0 !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;

    border: 0 !important;
    background: transparent !important;

    box-sizing: border-box !important;
}

/* Remover linhas ou elementos decorativos antigos */
.mozgo-service-choice-modal .modal-header::before,
.mozgo-service-choice-modal .modal-header::after,
.mozgo-service-choice-modal .modal-body::before,
.mozgo-service-choice-modal .modal-body::after {
    display: none !important;
    content: none !important;
}

/* Texto pequeno MozGo */
.mozgo-service-choice-modal
.mozgo-service-brand-hidden {
    display: none !important;
}

/* Botões de fechar antigos */
.mozgo-service-choice-modal
.mozgo-service-original-close {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* =========================================================
   TÍTULO E DESCRIÇÃO
========================================================= */

.mozgo-service-choice-modal
.mozgo-service-main-title {
    position: static !important;

    display: block !important;

    width: calc(100% - 54px) !important;

    top: auto !important;
    left: auto !important;

    margin: 0 0 7px !important;
    padding: 0 !important;

    transform: none !important;

    color: #172a2f !important;

    font-size: 28px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;

    text-align: left !important;

    overflow: visible !important;
}

.mozgo-service-choice-modal
.mozgo-service-description {
    position: static !important;

    display: block !important;

    width: 100% !important;

    margin: 0 0 28px !important;
    padding: 0 !important;

    transform: none !important;

    color: #748286 !important;

    font-size: 14px !important;
    line-height: 1.5 !important;

    text-align: left !important;
}

/* =========================================================
   SELECIONAR SECÇÕES
========================================================= */

.mozgo-service-choice-modal
.mozgo-service-sections-title {
    position: static !important;

    display: block !important;

    width: calc(100% + 68px) !important;

    top: auto !important;
    left: auto !important;

    margin:
        0 -34px 28px !important;

    padding:
        18px 34px !important;

    transform: none !important;

    border-top:
        1px solid #e8eeee !important;

    border-bottom:
        1px solid #e8eeee !important;

    background: #ffffff !important;
    color: #172a2f !important;

    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: center !important;

    overflow: visible !important;
}

/* =========================================================
   OPÇÕES
========================================================= */

.mozgo-service-choice-modal
.mozgo-service-options-row {
    display: flex !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    align-items: stretch !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;

    gap: 15px !important;
}

.mozgo-service-choice-modal
.mozgo-service-options-row
> [class*="col-"] {
    flex: 0 0 auto !important;

    width: auto !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

.mozgo-service-choice-modal
.mozgo-service-option {
    position: relative !important;

    display: flex !important;

    width: 128px !important;
    min-width: 128px !important;
    min-height: 118px !important;

    margin: 0 !important;
    padding: 15px 9px 12px !important;

    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;

    border:
        1px solid #dce5e5 !important;

    border-radius: 13px !important;

    background: #ffffff !important;

    box-sizing: border-box !important;

    text-align: center !important;

    box-shadow:
        0 7px 20px rgba(0, 0, 0, .07) !important;

    transform: none !important;
}

.mozgo-service-choice-modal
.mozgo-service-option:hover {
    border-color: #16827f !important;

    transform:
        translateY(-3px) !important;

    box-shadow:
        0 11px 25px rgba(0, 0, 0, .11) !important;
}

.mozgo-service-choice-modal
.mozgo-service-option.is-selected {
    border-color: #16827f !important;
    background: #f4fbfa !important;
}

.mozgo-service-choice-modal
.mozgo-service-option img {
    display: block !important;

    width: 50px !important;
    height: 50px !important;

    max-width: 50px !important;

    margin: 0 auto 10px !important;

    object-fit: contain !important;

    transform: none !important;
}

/* =========================================================
   BOTÃO FECHAR
========================================================= */

.mozgo-service-modal-close {
    position: absolute !important;

    top: 16px !important;
    right: 16px !important;

    z-index: 100 !important;

    display: flex !important;

    width: 39px !important;
    height: 39px !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 0 2px !important;

    border:
        1px solid #dce5e5 !important;

    border-radius: 50% !important;

    background: #ffffff !important;
    color: #355050 !important;

    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 1 !important;

    cursor: pointer !important;

    box-shadow:
        0 5px 15px rgba(0, 0, 0, .12) !important;
}

.mozgo-service-modal-close:hover {
    border-color: #16827f !important;
    background: #16827f !important;
    color: #ffffff !important;
}

/* Fundo escuro */
.modal-backdrop.show {
    opacity: .56 !important;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .mozgo-service-choice-modal {
        padding: 12px !important;
    }

    .mozgo-service-choice-modal
    .modal-dialog {
        width: 100% !important;
        max-width: 500px !important;

        margin: 20px auto !important;
    }

    .mozgo-service-choice-modal
    .modal-content,
    .mozgo-service-choice-modal
    .mozgo-service-content {
        padding:
            25px 18px 25px !important;

        border-radius: 17px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-main-title {
        width: calc(100% - 48px) !important;
        font-size: 23px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-description {
        margin-bottom: 23px !important;
        font-size: 13px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-sections-title {
        width: calc(100% + 36px) !important;

        margin:
            0 -18px 22px !important;

        padding:
            15px 18px !important;

        font-size: 18px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-options-row {
        gap: 8px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-option {
        width: 94px !important;
        min-width: 94px !important;
        min-height: 102px !important;

        padding:
            12px 5px 9px !important;
    }

    .mozgo-service-choice-modal
    .mozgo-service-option img {
        width: 43px !important;
        height: 43px !important;
    }

    .mozgo-service-modal-close {
        top: 12px !important;
        right: 12px !important;

        width: 35px !important;
        height: 35px !important;
    }
}
