@charset "UTF-8";

/* Paleta de cores */
    :root {
        --cor_primaria: #eeb221;
        --cor_primaria_aux: #ffc559;

        --cor_secundaria_1: #1937AC;
        --cor_secundaria_2: #FF60A4;
        --cor_secundaria_3: #8666C6;

        --cor_secundaria_1_aux: #00FFA0;
        --cor_secundaria_2_aux: #FFBCFF;
        --cor_secundaria_3_aux: #B5A1E5;
        
        --cor_fundo: #F9F9F9;
        --cor_fundo_aux: #EAEAEA;
        --cor_texto: #111821;
        --cor_texto_aux: #111111;

        --cor_tema: #ffffff;
        --cor_tema_transparente: #ffffff44;
        --cor_contra_tema: #000000;
        --cor_contra_tema_transparente: #00000044;

        --cor_card: #ff6600;
        --cor_cardhub: #52a9fa;
        --cor_cardway: #f4035c;

        --cor_sucesso: #309f49;
        --cor_sucesso_fundo: #cdfac2;
        --cor_erro: #e10000;
        --cor_erro_fundo: #f3d9d9;
    }

/* Layout */

    body {
        color: var(--cor_fundo);
        background-color: var(--cor_texto);
        box-sizing: border-box;
        font-family: 'Poppins', 'Segoe UI', Helvetica, Arial, sans-serif;
        font-size: 16px;
        margin: 0px;
    }

    img {
        width: 100%;
        height: auto;
    }

    input, textarea {
        padding: 5px 15px;
        border-radius: 10px;
        width: 100%;
        box-sizing: border-box;
        background-color: var(--cor_fundo);
        color: var(--cor_texto);
        font-family: 'Poppins', 'Segoe UI', Helvetica, Arial, sans-serif;
        resize: none;

        font-size: 0.85em;
        font-weight: 400;
        padding: 8px 15px 8px 15px;
    }


    /* Classes de uso geral */
    .display_none {
        display: none !important;
    }

    .hover_scale_more {
        transition: transform ease-in-out 0.2s;
    }
    .hover_scale_more:hover {
        transform: scale(1.1);
    }

    .overflow_hidden {
        overflow: hidden !important;
    }

    .layout_fundo {
        background-color: var(--cor_fundo);
        background-image: url('./../imagem/loja_do_cardoso/pattern_ldc_transparente_preto.svg');
        background-repeat: repeat;
        background-position: 0% 0%;
        background-size: 900px 900px;
        padding: 0.1px;
        box-sizing: border-box;
    }
    .layout_padding {
        box-sizing: border-box;
        margin: auto;
        padding-left: 50px;
        padding-right: 50px;
        width: 100%;
        max-width: 1000px;
    }

    .scrollbar_personalizada::-webkit-scrollbar {
        width: 7px;
        height: 8px;
        background-color: var(--cor_tema_transparente);
    }
    .scrollbar_personalizada::-webkit-scrollbar-thumb {
        background-color: var(--cor_primaria);
    }

    .titulo_pixel_art {
        color: var(--cor_fundo);
        text-shadow: 
            0px 0px 3px var(--cor_secundaria_1), 
            0px 0px 3px var(--cor_secundaria_1), 
            0px 0px 3px var(--cor_secundaria_1),
            0px 0px 3px var(--cor_secundaria_1),
            0px 0px 3px var(--cor_secundaria_1)
        ;
    }

    .modal {
        position: relative;
        z-index: 2;
    }
    .modal .modal_fundo {
        position: fixed;
        top: 0px;
        left: 0px;
        width: 100%;
        height: 100vh;
        background-color: var(--cor_contra_tema_transparente);
    }
    .modal .modal_corpo {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: var(--cor_texto_aux);
        color: var(--cor_fundo);
        padding: 40px 10px 40px 40px;
        border-radius: 40px;
        overflow: auto;
        box-shadow: 0px 0px 2px 0px var(--cor_primaria);
        box-sizing: border-box;
        width: max-content;
        max-width: 650px;

        animation-name: modal_surgimento;
        animation-duration: 0.3s;
        animation-delay: 0s;
        animation-iteration-count: 1;
        animation-timing-function: ease;
        animation-fill-mode: none;
    }
    .modal .layout_fundo {
        background-image: url('./../imagem/loja_do_cardoso/pattern_ldc_transparente_branco.svg');
    }
    .modal .modal_conteudo {
        max-height: 65vh;
        overflow: auto;
        box-sizing: border-box;
        padding-right: 40px;
        padding-left: 2px;
    }
    .modal .modal_btn_fechar {
        width: 20px;
        position: absolute;
        top: 40px;
        right: 28px;
        cursor: pointer;
    }
    .modal .modal_btn_fechar img {
        width: 100%;
        height: auto;
    }
    
    @keyframes modal_surgimento {
        0% {
            transform: translate(-50%, -175%);
        }
        100% {
            transform: translate(-50%, -50%);
        }
    }

    .loading_spinner {
        width: 40px;
        height: 40px;
        border: 4px solid var(--cor_contra_tema_transparente);
        border-top: 4px solid var(--cor_primaria);
        border-radius: 50%;
        animation: spinner_rotacao 1s linear infinite;
        margin: 0 auto 0px auto;
    }
    .return_request_error p,
    .return_request_error_message {
        margin: 5px 5px 5px 0px;
        text-align: justify;
        color: var(--cor_erro);
        font-size: 0.75em;
        font-weight: 400;
        background-color: var(--cor_erro_fundo);
        border-left: 2px solid var(--cor_erro);
        padding: 2px 5px;
        box-sizing: border-box;
    }
    input[type="text"].return_request_error_input,
    input[type="number"].return_request_error_input,
    input[type="tel"].return_request_error_input,
    input[type="mail"].return_request_error_input,
    input[type="password"].return_request_error_input {
        border: 2px solid var(--cor_erro);
    }
    textarea.return_request_error_input {
        border: 1px solid var(--cor_erro);
    }

    /* Modelo de produto */
    .layout_produto {
        background-color: var(--cor_texto);
        /* box-shadow: 0px 0px 10px var(--cor_contra_tema_transparente); */
        display: block;
        width: 100%;
        height: auto;
        min-width: 120px;
        max-width: 350px;
        overflow: hidden;
        border-radius: 16px;
        text-decoration: none;
        cursor: pointer;
        margin: auto;
    }
    .layout_produto:hover .layout_produto_cabecalho img,
    .layout_produto:hover .layout_produto_corpo button {
        scale: 1.1;
    }
    .layout_produto .layout_produto_cabecalho {
        position: relative;
        background-color: var(--cor_fundo);
        background-color: var(--cor_texto);
        overflow: hidden;
        z-index: 0;
        margin: -1px 0px 0px -1px;
    }
    .layout_produto .layout_produto_cabecalho::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 1;
        width: 40px;
        height: 40px;
        border: 4px solid var(--cor_contra_tema_transparente);
        border-top: 4px solid var(--cor_primaria);
        border-radius: 50%;
        animation: spinner_rotacao 1s linear infinite;
        margin: 0px;
        translate: -50% -50%;
    }
    .layout_produto .layout_produto_cabecalho .layout_produto_volto_logo {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100%;
    }
    .layout_produto .layout_produto_cabecalho img {
        display: block;
        width: 101%;
        transition: all 0.15s ease-in-out;
        position: relative;
        z-index: 1;
    }
    .layout_produto .layout_produto_cabecalho_marca {
        position: absolute;
        bottom: 5px;
        left: 15px;
        max-height: 30px;
        max-width: 50px;
        width: 100%;
    }
    .layout_produto .layout_produto_cabecalho_marca img {
        height: 100%;
        width: auto;
    }
    .layout_produto .layout_produto_corpo {
        padding: 10px 15px 15px 15px;
    }
    .layout_produto .layout_produto_corpo h3 {
        margin: 0px;
        font-size: 1em;
        font-size: 85%;
        font-weight: 400;
        color: var(--cor_fundo);

        display: -webkit-box;
        line-clamp: 3;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;

        line-height: 1.2em;         /* altura da linha */
        min-height: calc(1.2em * 3); /* garante 2 linhas fixas */
    }
    .layout_produto .layout_produto_corpo p {
        margin: 0px;
        color: #b3b5b2;
        font-size: 0.6em;
    }
    .layout_produto .layout_produto_corpo p span {
        color: var(--cor_primaria_aux);
        font-size: 1.7em;
        font-size: 170%;
        font-weight: 600;
        word-wrap: normal;
    }
    .layout_produto .layout_produto_corpo button {
        color: #f9f9f4; 
        background-color: var(--cor_texto); 
        border: 1px solid var(--cor_primaria_aux);
        border-radius: 8px;
        padding: 3px 10px;
        font-size: 0.8em;
        font-weight: 600;
        display: block;
        width: fit-content;
        margin: 5px auto 0px auto;
        cursor: pointer;
        transition: all 0.15s ease-in-out;
        text-decoration: none;
        text-transform: uppercase;
    }
    .layout_produto .layout_produto_corpo button:hover {
        background-color: var(--cor_primaria);
        color: var(--cor_texto);
    }

    @media all and (max-width: 700px) {
        .modal .modal_corpo {
            max-width: 95%;
        }
    }
    @media all and (max-width: 500px) {
        .layout_padding {
            padding-left: 10px;
            padding-right: 10px;
        }
    }

    #pagina_principal {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;

        align-items: normal;
        align-content: stretch;
        justify-content: space-between;

        background-color: var(--cor_fundo);
        color: var(--cor_texto);
        box-shadow: 0px 0px 15px var(--cor_contra_tema_transparente);

        min-height: 100vh;
        width: 100%;
        margin: auto;

        position: relative;
        z-index: 1;
    }

    /* Pre-cabecalho */
        #pagina_principal .pre_cabecalho {
            height: 10px;
            background-color: var(--cor_texto_aux);
            position: relative;
            z-index: 10;
        }



    /* Cabeçalho */
        #pagina_principal #cabecalho {
            background-color: var(--cor_texto_aux);
            color: var(--cor_fundo);
            box-shadow: 5px 5px 15px 0px var(--cor_contra_tema_transparente);
            box-sizing: border-box;
            width: 100%;
            padding: 5px 30px 10px 30px;
            border-bottom: 2px solid var(--cor_primaria);
            margin-top: -1px;
            position: sticky;
            top: -1px;
            left: 0px;
            z-index: 10;
            transition: transform 0.3s ease-in-out;
            max-height: calc(100vh - 10px);
            overflow: auto;

            display: flex;
            flex-direction: column;
        }
        /* Esconder/Revelar o cabecalho ao rolar a página, utilizado no js em main_layout.js */
        #cabecalho.esconder_cabecalho {
            transform: translateY(-200%) !important;
        }

        #cabecalho .cabecalho_container {
            flex-shrink: 0;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            justify-content: space-between;
            align-items: center;
            gap: 0px;
            width: 100%;
            max-width: 1000px;
            margin: 0px auto;
        }
        #cabecalho .cabecalho_container_divisao {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            justify-content: center;
            align-items: center;
        }

        #cabecalho .cabecalho_logo {
            width: 100%;
            max-width: 170px;
        }
        #cabecalho .cabecalho_logo img {
            width: 100%;
            height: auto;
        }

        #cabecalho .cabecalho_busca {
            padding: 0px 20px 0px 35px;
            width: 100%;
            text-align: center;
            box-sizing: border-box;
        }
        #cabecalho .cabecalho_busca_input {
            width: 100%;
            max-width: 400px;
            position: relative;
            margin: auto;
        }
        #cabecalho .cabecalho_busca_input input {
            border: 2px solid var(--cor_tema_transparente);
            border-radius: 16px;
            background-color: transparent;
            color: var(--cor_fundo);
            font-size: 1em;
            padding: 5px 50px 5px 20px;
            width: 100%;
            height: 40px;
            box-sizing: border-box;
        }
        #cabecalho .cabecalho_busca_lupa {
            position: absolute;
            top: calc(50% + 1px);
            right: 12px;
            transform: translateY(-50%);
            width: 24px;
            cursor: pointer;
            background-color: transparent;
            border: 0px;
            padding: 0px;
        }
        #cabecalho .cabecalho_busca_lupa img {
            width: 100%;
            height: auto;
            filter: brightness(0) invert(1) opacity(0.5);
        }
        #cabecalho .cabecalho_busca input:focus-visible {
            border-color: var(--cor_primaria) !important;
            outline: none;
        }
        #cabecalho .cabecalho_busca_input:has(input:focus-visible) .cabecalho_busca_lupa img {
            filter: none;
        }

        #cabecalho .cabecalho_menu_navegacao {
            width: 100%;
        }
        
        #cabecalho .cabecalho_menu_navegacao nav {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            justify-content: space-between;
            align-items: normal;
            gap: 5px;
        }
        #cabecalho .cabecalho_menu_navegacao nav a,
        #cabecalho .cabecalho_menu_navegacao nav span {
            display: inline-block;
            color: var(--cor_fundo);
            text-decoration: none;
            padding: 15px 10px;
            cursor: pointer;
            position: relative;
            text-transform: uppercase;
            width: max-content;
            font-weight: 600;
            font-size: 0.85em;
            user-select: none;
        }

        #cabecalho .cabecalho_menu_navegacao nav a::after,
        #cabecalho .cabecalho_menu_navegacao nav span::after {
            content: '';
            display: block;
            position: absolute;
            bottom: 10px;
            left: 50%;
            transform: translateX(-50%);
            width: 0%;
            max-width: calc(100% - 20px);
            padding: 2px 0px 2px 0px;
            background-color: var(--cor_primaria);
            transition: width 0.2s linear;
        }
        #cabecalho .cabecalho_menu_navegacao nav a:hover::after,
        #cabecalho .cabecalho_menu_navegacao nav span:hover::after,
        #cabecalho .cabecalho_menu_navegacao nav .cabecalho_menu_navegacao_link_ativo::after {
            width: 100%;
        }

        #cabecalho .cabecalho_menu_btn {
            display: none;
            filter: brightness(0) invert(1);
            cursor: pointer;
        }
        #cabecalho .cabecalho_menu_btn > .cabecalho_menu_btn_img {
            width: 38px;
            margin: 10px auto 0px auto;
        }
        #cabecalho .cabecalho_menu_btn_img img {
            width: 100%;
            height: auto;
        }



        #pagina_principal #cabecalho_opcoes {
            overflow: hidden;
            flex-grow: 1;
            max-height: 0;
            transition: max-height 0.4s ease;
        }
        #pagina_principal #cabecalho_opcoes.aberto {
            overflow: auto;
        }

        #cabecalho_opcoes .cabecalho_busca_detalhes {
            display: none;
        }
        #cabecalho_opcoes .cabecalho_busca_detalhes.cabecalho_busca_detalhes_mostrar {
            display: block;
        }

        #cabecalho_opcoes .cabecalho_categorias_desktop {
            display: none;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop.cabecalho_categorias_mostrar {
            display: block;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao {
            /* display: grid;
            grid-template-columns: repeat(4, 1fr); */

            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            
            justify-content: space-around;
            gap: 30px 20px;
            
            max-width: 800px;
            padding: 25px 20px;
            margin: auto;
            box-sizing: border-box;
            
            text-align: center;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a {
            display: flex;
            flex-wrap: nowrap;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 10px;
            width: 100%;
            max-width: 20%;
            min-width: 20%;
            cursor: pointer;
            box-sizing: border-box;
            padding: 5px 15px;
            text-decoration: none;
            color: var(--cor_fundo);
            text-transform: uppercase;
            font-size: 0.8em;
            font-weight: 600;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a > span {
            position: relative;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a > span::after {
            content: '';
            display: block;
            position: absolute;
            bottom: 1px;
            left: 50%;
            transform: translateX(-50%);
            width: 0%;
            max-width: calc(100%);
            padding: 1px 0px 1px 0px;
            background-color: var(--cor_primaria);
            transition: width 0.2s linear;
            width: 0%;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a:hover > span::after {
            width: 100%;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao img {
            display: block;
            margin: auto;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao .img_altura_maior {
            height: 100%;
            width: auto;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a > div {
            height: 25px;
            width: 25px;
            flex: none;
        }

        #cabecalho_opcoes .cabecalho_marcas_desktop {
            display: none;
            flex-wrap: wrap;
            flex-direction: row;
            gap: 40px;
            justify-content: center;
            max-width: 1000px;
            margin: 30px auto 15px auto;
            align-items: baseline;
        }
        #cabecalho_opcoes .cabecalho_marcas_desktop.cabecalho_marcas_mostrar {
            display: flex;
        }
        
        #cabecalho_opcoes .cabecalho_marcas_desktop .cabecalho_marca_img {
            display: block;
            width: 150px;
            background-color: var(--cor_fundo);
            border-radius: 8px;
            padding: 5px 10px;
            border: 2px solid var(--cor_fundo_aux);
            transition: all 0.3s ease-in-out;
            box-sizing: border-box;
        }
        #cabecalho_opcoes .cabecalho_marcas_desktop .cabecalho_marca_img:hover {
            border: 2px solid var(--cor_primaria);
            transform: scale(1.2);
        }
        #cabecalho_opcoes .cabecalho_marcas_desktop .cabecalho_marca_img img {
            width: 100%;
            height: auto;
        }

        #cabecalho_opcoes .cabecalho_menu_navegacao_btn {
            display: none;
        }



    /* Fundo permitindo o cabeçalho */
        #pagina_principal #cabecalho_fundo_clicavel {
            position: fixed;
            top: 0px;
            left: 0px;
            width: 100%;
            height: 100%;
            z-index: 9;
            background-color: var(--cor_contra_tema_transparente);
        }



    /* Formulário Venda Conosco  */
        #venda_conosco {
            position: relative;
            z-index: 11;
        }
            
        #venda_conosco .venda_conosco_fundo {
            position: fixed;
            top: 0px;
            left: 0px;
            height: 100vh;
            width: 100vw;
            background-color: var(--cor_contra_tema_transparente);
        }

        #venda_conosco .venda_conosco_conteudo {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background-color: var(--cor_texto_aux);
            color: var(--cor_fundo);
            padding: 40px 10px 40px 40px;
            border-radius: 40px;
            overflow: auto;
            box-shadow: 0px 0px 2px 0px var(--cor_primaria);
            box-sizing: border-box;
            width: 95%;
            max-width: 650px;

            animation-name: modal_surgimento;
            animation-duration: 0.3s;
            animation-delay: 0s;
            animation-iteration-count: 1;
            animation-timing-function: ease;
            animation-fill-mode: none;
        }
        @keyframes modal_surgimento {
            0% {
                transform: translate(-50%, -175%);
            }
            100% {
                transform: translate(-50%, -50%);
            }
        }
        #venda_conosco .venda_conosco_form > p {
            text-align: center;
            font-size: 0.85em;
            font-weight: 600;
            margin-top: 5px;
            margin-bottom: 20px;
        }
        #venda_conosco .venda_conosco_form {
            max-height: 65vh;
            overflow: auto;
            box-sizing: border-box;
            padding-right: 40px;
            padding-left: 2px;
        }

        #venda_conosco .layout_fundo {
            background-image: url('./../imagem/loja_do_cardoso/pattern_ldc_transparente_branco.svg');
        }

        #venda_conosco .venda_conosco_fechar {
            width: 20px;
            position: absolute;
            top: 40px;
            right: 28px;
            cursor: pointer;
        }
        #venda_conosco .venda_conosco_fechar img {
            width: 100%;
            height: auto;
        }

        #venda_conosco .venda_conosco_titulo {
            max-width: 300px;
            margin: 0px auto;
        }
        #venda_conosco .venda_conosco_titulo h2 {
            margin: 0px;
            display: none;
        }
        #venda_conosco .venda_conosco_titulo img {
            width: 100%;
            height: auto;
        }

        #venda_conosco .venda_conosco_divisao {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            gap: 10px;
        }
        #venda_conosco .venda_conosco_divisao > div {
            width: 50%;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
        }
        #venda_conosco .venda_conosco_divisao > div > div {
            margin: 2px 0px;
        }
        #venda_conosco textarea,
        #venda_conosco input {
            font-size: 0.85em;
            font-weight: 400;
            padding: 8px 15px 8px 15px;
        }
        #venda_conosco textarea {
            min-height: 40px;
            height: 128px;
        }
        #venda_conosco button[type="submit"] {
            display: block;
            margin: 10px auto 0px auto;
            background-color: transparent;
            border: none;
            color: var(--cor_fundo);
            max-width: 110px;
            width: 100%;
        }
        #venda_conosco button[type="submit"] img {
            width: 100%;
            height: auto;
            font-size: 1.4em;
            font-weight: 700;
            cursor: pointer;
        }
        @media all and (max-width: 500px) {
            #venda_conosco .venda_conosco_divisao {
                flex-wrap: wrap;
                gap: 0px;
            }
            #venda_conosco .venda_conosco_divisao > div {
                width: 100%;
            }
        }


    /* Corpo */
        #pagina_principal #corpo_principal {
            background-color: var(--cor_fundo);
            color: var(--cor_texto);
            flex-grow: 1;
            width: 100%;
            box-sizing: border-box;
            margin: auto;
        }



    /* Rodapé */
        #pagina_principal #rodape {
            box-shadow: 0px 0px 15px -5px var(--cor_contra_tema_transparente);
            width: 100%;
            box-sizing: border-box;

            background-color: var(--cor_texto_aux);
            color: var(--cor_fundo);
        }
            #rodape .rodape_cabecalho {
                border-top: 2px solid var(--cor_primaria);
                border-bottom: 2px solid var(--cor_primaria);
                padding-top: 20px;
                padding-bottom: 20px;
            }
            #rodape .rodape_cabecalho_container {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                justify-content: space-between;
                align-items: end;
                gap: 15px;
            }

            #rodape .rodape_cabecalho_img {
                width: 150px;
            }
            #rodape .rodape_cabecalho img {
                width: 100%;
                height: auto;
            }
            
            #rodape .rodape_cabecalho_siga {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: 15px;
                align-items: center;
                align-self: stretch;
            }
            #rodape .rodape_cabecalho_siga h2 {
                margin: -8px 0px 0px 0px;
                font-weight: 500;
                font-size: 1.1em;
            }
            #rodape .rodape_cabecalho_siga > div {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                gap: 10px;
                justify-content: left;
            }
            #rodape .rodape_cabecalho_siga a {
                width: 30px;
                display: block;
            }

            #rodape .rodape_corpo_container {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                gap: 10px;
                justify-content: space-between;
                padding-top: 10px;
                padding-bottom: 10px;
            }

            #rodape .rodape_corpo_item_1 {
                box-sizing: border-box;
                width: auto;
                max-width: 200px;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: 2px;
            }
            #rodape .rodape_corpo_item_1 > * {
                display: block;
                text-decoration: none;
                color: var(--cor_fundo);
                font-size: 1.1em;
                font-weight: 500;
                padding: 3px 0px;
                cursor: pointer;
                width: fit-content;
                white-space: nowrap;
            }
            #rodape .rodape_corpo_item_1 > *:hover {
                color: var(--cor_primaria);
            }
            #rodape .rodape_corpo_item_1 > *:first-child {
                color: var(--cor_primaria);
                font-size: 1.2em;
            }
            #rodape .rodape_corpo_item_1 > *:first-child:hover {
                color: var(--cor_fundo);
            }

            #rodape .rodape_corpo_item_2 {
                box-sizing: border-box;
                width: auto;
                max-width: 500px;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: 2px;
                margin-left: 65px;
                margin-left: 30px;
            }
            #rodape .rodape_corpo_item_2 > * {
                display: block;
                text-decoration: none;
                color: var(--cor_fundo);
                font-size: 1.1em;
                font-weight: 500;
                padding: 3px 0px;
                margin: 0px;
            }
            #rodape .rodape_corpo_item_2 > *:first-child {
                color: var(--cor_primaria);
                font-size: 1.2em;
                padding-top: 0px;
                padding-bottom: 5px;
            }
            #rodape .rodape_corpo_contato {
                cursor: pointer;
                display: inline-flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                gap: 5px;
                width: max-content;
                max-width: 100%;
                word-break: break-all;
            }
            #rodape .rodape_corpo_contato:hover {
                color: var(--cor_primaria);
            }
            #rodape .rodape_corpo_contato:hover img {
                content: url('./../imagem/logo/whatsapp_amarelo.svg');
            }
            #rodape .rodape_corpo_icone {
                width: 18px;
            }
            #rodape .rodape_corpo_icone img {
                width: 100%;
                height: auto;
            }
            #rodape .rodape_corpo_contato span {
                display: inline-block;
                margin-top: -5px;
            }

            #rodape .rodape_corpo_item_3 {
                box-sizing: border-box;
                width: auto;
                max-width: 260px;
                width: 100%;
            }
            #rodape .rodape_corpo_item_3_container {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: 10px;
                height: fit-content;
                padding-top: 10px;
                align-self: center;
                justify-content: center;
                width: 100%;
            }
            #rodape .rodape_corpo_item_3_container > div {
                width: 100%;
            }
            #rodape .rodape_corpo_marcas {
                width: 125px;
                display: inline-block;
            }
            #rodape .rodape_titulo_marcas h2 {
                display: none;
            }
            #rodape .rodape_corpo_item_3 img {
                width: 100%;
                height: auto;
            }

            #rodape .rodape_marca_mae {
                padding: 20px 0px 30px 0px;
            }
            #rodape .rodape_marca_mae > div {
                text-align: center;
            }
            #rodape .rodape_marca_mae a {
                display: block;
                margin: auto;
                width: 150px;
            }
            #rodape .rodape_marca_mae img {
                width: 100%;
                height: auto;
            }

            #rodape .rodape_copyright {
                text-align: center;
                font-weight: 600;
                border-top: 2px solid var(--cor_texto);
                padding-top: 1px;
                padding-bottom: 1px;
                background-color: var(--cor_fundo);
                color: var(--cor_texto_aux);
            }
            #rodape .rodape_copyright p {
                margin: 5px 0px 10px 0px;
            }

    
    @media all and (max-width: 1000px) {


        #cabecalho .cabecalho_container {
            display: block;
        }
        #cabecalho .cabecalho_container_divisao {
            flex-direction: row-reverse;
            max-width: 800px;
            margin: auto;
        }
        #cabecalho .cabecalho_logo {
            width: 100%;
            margin: 5px auto 10px auto;
            overflow: hidden;
            animation-name: cabecalho_aparecimento;
            animation-timing-function: linear;
            animation-duration: 0.2s;
            animation-delay: 0s;
            animation-iteration-count: 1;
            animation-fill-mode: forwards;
        }
        @keyframes cabecalho_aparecimento {
            0% {
                max-height: 0vh;
                opacity: 0;
                display: none;
            }
            100% {
                display: block;
                opacity: 1;
                max-height: 100vh;
            }
        }
        #cabecalho.cabecalho_grudado .cabecalho_logo {
            /* display: none; */

            animation-name: cabecalho_desaparecimento;
            animation-timing-function: linear;
            animation-duration: 0.2s;
            animation-delay: 0s;
            animation-iteration-count: 1;
            animation-fill-mode: forwards;
            animation-direction: normal;
        }
        @keyframes cabecalho_desaparecimento {
            0% {
                display: block;
                opacity: 1;
                max-height: 50px;
            }
            100% {
                max-height: 0vh;
                opacity: 0;
                display: none;
            }
        }
        #cabecalho .cabecalho_menu {
            width: 20%;
        }
        #cabecalho .cabecalho_busca {
            width: 80%;
            padding: 0px 5px;
        }
        #cabecalho .cabecalho_busca_input input {
            padding: 4px 50px 5px 10px;
            font-size: 1.1em;
            text-overflow: ellipsis;
            font-size: 0.75em;
        }

        #cabecalho .cabecalho_menu_navegacao {
            display: none;
        }

        /* #cabecalho_opcoes .cabecalho_categorias_desktop {
            display: none !important;
        }
        #cabecalho_opcoes .cabecalho_marcas_desktop {
            display: none !important;
        } */

        #cabecalho .cabecalho_menu_btn {
            display: block;
        }

        #cabecalho_opcoes .cabecalho_menu_navegacao_btn {
            display: block;
            border-bottom: 1px solid var(--cor_primaria);
            padding: 10px 20px 10px 20px;
            text-decoration: none;
            color: var(--cor_fundo);
            font-weight: 600;
            margin-right: 24px;
        }
        #cabecalho_opcoes > *:last-child.cabecalho_menu_navegacao_btn {
            border-bottom: none;
            padding-bottom: 0px;
        }

        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao {
            flex-direction: column;
            flex-wrap: nowrap;
            gap: 10px;
            border-left: 1px solid var(--cor_primaria);
            padding: 0px 0px;
            margin: 10px 20px;
        }
        #cabecalho_opcoes .cabecalho_categorias_desktop_divisao > a {
            justify-content: left;
            max-width: 100%;
        }

        #cabecalho_opcoes .cabecalho_marcas_desktop {
            flex-wrap: wrap;
            flex-direction: row;
            gap: 10px;
            margin: 20px auto 10px auto;
            align-items: center;
        }


        #rodape .rodape_cabecalho_container {
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }
        #rodape .rodape_cabecalho_siga {
            align-self: center;
            justify-content: center;
        }
        #rodape .rodape_corpo_container {
            justify-content: space-between;
            flex-direction: column;
            flex-wrap: nowrap;
            max-width: 500px;
            gap: 35px;
        }
        #rodape .rodape_corpo_item_1 {
            max-width: 100%;
        }
        #rodape .rodape_corpo_item_2 {
            max-width: 100%;
            margin-left: 0px;
        }
        #rodape .rodape_corpo_item_3 {
            max-width: 100%;
            margin: auto;
        }
        #rodape .rodape_titulo_marcas h2 {
            display: block;
            color: var(--cor_primaria);
            font-size: 1.2em;
            padding-top: 0px;
            padding-bottom: 5px;
            text-align: left;
            margin-bottom: 5px;
        }
        #rodape .rodape_corpo_marcas {
            width: calc(40% - 4px);
        }
        
    }

    @media all and (max-width: 500px) {
        
        #pagina_principal #cabecalho {
            padding: 5px 10px 10px 10px;
        }

        #rodape .rodape_corpo_container {
            max-width: 100%;
        } 
        
    }


/* Página /produtos */
    .layout_fundo {
        background-color: #eaeaea;
        background-image: url('/assets/imagem/loja_do_cardoso/pattern_ldc_cinza.svg');
    }
    .buscar_produtos_banner {
        background-color: var(--cor_texto_aux);
        background-image: url('/assets/imagem/loja_do_cardoso/pattern_ldc_transparente_branco.svg');
        background-repeat: repeat;
        background-position: 0% 0%;
        background-size: 900px 900px;
        padding: 10px 20px;
    }
    .buscar_produtos_banner .buscar_produtos_banner_titulo {
        max-width: 250px;
        margin: 15px auto;
    }
    .buscar_produtos_banner .buscar_produtos_banner_titulo h2 {
        display: none;
    }
    .buscar_produtos_banner .buscar_produtos_banner_titulo img {
        width: 100%;
        height: auto;
    }
    #buscar_produtos .buscar_produtos_container {
        position: relative;
        margin-top: 30px;
    }
    #buscar_produtos .filtragem_rapida {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: space-between;
        gap: 25px;
    }

    #buscar_produtos .filtragem_rapida_filtros {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: space-between;
        gap: 5px;
        font-weight: 500;
        font-size: 0.7em;
        max-width: 70%;
        width: auto;
        padding-top: 3px;
    }
    #buscar_produtos .filtragem_rapida_filtros .filtragem_rapida_filtros_ativos {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        align-items: flex-start;
        justify-content: left;
        gap: 10px;
    }
    #buscar_produtos .filtragem_rapida_filtros .filtragem_rapida_filtro_ativo {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        gap: 5px;
        background-color: var(--cor_tema);
        color: var(--cor_texto);
        padding: 1px 7px 1px 5px;
        box-sizing: border-box;
        border-radius: 32px;
        cursor: pointer;
    }
    #buscar_produtos .filtragem_rapida_filtros .filtragem_rapida_filtro_ativo_img {
        width: 100%;
        max-width: 5px;
    }

    #buscar_produtos .filtragem_rapida_ordenacao {
        max-width: 35%;
        width: auto;
        margin-left: auto;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container {
        position: relative;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-btn {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;

        background-color: var(--cor_tema);
        color: var(--cor_texto);
        box-sizing: border-box;
        width: 100%;
        padding: 7px 14px 7px 14px;
        border: 1px solid var(--cor_fundo_aux);
        border-radius: 8px;
        
        cursor: pointer;
        
        text-align: left;
        font-size: 0.85em;
        font-weight: 500;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_filtros_mobile {
        display: none;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-texto-alt {
        white-space: nowrap;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-icon {
        width: 20px;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes {
        background-color: var(--cor_tema);
        list-style: none;
        width: 100%;
        max-height: 0;
        padding: 0;
        border: 1px solid var(--cor_fundo_aux);
        border-top: none;
        margin: 0;
        overflow: hidden;
        position: absolute;
        z-index: 2;
        transition: max-height 0.2s ease;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container.open .filtragem_rapida_ordenacao_container-opcoes {
        max-height: 50vh;
        overflow: auto;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes li {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;
        padding: 5px 10px;
        cursor: pointer;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes li img {
        width: 30px;
    }
    #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes li:hover,
    #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes li.selecionado {
        background-color: var(--cor_fundo_aux);
    }

    @media all and (max-width: 1000px) {
        #buscar_produtos .filtragem_rapida_ordenacao {
            display: grid;
            grid-template-columns: repeat(2, minmax(auto, 1fr));
            grid-auto-rows: max-content;
            align-items: center;
            justify-content: space-between;
            gap: 9px;

            max-width: 100%;
            width: 100%;
            margin-left: 0px;
        }

        #buscar_produtos .filtragem_rapida_ordenacao_filtros_mobile {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;

            background-color: var(--cor_tema);
            color: var(--cor_texto);

            box-sizing: border-box;
            width: fit-content;
            padding: 7px 14px 7px 14px;
            border: 1px solid var(--cor_fundo_aux);
            border-radius: 8px;

            font-size: 0.8em;
            font-weight: 500;
            text-align: left;

            cursor: pointer;
        }
        #buscar_produtos .filtragem_rapida_ordenacao_filtros_mobile_img {
            width: 25px;
        }
        #buscar_produtos .filtragem_rapida_ordenacao_filtros_mobile button {
            border: none;
            background-color: transparent;
            font-weight: 700;
        }

        #buscar_produtos .filtragem_rapida_ordenacao_container {
            width: fit-content;
            margin-left: auto;
        }

        #buscar_produtos .filtragem_rapida_ordenacao_container-texto-alt {
            display: none;
        }
        #buscar_produtos .filtragem_rapida_ordenacao_container-opcoes li {
            font-size: 0.75em;
        }
    }
    @media all and (max-width: 500px) {
        #buscar_produtos .filtragem_rapida_ordenacao_filtros_mobile {
            margin: auto;
        }
    }
    #buscar_produtos .buscar_produtos_conteudo {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-around;
        gap: 15px;
        box-sizing: border-box;
        margin-top: 15px;
    }

    #buscar_produtos .buscar_produtos_filtros_modal {
        max-width: 27%;
        width: 100%;
    }
    #buscar_produtos .buscar_produtos_filtros_modal_btn_fechar {
        display: none;
    }

    #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_filtros {
        width: 100%;
        box-sizing: border-box;
    }

    #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_produtos {
        display: grid;
        grid-template-columns: repeat(3, minmax(120px, 250px));
        grid-auto-rows: max-content;
        align-items: flex-start;
        justify-content: center;
        justify-content: space-between;
        gap: 18px;

        width: 100%;
        /* max-width: 73%; */
        
        box-sizing: border-box;
    }

    @media all and (max-width: 1000px) {
        
        #buscar_produtos .buscar_produtos_filtros_modal {
            max-width: 0%;
            z-index: 12;
        }
        #buscar_produtos .buscar_produtos_filtros_modal.buscar_produtos_filtros_modal_fechar {
            display: none;
        }
        #buscar_produtos .buscar_produtos_filtros_modal_fundo {
            position: fixed;
            top: 0px;
            left: 0px;
            width: 100%;
            height: 100%;
            background-color: var(--cor_contra_tema_transparente);
        }
        #buscar_produtos .buscar_produtos_filtros_modal_corpo {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background-color: var(--cor_texto_aux);
            background-image: url('/assets/imagem/loja_do_cardoso/pattern_ldc_transparente_branco.svg');
            color: var(--cor_fundo);
            padding: 40px 10px 40px 40px;
            border-radius: 40px;
            overflow: auto;
            box-shadow: 0px 0px 2px 0px var(--cor_primaria);
            box-sizing: border-box;
            width: max-content;
            max-width: 95%;

            animation-name: modal_surgimento;
            animation-duration: 0.3s;
            animation-delay: 0s;
            animation-iteration-count: 1;
            animation-timing-function: ease;
            animation-fill-mode: none;
        }
        #buscar_produtos .buscar_produtos_filtros_modal_btn_fechar {
            display: block;
            width: 20px;
            position: absolute;
            top: 40px;
            right: 28px;
            cursor: pointer;
        }
        #buscar_produtos .buscar_produtos_filtros_modal_btn_fechar img {
            width: 100%;
            height: auto;
        }
        #buscar_produtos .buscar_produtos_filtros_modal_conteudo {
            max-height: 65vh;
            overflow: auto;
            box-sizing: border-box;
            padding-right: 40px;
            padding-left: 2px;
        }

        #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_filtros {
            padding: 1px;
        }

        #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_produtos {
            max-width: 100%;
            grid-template-columns: repeat(4, minmax(120px, 200px));
        }
    }
    @media all and (max-width: 750px) {
        #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_produtos {
            grid-template-columns: repeat(3, minmax(120px, 200px));
        }
    }
    @media all and (max-width: 650px) {
        #buscar_produtos .buscar_produtos_conteudo .buscar_produtos_produtos {
            grid-template-columns: repeat(2, minmax(120px, 200px));
            justify-content: space-evenly;
        }
    }
    #buscar_produtos .buscar_produtos_paginacao {
        margin-top: 30px;
        margin-bottom: 45px;
        margin: 30px auto 45px auto;
    }
    #buscar_produtos .buscar_produtos_paginacao ul {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: left;
        align-items: center;
        gap: 10px;
        list-style-type: none;
        width: fit-content;
        padding: 0px;
        margin: 0px auto;
    }
    #buscar_produtos .buscar_produtos_paginacao ul li {
        color: var(--cor_texto);
        background-color: var(--cor_fundo_aux);
        border: 2px solid var(--cor_texto);
        padding: 4px 15px;
        font-weight: 600;
        font-size: 1em;
        cursor: pointer;
    }
    #buscar_produtos .buscar_produtos_paginacao ul li.selecionado,
    #buscar_produtos .buscar_produtos_paginacao ul li:hover {
        background-color: var(--cor_primaria);
    }
    #buscar_produtos .buscar_produtos_paginacao .buscar_produtos_paginacao_pontilhados {
        border: none;
        padding: 4px 0px;
        cursor: default;
        background-color: var(--cor_fundo_aux) !important;
    }
    @media all and (max-width: 500px) {
        #buscar_produtos .buscar_produtos_paginacao ul {
            flex-wrap: wrap;
        }
        #buscar_produtos .buscar_produtos_paginacao ul li {
            padding: 2px 6px;
            font-size: 0.9em;
        }
    }
    #buscar_produtos .buscar_produtos_filtros .buscar_produtos_filtro {
        background-color: var(--cor_tema);
        padding: 10px 15px 10px 15px;
        border-radius: 16px;
        margin-bottom: 30px;
        color: var(--cor_texto);
    }
    #buscar_produtos .buscar_produtos_filtros .buscar_produtos_filtro h3 {
        font-size: 1.1em;
        text-transform: uppercase;
        font-weight: 600;
        display: block;
        margin: 0px auto 10px auto;
        border-bottom: 2px solid var(--cor_primaria);
        width: fit-content;
    }

    #buscar_produtos .buscar_produtos_filtros .buscar_produtos_filtro img {
        display: block;
        margin: auto;
    }

    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: left;
        gap: 10px;
        margin-bottom: 5px;
        padding: 6px 15px 3px 10px;
        cursor: pointer;
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao:hover {
        background-color: var(--cor_fundo_aux);
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao.selected .buscar_produtos_filtro_opcao_input {
        border: 2px solid #a7a7a7;
        border-color: var(--cor_primaria);
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao.selected .buscar_produtos_filtro_opcao_input > div {
        background-color: var(--cor_primaria);
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao_input {
        margin-bottom: 5px;
        padding: 2px;
        border-radius: 100%;
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao_input > div {
        padding: 4px;
    }
    #buscar_produtos .buscar_produtos_filtro .buscar_produtos_filtro_opcao_detalhes {
        width: 100%;
    }

    #buscar_produtos .buscar_produtos_filtro_categorias .buscar_produtos_filtro_opcao_detalhes {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 10px;
        align-items: center;
        justify-content: left;
    }
    #buscar_produtos .buscar_produtos_filtro_categorias .buscar_produtos_filtro_opcao_detalhes > div {
        width: 25px;
        height: 35px;
        text-align: center;
        align-content: center;
    }
    #buscar_produtos .buscar_produtos_filtro_categorias .buscar_produtos_filtro_opcao_detalhes > div .img_altura_maior {
        width: auto;
        height: 100%;
    }
    #buscar_produtos .buscar_produtos_filtro_categorias .buscar_produtos_filtro_opcao_detalhes span {
        text-transform: uppercase;
        font-size: 0.8em;
        font-weight: 600;
        white-space: normal;
        word-break: break-word;
    }

    #buscar_produtos .buscar_produtos_filtro_marcas .buscar_produtos_filtro_opcao_detalhes > div {
        max-width: 135px;
    }
    #buscar_produtos .buscar_produtos_filtro_marcas .buscar_produtos_filtro_opcao {
        gap: 20px;
    }
/* Fim Página /produtos */







/* reCAPTCHA v3 */
    .grecaptcha-badge { z-index: 0; }

/* Input Telefone - Venda Conosco */
    .iti {
        width: 100%;
    }
    .iti__selected-country {
        font-size: 0.85em;
        font-weight: 400;
    }
    .iti__selected-country, .iti__country-name {
        color: var(--cor_texto);
    }
    .iti__country-container {
        height: fit-content;
        padding: 10px 0px 8px 0px;
    }

/* Aviso de cookies */
    #aviso_cookie {
        box-sizing: border-box;
        padding: 10px 15px;
        position: fixed;
        bottom: 0px;
        left: 0px;
        background-color: #ffffff;
        color: #121223;
        z-index: 5;
        width: 100%;
        box-shadow: -5px -5px 15px 0px rgb(0, 0, 0, 0.2);
        max-height: 100vh;
        overflow: auto;
    }
    #aviso_cookie h2 {
        color: #1937AC;
    }
    #aviso_cookie button {
        display: inline-block;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        background-color: transparent;
        border: 1px solid transparent;
        padding: .375rem .75rem;
        font-size: 1.1em;
        border-radius: .25rem;
        transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
        color: #ffffff;
        background-color: #198754;
    }
    #aviso_cookie button:hover {
        color: #198754;
        background-color: #ffffff;
        border-color: #198754;
        box-shadow: 0 0 0 .25rem rgba(25, 135, 84, .5);
    }


/* Modal de loading */
    /* Spinner circular */
    #modal_loading .loading_spinner {
        width: 40px;
        height: 40px;
        border: 4px solid var(--cor_contra_tema_transparente);
        border-top: 4px solid var(--cor_primaria);
        border-radius: 50%;
        animation: spinner_rotacao 1s linear infinite;
        margin: 0 auto 16px auto;
    }
    /* Elemento visual dos pontinhos */
    #modal_loading .loading_carregando::after {
        content: "";
        display: inline-block;
        animation: carregando_pontos 1.2s steps(3, end) infinite;
    }
    /* Animação de rotação para o spinner */
    @keyframes spinner_rotacao {
        0% {
            transform: rotate(0deg);
        }
        100% {
            transform: rotate(360deg);
        }
    }
    /* Animação de reticências (ex: "carregando...") */
    @keyframes carregando_pontos {
        0% {
            content: "";
        }
        33% {
            content: ".";
        }
        66% {
            content: "..";
        }
        100% {
            content: "...";
        }
    }



/* Modal de sucesso */
    #modal_sucesso .modal_sucesso_mensagem {
        text-align: center;
        padding: 24px 16px 0px 16px;
        font-size: 1rem;
        color: var(--cor_fundo);
    }

    #modal_sucesso .modal_sucesso_icon {
        display: inline-block;
        width: 48px;
        height: 48px;
        margin-bottom: 16px;
        border-radius: 50%;
        background-color: #2fe257;
        position: relative;
    }

    #modal_sucesso .modal_sucesso_icon::before {
        content: '';
        position: absolute;
        left: 14px;
        top: 10px;
        width: 12px;
        height: 24px;
        border: solid var(--cor_texto_aux);
        border-width: 0 4px 4px 0;
        transform: rotate(45deg);
    }

    #modal_sucesso .modal_sucesso_mensagem strong {
        display: block;
        font-size: 1.2rem;
        margin-bottom: 12px;
        color: #2fe257;
    }

    #modal_sucesso .modal_sucesso_mensagem p {
        margin: 0;
        margin-bottom: 20px;
        line-height: 1.5;
    }

    #modal_sucesso .modal_sucesso_btn {
        background-color: #2fe257;
        color: var(--cor_texto_aux);
        border: none;
        border-radius: 20px;
        padding: 10px 24px;
        font-size: 1rem;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }

    #modal_sucesso .modal_sucesso_btn:hover {
        background-color: var(--cor_primaria_hover, #3a7bd5);
    }



/* Modal marketplace */
    #modal_marketplace .modal .modal_corpo {
        width: 100%;
    }
    #modal_marketplace h2 {
        font-size: 1.7em;
        color: var(--cor_primaria);
        font-weight: 500;
        margin: 0px 0px 16px 0px;
        text-align: center;
        text-transform: uppercase;
    }
    #modal_marketplace .modal_marketplace_conteudo {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px 20px;
        justify-content: space-around;
        padding: 0px 5px;
    }
    #modal_marketplace .modal_marketplace_conteudo > div {
        width: 160px;
    }
    #modal_marketplace .modal_marketplace_conteudo a {
        display: block;
        width: 100%;
        background-color: var(--cor_tema);
        border-radius: 16px;
        padding: 5px 10px;
        box-sizing: border-box;
    }
    #modal_marketplace .modal_marketplace_conteudo span {
        display: block;
        text-align: center;
        font-size: 0.6em;
        text-transform: uppercase;
        color: var(--cor_fundo_aux);
    }
    #modal_marketplace .modal_marketplace_aviso {
        text-align: center;
        color: var(--cor_fundo_aux);
        margin: 15px 0px 0px 0px;
        font-size: 0.8em;
    }



