@charset "utf-8";
/* Css */


/* PADROES */

/* Status Leiloes */
.LL_situacao[situacao="em_breve"],
.leilao_0 {
    background: #636363;
}

.LL_situacao[situacao="aberto"],
.leilao_1 {
    background: var(--green)!important;
}

.LL_situacao[situacao="arrematado"],
.leilao_2 {
    background: rgb(229, 10, 76);
}

.LL_situacao[situacao="nao_arrematado"],
.leilao_3 {
    background: rgb(102, 102, 102);
}

.LL_situacao[situacao="condicional"],
.leilao_10 {
    background: rgb(255, 208, 0);
}

.LL_situacao[situacao="venda_direta"],
.leilao_20 {
    background: rgb(235, 105, 0);
}

/* Status Leiloes */


/* Padroes */
* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: 0;
}


body,
textarea {
    top: 0 !important;
    font-size: 12px;
    color: #333;
    font-family: Arial, Helvetica, sans-serif;
}

.clear {
    clear: both;
}

ul {
    list-style: none;
}

ul:after {
    clear: both;
}

img {
    border: 0;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
}

input,
textarea,
select,
.select2 {
    outline: none;
    color: #666;
    font-size: 12px;
    font-style: italic;
    resize: none;
}

a,
label,
button,
input[type=button],
input[type=submit] {
    cursor: pointer;
    font-style: normal;
}

img.icon {
    vertical-align: middle;
    margin-bottom: 6px;
}

i.icon {
    vertical-align: middle;
    margin-bottom: 5px;
}

.n_ativo {
    color: #CCC !important;
}

.editor {
    line-height: 24px;
}

.editor form,
.editor input,
.editor a {
    display: inline !important;
}

.editor ul,
.editor ol {
    padding: 0 40px
}

.editor li,
.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6 {
    padding: 3px;
}

/* Padroes */


/* Boxs */
.boxs>div {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 800000005;
    padding: 1px;
    text-align: left;
    overflow: auto;
    white-space: normal;
    background-color: #ffffff;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
}

.boxs>div.textos {
    height: -webkit-calc(100% - 20px);
    height: -moz-calc(100% - 20px);
    height: calc(100% - 20px);
}

.boxs>div .barra {
    position: absolute;
    padding: 15px;
    padding-left: 0;
    margin-top: -10px;
    overflow: auto;
    height: -webkit-calc(100% - 46px);
    height: -moz-calc(100% - 46px);
    height: calc(100% - 36px);
}

.boxs>div a.fechar {
    position: absolute;
    top: 7px;
    right: 10px;
    font-size: 20px;
    color: #F00;
}

.boxs>div h3 {
    padding: 8px 14px;
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 18px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}

.boxs>div .contextoo {
    padding: 10px 15px;
}

@media (max-width: 710px) {
    .boxs>div {
        width: 100%;
        left: 0;
        margin: 0 !important;
    }
}

@media (max-width: 900px) {
    .boxs .gerenciar_itens {
        width: 100%;
        left: 0;
        margin: 0 !important;
    }
}

@media (max-width: 900px) {
    .boxs .gerenciar_itens {
        width: 100%;
        left: 0;
        margin: 0 !important;
    }
}

@media (max-width: 500px) {

    /* Css para o Botao Novo Item */
    .boxs .gerenciar_itens .posa.z2 {
        position: static !important;
    }
}

.fundoo {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 800000003;
    background: rgba(0, 0, 0, .7);
}

.fundoo_preto {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 800000003;
    background: rgba(0, 0, 0, .9);
}

/* Boxs */

/* Boxxs */
ul.boxxs>li {
    float: left;
    overflow: auto;
}

ul.boxxs>li .itens {
    margin: 5px;
    background: #fff;
    border: 1px solid #ccc;
}

ul.boxxs>li .itens h3 {
    padding: 10px;
    text-align: center;
    background: #f9f9f9;
    border-bottom: 1px solid #ccc;
}

ul.boxxs>li .itens ul {
    min-height: 200px;
    margin: 10px 0;
}

ul.boxxs>li .itens ul li {
    min-height: 26px;
    padding: 5px;
    margin: 10px;
    cursor: pointer;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

ul.boxxs>li .itens ul.boxxs_azul li {
    border: 1px solid #4a99ff;
    background: #c3ddff;
}

ul.boxxs>li .itens ul.boxxs_amarelo li {
    border: 1px solid #fed22f;
    background: #ffffe0;
}

ul.boxxs>li .itens ul.boxxs_vermelho li {
    border: 1px solid #ff8099;
    background: #ffccd6;
}

ul.boxxs>li .itens ul.boxxs_verde li {
    border: 1px solid #7dbb00;
    background: #dcffc2;
}

/* Boxxs */


/* Box Alert */
.boxs_alert {
    margin-bottom: 10px;
}

.boxs_alert ul li {
    display: inline-block;
    min-height: 26px;
    padding: 5px;
    margin: 0 5px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.boxs_alert ul.azul li {
    border: 1px solid #4a99ff;
    background: #c3ddff;
}

.boxs_alert ul.amarelo li {
    border: 1px solid #fed22f;
    background: #ffffe0;
}

.boxs_alert ul.vermelho li {
    border: 1px solid #ff8099;
    background: #ffccd6;
}

.boxs_alert ul.verde li {
    border: 1px solid #7dbb00;
    background: #dcffc2;
}

.alerts_orca {
    position: fixed;
    z-index: 9000000000;
    top: 50%;
    left: 50%;
    background: rgba(255, 255, 255, 0) !important;
    border: 0 !important;
}

.alerts_orca .alert {
    display: none;
    width: 300px;
    padding: 10px;
    margin: -70px 0 5px -150px;
    position: relative;
    color: #fff;
    background: #ccc;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
    border: 1px solid #CCC;
    background: #F4F4F4;
}

.alerts_orca .alert i {
    position: absolute;
    top: 5px;
    right: 7px;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
}

.alerts_orca .alert b {
    display: block;
    color: #333;
    margin-bottom: 10px;
}

.alerts_orca .alert a {
    display: block;
    margin-bottom: 5px;
}

/* Box Alert */


/* Arrow */
.arrow {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    text-align: left;
    white-space: normal;
}

.arrow:after {
    content: " ";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    text-align: left;
    white-space: normal;
}

/* Arrow */


/* Finput */
.finput>label {
    display: table-cell;
    padding: 2px 10px 0 10px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.finput .input {
    display: table-cell;
    width: 100%;
}

.finput .input input,
.finput .input select,
.finput .input textarea {
    width: 100%;
}

.finput .input label {
    display: table-cell;
    padding: 7px 0 0 10px;
    cursor: pointer;
}

.finput .input label input {
    width: auto;
    float: left;
}

.finput .input label p {
    padding-left: 20px;
}

/* Finput */


/* Link */
a:link {
    text-decoration: none;
}

a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

a:active {
    text-decoration: none;
    color: white
}

.link:hover {
    text-decoration: underline !important;
}

.nolink:hover,
.no_link:hover {
    text-decoration: none !important;
}

span.play1_youtube {
    width: 80px;
    height: 55px;
    margin: -27px 0 0 -40px;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    background: url(../web/img/outros/icones/play.png) no-repeat;
}

span.play2_youtube {
    width: 35px;
    height: 35px;
    position: absolute;
    right: 3px;
    bottom: 3px;
    z-index: 1;
    background: url(../web/img/outros/icones/youtube.png) no-repeat;
}

.tdn {
    text-decoration: none !important;
}

.tdu {
    text-decoration: underline !important;
}

/* Link */


/* Hover */
.hover1 {
    background: #F0F0F0 !important;
    border-color: #CDCDCD !important;
}

.hover2 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .20)) !important;
}

.hover3 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .30)) !important;
}

.hover4 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .40)) !important;
}

.hover5 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .50)) !important;
}

.hover6 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .65)) !important;
}

.hover7 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .70)) !important;
}

.hover8 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .80)) !important;
}

.hover9 {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .90)) !important;
}

.hover-op1 {
    -moz-opacity: 0.1;
    filter: alpha(opacity=10);
    opacity: 0.1;
}

.hover-op2 {
    -moz-opacity: 0.2;
    filter: alpha(opacity=20);
    opacity: 0.2;
}

.hover-op3 {
    -moz-opacity: 0.3;
    filter: alpha(opacity=30);
    opacity: 0.3;
}

.hover-op4 {
    -moz-opacity: 0.4;
    filter: alpha(opacity=40);
    opacity: 0.4;
}

.hover-op5 {
    -moz-opacity: 0.5;
    filter: alpha(opacity=50);
    opacity: 0.5;
}

.hover-op6 {
    -moz-opacity: 0.6;
    filter: alpha(opacity=60);
    opacity: 0.6;
}

.hover-op7 {
    -moz-opacity: 0.7;
    filter: alpha(opacity=70);
    opacity: 0.7;
}

.hover-op8 {
    -moz-opacity: 0.8;
    filter: alpha(opacity=80);
    opacity: 0.8;
}

.hover-op9 {
    -moz-opacity: 0.9;
    filter: alpha(opacity=90);
    opacity: 0.9;
}

.hover-op10 {
    -moz-opacity: 1;
    filter: alpha(opacity=1);
    opacity: 1;
}

.hoverr1:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .10)) !important;
}

.hoverr2:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .20)) !important;
}

.hoverr3:hover {
    background: #FFFFFF !important;
    -webkit-box-shadow: 0 3px 3px 1px #eee;
    -moz-box-shadow: 0 3px 3px 1px #eee;
    box-shadow: 0 3px 3px 1px #eee;
}

.hoverr4:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .40)) !important;
}

.hoverr5:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .50)) !important;
}

.hoverr6:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .65)) !important;
}

.hoverr7:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .70)) !important;
}

.hoverr8:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .80)) !important;
}

.hoverr9:hover {
    background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .90)) !important;
}

.hoverr-op1:hover {
    -moz-opacity: 0.1;
    filter: alpha(opacity=10);
    opacity: 0.1;
}

.hoverr-op2:hover {
    -moz-opacity: 0.2;
    filter: alpha(opacity=20);
    opacity: 0.2;
}

.hoverr-op3:hover {
    -moz-opacity: 0.3;
    filter: alpha(opacity=30);
    opacity: 0.3;
}

.hoverr-op4:hover {
    -moz-opacity: 0.4;
    filter: alpha(opacity=40);
    opacity: 0.4;
}

.hoverr-op5:hover {
    -moz-opacity: 0.5;
    filter: alpha(opacity=50);
    opacity: 0.5;
}

.hoverr-op6:hover {
    -moz-opacity: 0.6;
    filter: alpha(opacity=60);
    opacity: 0.6;
}

.hoverr-op7:hover {
    -moz-opacity: 0.7;
    filter: alpha(opacity=70);
    opacity: 0.7;
}

.hoverr-op8:hover:hover {
    -moz-opacity: 0.8;
    filter: alpha(opacity=80);
    opacity: 0.8;
}

.hoverr-op9:hover {
    -moz-opacity: 0.9;
    filter: alpha(opacity=90);
    opacity: 0.9;
}

.hoverr-ts1:hover {
    text-shadow: black 0.0em 0.1em 0.1em;
}

.hoverr-ts2:hover {
    text-shadow: black 0.1em 0.1em 0.2em;
}

.hoverr-ts3:hover {
    text-shadow: black 0.1em 0.2em 0.3em;
}

.hoverr-ts4:hover {
    text-shadow: black 0.2em 0.2em 0.4em;
}

.hoverr-ts5:hover {
    text-shadow: black 0.2em 0.3em 0.5em;
}

.hoverr-bs1:hover {
    -webkit-box-shadow: 0 5px 5px 1px #eee;
    -moz-box-shadow: 0 5px 5px 1px #eee;
    box-shadow: 0 5px 5px 1px #eee;
}

.hoverr-bs2:hover {
    -webkit-box-shadow: 0 5px 10px 2px #eee;
    -moz-box-shadow: 0 5px 10px 2px #eee;
    box-shadow: 0 5px 10px 2px #eee;
}

.hoverr-bs3:hover {
    -webkit-box-shadow: 0 5px 10px 4px #eee;
    -moz-box-shadow: 0 5px 10px 4px #eee;
    box-shadow: 0 5px 10px 4px #eee;
}

.hoverr-bs4:hover {
    -webkit-box-shadow: 0 5px 10px 8px #eee;
    -moz-box-shadow: 0 5px 10px 8px #eee;
    box-shadow: 0 5px 10px 8px #eee;
}

.hoverr-bs5:hover {
    -webkit-box-shadow: 0 5px 20px 8px #eee;
    -moz-box-shadow: 0 5px 20px 8px #eee;
    box-shadow: 0 5px 20px 8px #eee;
}

.hoverr-ef1 {
    -webkit-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
}

.hoverr-ef2 {
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.hoverr-ef3 {
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.hoverr-ef4 {
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.hoverr-ef5 {
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.hoverr-ef6 {
    -webkit-transition: all 0.6s ease-in-out;
    -o-transition: all 0.6s ease-in-out;
    transition: all 0.6s ease-in-out;
}

.hoverr-ef7 {
    -webkit-transition: all 0.7s ease-in-out;
    -o-transition: all 0.7s ease-in-out;
    transition: all 0.7s ease-in-out;
}

.hoverr-ef8 {
    -webkit-transition: all 0.8s ease-in-out;
    -o-transition: all 0.8s ease-in-out;
    transition: all 0.8s ease-in-out;
}

.hoverr-ef9 {
    -webkit-transition: all 0.9s ease-in-out;
    -o-transition: all 0.9s ease-in-out;
    transition: all 0.9s ease-in-out;
}

/* Hover */


/* Preto e Braco */
.preto_branco li img,
.preto_branco a img {
    filter: none;
    -webkit-filter: none;
    -webkit-transition: none;
    -webkit-backface-visibility: none;
    -moz-opacity: 1.00;
    filter: alpha(opacity=100);
    opacity: 1.00;
}

.preto_branco li:hover img,
.preto_branco a:hover img {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    /* Firefox 10+ */
    filter: gray;
    /* IE6-9 */
    -webkit-filter: grayscale(100%);
    /* Chrome 19+ & Safari 6+ */
    -webkit-transition: all .6s ease;
    /* Fade to color for Chrome and Safari */
    -webkit-backface-visibility: hidden;
    /* Fix for transition flickering */
    -moz-opacity: .50;
    filter: alpha(opacity=50);
    opacity: .50;
}

.preto_branco1 li img,
.preto_branco1 a img {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    /* Firefox 10+ */
    filter: gray;
    /* IE6-9 */
    -webkit-filter: grayscale(100%);
    /* Chrome 19+ & Safari 6+ */
    -webkit-transition: all .6s ease;
    /* Fade to color for Chrome and Safari */
    -webkit-backface-visibility: hidden;
    /* Fix for transition flickering */
    -moz-opacity: .50;
    filter: alpha(opacity=50);
    opacity: .50;
}

.preto_branco1 li:hover img,
.preto_branco1 a:hover img {
    filter: none;
    -webkit-filter: none;
    -webkit-transition: none;
    -webkit-backface-visibility: none;
    -moz-opacity: 1.00;
    filter: alpha(opacity=100);
    opacity: 1.00;
}

/* Preto e Braco */


/* Placeholder */
.branco::-webkit-input-placeholder {
    color: #FFF;
}

.branco::-moz-placeholder {
    color: #FFF;
}

/* firefox 19+ */
.branco:-ms-input-placeholder {
    color: #FFF;
}

/* ie */
.branco:-0-input-placeholder {
    color: #FFF;
}

/* ie */
.branco:-moz-placeholder {
    color: #FFF;
}

.preto::-webkit-input-placeholder {
    color: #333;
}

.preto::-moz-placeholder {
    color: #333;
}

/* firefox 19+ */
.preto:-ms-input-placeholder {
    color: #333;
}

/* ie */
.preto:-0-input-placeholder {
    color: #333;
}

/* ie */
.preto:-moz-placeholder {
    color: #333;
}

/* Placeholder */


/* Events Externos */
/* Alerts */
.events_externos .alerts {
    position: fixed;
    z-index: 9000100000;
    top: 53px;
    right: 5px;
}

.events_externos .alerts .alert {
    display: none;
    min-width: 240px;
    max-width: 360px;
    padding: 14px 44px 14px 16px;
    margin: 0 0 10px;
    position: relative;
    color: #1f2937;
    background: #fff;
    border-left: 5px solid #64748b;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(15,23,42,.16);
}

.events_externos .alerts .alert i {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    line-height: 1 !important;
    cursor: pointer;
    font-size: 18px !important;
    font-weight: bold;
    color: #94a3b8;
}
.events_externos .alerts .alert i:hover { color: #475569; }

.events_externos .alerts .alert p {
    margin: 0;
    font-size: 13.5px !important;
    line-height: 1.4 !important;
    color: #1f2937 !important;
    font-weight: 600;
}

/* ERRO (vermelho — cor do site teste; trocar por site quando portar) */
.events_externos .alerts .acao_0 {
    background: #fff;
    border-left-color: var(--lv-cta);
}
.events_externos .alerts .acao_0 p { color: #b91c1c !important; }
.events_externos .alerts .acao_0 i { color: var(--lv-cta); }

/* SUCESSO (verde) */
.events_externos .alerts .acao_1 {
    background: #fff;
    border-left-color: var(--lv-sucesso);
}
.events_externos .alerts .acao_1 p { color: var(--lv-sucesso-hover) !important; }
.events_externos .alerts .acao_1 i { color: var(--lv-sucesso); }

/* Modals */
.events_externos .modals {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9000100000;
}

.events_externos .modals .modal {
    width: 900px;
    position: relative;
    padding: 20px;
    margin: 30px auto;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #999;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 6px;
    outline: 0;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
}

.events_externos .modals .modal i {
    position: absolute;
    top: 5px;
    right: 7px;
    color: #666;
    line-height: inherit !important;
    cursor: pointer;
    font-size: 24px !important;
    font-weight: bold;
}

.events_externos .modals .modal h4 {
    padding: 0 10px 15px;
    font-size: 20px;
    font-weight: normal;
    border-bottom: 1px solid #e5e5e5;
}

.events_externos .modals .modal .contextoo {
    padding: 15px 10px;
    font-size: 14px;
    color: #333;
    border-bottom: 1px solid #e5e5e5;
}

.events_externos .modals .modal .button {
    padding: 15px 10px 0;
    text-align: right;
}

/* Carregando */
.events_externos .carregando {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 9000000100;
    padding: 10px;
    margin: -22px 0 0 -74px;
    border: 1px solid #CCC;
    background: #FFF;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.events_externos .carregando img {
    vertical-align: middle;
    padding-left: 3px;
}

.events_externos .carregando span {
    display: inline-block;
}

.carregando1 {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: -1;
    padding: 10px;
    margin: -16px 0 0 -16px;
    border: 1px solid #CCC;
    background: #FFF;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.carregando1 img {
    vertical-align: middle;
}

.carregando1 span {
    display: inline-block;
    padding-left: 10px;
    font-weight: bold;
}

.carregando_lote {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 100;
    padding: 5px 10px;
    margin: -22px 0 0 -74px;
    border: 1px solid #CCC;
    background: #FFF;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.carregando_lote img {
    vertical-align: middle;
}

.carregando_lote span {
    display: inline-block;
    padding-left: 10px;
    font-weight: bold;
}

.carregando_pagamento {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 9000000100;
    padding: 10px;
    margin: -22px 0 0 -74px;
    border: 1px solid #CCC;
    background: #FFF;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.carregando_pagamento img {
    vertical-align: middle;
}

.carregando_pagamento span {
    display: inline-block;
    padding-left: 10px;
    font-weight: bold;
}

/* Erros Ajax */
.events_externos .erros_ajax {
    display: none;
    width: 700px;
    height: 500px;
    overflow: auto;
    padding: 10px;
    margin: -250px 0 0 -350px;
    position: fixed;
    z-index: 9000100000;
    top: 50%;
    left: 50%;
    border: 1px solid #999;
    background: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0px 1px 3px #d7d7d7;
    -moz-box-shadow: 0px 1px 3px #d7d7d7;
    box-shadow: 0px 1px 3px #d7d7d7;
}

.events_externos .erros_ajax>i {
    position: absolute;
    top: 5px;
    right: 7px;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
}

.events_externos .erros_ajax>p {}

@media (max-width: 700px) {
    .events_externos .erros_ajax {
        width: 100%;
        top: 0;
        left: 0;
        margin: 0 !important;
    }
}

/* Events Externos */


/* Auto Complete */
.ui-autocomplete {
    z-index: 800000001;
}

.ui-autocomplete.ui-widget-content {
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.ui-autocomplete.ui-widget-content li {
    padding: 5px;
    background: #fff;
}

.ui-autocomplete.ui-state-hover,
.ui-autocomplete.ui-widget-content .ui-state-hover,
.ui-autocomplete.ui-widget-header .ui-state-hover,
.ui-autocomplete.ui-state-focus,
.ui-autocomplete.ui-widget-content .ui-state-focus,
.ui-autocomplete.ui-widget-header .ui-state-focus {
    font-weight: bold;
    background: #dadada;
}

/* Auto Complete */


/* Tabs */
.tabs hr.nav {
    display: block;
    height: 1px;
    border: 0;
    border-bottom: 1px solid #CCC;
}

.tabs ul.nav {
    display: block;
    padding: 0 0 0 15px;
    margin: 0;
    border-bottom: 1px solid #CCC;
    background: #F1F1F1;
}

.tabs ul.nav li {
    height: 30px;
    float: left;
    border-right: 1px dashed #CCC;
}

.tabs ul.nav li>a {
    display: block;
    padding: 10px 15px;
    font-size: 11px;
    text-transform: uppercase;
}

.tabs ul.nav li.ativo {
    height: 30px;
    border: 1px solid;
    border-color: #CCC;
    border-top-color: #666;
    border-bottom: 0;
    background: #FFF;
    border-radius: 0;
    text-shadow: 0 1px 0 #DDD;
}

.tabs ul.nav li.ativo>a {
    padding-top: 8px;
}

.tabs ul.nav li:hover {
    background: #fff;
}

.tabs ul.nav li.disabled {
    background: none;
}

.tabs ul.nav li.disabled>a {
    color: #999;
}

.tabs ul.campos {
    padding: 10px;
}

.tabs ul.campos>li {
    display: none;
}

.tabs ul.campos>li.ativo {
    display: inline;
}

/* Tabs */


/* Popover */
.popover.top {
    margin-top: -10px;
}

.popover {
    width: 280px;
    z-index: 800000001 !important;
    padding: 1px;
    text-align: left;
    white-space: normal;
    background-color: #ffffff;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
}

.popover.top .arrow {
    bottom: -22px;
    left: 47%;
    border-width: 11px;
    border-top-color: #C7C7C7;
}

.popover.top .arrow:after {
    margin: -12px 0 0 -11px;
    border-width: 11px;
    border-top-color: #fff;
}

.popover-title {
    padding: 8px 14px;
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 18px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}

.popover-content {
    padding: 9px 14px;
}

/* Popover */


/* Calendar */
ul.calendar {
    width: 500px;
    height: 45px;
    margin: 0;
}

ul.calendar li {
    display: block;
    float: left;
    width: 12.5%;
}

ul.calendar li.action a {
    height: 34px;
    display: block;
    margin: 0 0 0 2px;
    font-size: 12px;
    line-height: 34px;
    text-transform: uppercase;
    color: #7090ab;
    text-decoration: none;
    background: var(--lv-primaria-light);
    text-align: center;
    border-radius: 2px;
}

ul.calendar li.action a:hover {
    background: #c0d0e4;
    color: #486c8f
}

ul.calendar li.action a i.hi {
    font-size: 22px;
    line-height: 34px;
}

ul.calendar li.action a {
    height: 34px;
    display: block;
    margin: 0 0 0 2px;
    font-size: 12px;
    line-height: 34px;
    text-transform: uppercase;
    color: #7090ab;
    text-decoration: none;
    background: var(--lv-primaria-light);
    text-align: center;
    border-radius: 2px;
}

ul.calendar li {
    display: block;
    float: left;
    width: 12.5%;
}

ul.calendar li.action a {
    height: 34px;
    display: block;
    margin: 0 0 0 2px;
    font-size: 12px;
    line-height: 34px;
    text-transform: uppercase;
    color: #7090ab;
    text-decoration: none;
    background: var(--lv-primaria-light);
    text-align: center;
    border-radius: 2px;
}

ul.calendar li.mes a {
    height: 36px;
    display: block;
    margin: 0 0 0 2px;
    font-size: 0.8em;
    line-height: 1em;
    text-transform: uppercase;
    color: #7090ab;
    text-decoration: none;
    border-radius: 2px;
}

ul.calendar li.mes a em {
    display: block;
    height: 12px;
    border-radius: 2px;
    margin-bottom: 2px;
    background: var(--lv-primaria-light);
}

ul.calendar li.mes a:hover em {
    background: #c0d0e4;
}

ul.calendar li.mes.atual a em {
    background: #7090ab;
}

ul.calendar li.mes.ativo a em {
    background: #56b349;
}

ul.calendar li.mes a p {
    margin: 2px;
    text-align: right;
}

ul.calendar li.mes a p {
    margin: 2px;
    text-align: right;
}

ul.calendar li.mes.ativo a p {
    color: #56b349;
    font-weight: bold;
}

@media (max-width: 510px) {
    ul.calendar {
        width: 100%;
    }
}

.lista_financeiro[saldo="0"] li.mes.ativo a em {
    background: #e33d43;
}

.lista_financeiro[saldo="0"] ul.calendar li.mes.ativo a p {
    color: #e33d43;
    font-weight: bold;
}

/* Calendar */


/* Tooltip */
.datatable_boxs .tooltip .tooltip-inner {
    max-width: 300px !important;
    font-size: 12px !important;
}

.tooltip {
    position: absolute;
    z-index: 1030;
    display: block;
    font-size: 12px;
    line-height: 1.4;
    opacity: 0;
    filter: alpha(opacity=0);
    visibility: visible
}

.tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90)
}

.tooltip.top {
    padding: 5px 0;
    margin-top: -3px
}

.tooltip.right {
    padding: 0 5px;
    margin-left: 3px
}

.tooltip.bottom {
    padding: 5px 0;
    margin-top: 3px
}

.tooltip.left {
    padding: 0 5px;
    margin-left: -3px
}

.tooltip-inner {
    max-width: 300px;
    padding: 4px 8px;
    color: white;
    text-align: center;
    text-decoration: none;
    background-color: #000000;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px
}

.tooltip-arrow {
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid
}

.tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-top-color: #000000;
    border-width: 5px 5px 0;
}

.tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-right-color: #000000;
    border-width: 5px 5px 5px 0;
}

.tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-left-color: #000000;
    border-width: 5px 0 5px 5px;
}

.tooltip.bottom .tooltip-arrow {
    top: 0;
    left: 50%;
    margin-left: -5px;
    border-bottom-color: #000000;
    border-width: 0 5px 5px;
}

/* Tooltip */


/* Paginacao */
.pagg {
    text-align: center;
}

.pagg a {
    display: inline-block;
    padding: 10px 15px;
    margin: 0 3px;
    color: #0d3073;
    font-size: 14px;
    border: solid 1px rgb(255, 255, 255);
    background: #fff;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.pagg a:hover {
    background: #F2F2F2;
}

.pagg a.ativo {
    color: #000;
    background: #fff;
}

/* Paginacao */


/* Tables */
.table_top {
    border: #aaa 1px solid;
    background: #eee;
    padding: 10px;
}

.table_center {
    border: #aaa 1px solid;
    background: #FFF;
    padding: 10px;
}

/* Tables */


/* Editor */
.editor p {
    float: none !important;
    margin: 8px 0 16px !important;
    padding: 0
}

.editor ul {
    float: none !important;
    list-style: inside;
    display: block !important;
    margin: 0 !important;
    padding: 0 40px !important;
}

.editor ul li {
    float: none !important;
    margin: 0;
    padding: 0;
}

/* Editor */

/* PADROES */



/* -------------------------------------------------------------------------- */



/* INPUTS PADROES */
/* Padroes */
input[type=radio].design,
input[type=checkbox].design {
    height: auto;
    line-height: inherit;
    padding: 0;
    cursor: pointer;
    border: none;
    background: none;
    border-radius: 0px;
    outline: 0;
}

input[type=checkbox],
input[type=radio] {
    height: 16px;
    vertical-align: bottom;
    box-shadow: 0px 0px 1px rgba(0, 204, 255, 0.7) !important;
    -webkit-box-shadow: 0px 0px 0px rgba(0, 204, 255, 0.7) !important;
    -moz-box-shadow: 0px 0px 0px rgba(0, 204, 255, 0.7) !important;
}

input[type=date].design,
input[type=datetime-local].design,
input[type=month].design,
input[type=week].design {
    position: relative !important;
    padding-right: 25px !important;
}

input[type=date].design::-webkit-inner-spin-button,
input[type=date].design::-webkit-outer-spin-button,
input[type=datetime-local].design::-webkit-inner-spin-button,
input[type=datetime-local].design::-webkit-outer-spin-button,
input[type=month].design::-webkit-inner-spin-button,
input[type=month].design::-webkit-outer-spin-button,
input[type=week].design::-webkit-inner-spin-button,
input[type=week].design::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=date].design::-webkit-clear-button,
input[type=month].design::-webkit-clear-button,
input[type=week].design::-webkit-clear-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=date].design::-webkit-calendar-picker-indicator,
input[type=datetime-local].design::-webkit-calendar-picker-indicator,
input[type=month].design::-webkit-calendar-picker-indicator,
input[type=week].design::-webkit-calendar-picker-indicator {
    width: 8px;
    height: 6px;
    padding: 13px 5px 13px 5px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: .5;
    color: #000;
}

**input[type=date].design::-webkit-calendar-picker-indicator,
input[type=month].design::-webkit-calendar-picker-indicator,
input[type=week].design::-webkit-calendar-picker-indicator {
    padding-left: 1000px;
}

input[type=date].design::-webkit-calendar-picker-indicator:hover,
input[type=datetime-local].design::-webkit-calendar-picker-indicator:hover,
input[type=month].design::-webkit-calendar-picker-indicator:hover,
input[type=week].design::-webkit-calendar-picker-indicator:hover {
    background: none;
}

input[type=number].design,
input[type=time].design {
    position: relative !important;
    padding-right: 20px !important;
}

input[type=number].design::-webkit-outer-spin-button,
input[type=number].design::-webkit-inner-spin-button,
input[type=time].design::-webkit-outer-spin-button,
input[type=time].design::-webkit-inner-spin-button {
    width: 15px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: .5;
    border-left: 1px solid #BBB;
    -webkit-appearance: none;
    background: #FFF url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAKUlEQVQYlWNgwAT/sYhhKPiPT+F/LJgEsHv37v+EMGkmkuImoh2NoQAANlcun/q4OoYAAAAASUVORK5CYII=) no-repeat center center;
}

input[type=number].design::-webkit-inner-spin-button:hover,
input[type=number].design::-webkit-outer-spin-button:hover,
input[type=time].design::-webkit-inner-spin-button:hover,
input[type=time].design::-webkit-inner-spin-button:active {
    opacity: .8;
    box-shadow: 0 0 2px #0CF;
}

input[type=color] {
    width: 40px !important;
}

.input.file {
    position: relative;
    overflow: hidden;
    padding: 7px 10px 7px;
    border: solid 1px #ccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    outline: 0;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#f6f6f6');
    background: -moz-linear-gradient(top, #fff, #f6f6f6);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f6f6f6));
}

input[type=file].design {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 20px;
    cursor: pointer;
    opacity: 0;
    filter: alpha(opacity=0);
}

textarea.design {
    padding: 10px !important;
    line-height: 18px !important;
}

input.design:disabled,
textarea.design:disabled {
    opacity: .7 !important;
    background: #eee !important;
}

/* Padroes */

/* Button */
.botao {
    padding: 8px 15px;
    cursor: pointer;
    border: 1px solid #ddd;
    background: #FFF;
}

.botao i {
    margin: -2px 0 0;
    font-size: 16px;
}

.botao:disabled {
    color: #ccc !important;
}

.botao:disabled i {
    color: #ccc !important;
}

.botao:hover {
    -webkit-box-shadow: 0px 1px 3px #d7d7d7;
    -moz-box-shadow: 0px 1px 3px #d7d7d7;
    box-shadow: 0px 1px 3px #d7d7d7;
    text-shadow: 0px 1px 0px #BBB;
    border: 1px solid #C7C7C7;
}

button.design {
    padding: 8px 25px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow: 0 0 3px #CCC;
    -webkit-box-shadow: 0 0 3px #CCC;
    box-shadow: 0 0 3px #CCC;
}

button.design:hover {
    -moz-box-shadow: 0 0 8px #CCC;
    -webkit-box-shadow: 0 0 8px #CCC;
    box-shadow: 0 0 8px #CCC;
}

/* Button */

/* Editor */
.cke_dialog_background_cover {
    z-index: 9000000000 !important;
}

.cke {
    position: relative !important;
    z-index: 9000000001 !important;
}

.cke_dialog_tab[title=Enviar] {
    display: none !important;
}

/* Botao Enviar no Servidor */

.cke_panel {
    margin-top: -830px !important;
}

/* Editor */
/* INPUTS PADROES */



/* -------------------------------------------------------------------------- */



/* FONTS

		/* BebasNeue
			.BebasNeue { font-family:'BebasNeuewebfont' !important; }
			@font-face {
				font-family:'BebasNeuewebfont';
				src:url('../plugins/Fonts/BebasNeuewebfont/BebasNeuewebfont.eot');
				src:local('BebasNeuewebfont'), url('../plugins/Fonts/BebasNeuewebfont/BebasNeuewebfont.woff') format('woff'), url('../plugins/Fonts/BebasNeuewebfont/BebasNeuewebfont.ttf') format('truetype');
			}

	/* FONTS */



/* -------------------------------------------------------------------------- */



/* CLASSES ABR. */

/* Classes Padroes */
.w-a {
    width: auto !important;
}

.h-a {
    height: auto !important;
}

.h100p {
    height: 100% !important;
}

.img_w100p img {
    width: 100% !important;
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-border-radius: 5px 5px 5px 5px;
}

.min-w100p {
    min-width: 100% !important;
}

.max-w100p {
    max-width: 100% !important;
}

.min-h100p {
    min-height: 100% !important;
}

.max-h100p {
    max-height: 100% !important;
}

.fll {
    float: left;
}

.flli {
    float: left !important;
}

.flr {
    float: right;
}

.flri {
    float: right !important;
}

.fln {
    float: none;
}

.flni {
    float: none !important;
}

.tal {
    text-align: left !important;
}

.tac {
    text-align: center !important;
}

.tar {
    text-align: right !important;
}

.taj {
    text-align: justify !important;
}

.vat {
    vertical-align: top !important;
}

.vas {
    vertical-align: sub !important;
}

.vasu {
    vertical-align: super !important;
}

.vam {
    vertical-align: middle !important;
}

.vaba {
    vertical-align: baseline !important;
}

.vab {
    vertical-align: bottom !important;
}

.ts {
    text-shadow: black 0.0em 0.1em 0.1em;
}

.ts1 {
    text-shadow: black 0.1em 0.1em 0.2em;
}

.ts2 {
    text-shadow: black 0.1em 0.2em 0.3em;
}

.tsb {
    text-shadow: white 0.0em 0.1em 0.1em;
}

.tsb1 {
    text-shadow: white 0.1em 0.1em 0.2em;
}

.tsb2 {
    text-shadow: white 0.1em 0.2em 0.3em;
}

.bs1 {
    -webkit-box-shadow: 0 5px 5px 1px #eee;
    -moz-box-shadow: 0 5px 5px 1px #eee;
    box-shadow: 0 5px 5px 1px #eee;
}

.bs2 {
    -webkit-box-shadow: 0 5px 10px 2px #eee;
    -moz-box-shadow: 0 5px 10px 2px #eee;
    box-shadow: 0 5px 10px 2px #eee;
}

.bs3 {
    -webkit-box-shadow: 0 5px 10px 4px #eee;
    -moz-box-shadow: 0 5px 10px 4px #eee;
    box-shadow: 0 5px 10px 4px #eee;
}

.bs4 {
    -webkit-box-shadow: 0 5px 10px 8px #eee;
    -moz-box-shadow: 0 5px 10px 8px #eee;
    box-shadow: 0 5px 10px 8px #eee;
}

.bs5 {
    -webkit-box-shadow: 0 5px 20px 8px #eee;
    -moz-box-shadow: 0 5px 20px 8px #eee;
    box-shadow: 0 5px 20px 8px #eee;
}

.bsp {
    webkit-box-shadow: 0px 1px 3px rgba(000, 000, 000, 1), inset 0px 0px 1px rgba(255, 255, 255, 0.6);
    box-shadow: 0px 1px 3px rgba(000, 000, 000, 1), inset 0px 0px 1px rgba(255, 255, 255, 0.6);
    text-shadow: 0px -1px 0px rgba(000, 000, 000, 1), 0px 1px 0px rgba(255, 255, 255, 0.2);
}

.bsp1 {
    webkit-box-shadow: 0px 2px 6px rgba(000, 000, 000, 1), inset 0px 0px 2px rgba(255, 255, 255, 0.6);
    box-shadow: 0px 2px 6px rgba(000, 000, 000, 1), inset 0px 0px 2px rgba(255, 255, 255, 0.6);
    text-shadow: 0px -2px 0px rgba(000, 000, 000, 1), 0px 2px 0px rgba(255, 255, 255, 0.2);
}

.bsp2 {
    webkit-box-shadow: 0px 1px 9px rgba(000, 000, 000, 1), inset 0px 0px 3px rgba(255, 255, 255, 0.6);
    box-shadow: 0px 3px 9px rgba(000, 000, 000, 1), inset 0px 0px 3px rgba(255, 255, 255, 0.6);
    text-shadow: 0px -3px 0px rgba(000, 000, 000, 1), 0px 3px 0px rgba(255, 255, 255, 0.2);
}

.bsb {
    -webkit-box-shadow: 0 0 2px 2px #CCC;
    -moz-box-shadow: 0 0 2px 2px #CCC;
    box-shadow: 0 0 2px 2px #CCC;
}

.bsb1 {
    -webkit-box-shadow: 0 0 5px 5px #CCC;
    -moz-box-shadow: 0 0 5px 5px #CCC;
    box-shadow: 0 0 5px 5px #CCC;
}

.bsb2 {
    -webkit-box-shadow: 0 0 10px 10px #CCC;
    -moz-box-shadow: 0 0 10px 10px #CCC;
    box-shadow: 0 0 10px 10px #CCC;
}

.bbb {
    text-shadow: white 0.0em 0.1em 0.1em;
}

.bbb1 {
    text-shadow: white 0.1em 0.1em 0.2em;
}

.bbb2 {
    text-shadow: white 0.1em 0.2em 0.3em;
}

.di {
    display: inline;
}

.dib {
    display: inline-block;
}

.db {
    display: block;
}

.dt {
    display: table;
}

.dit {
    display: inline-table;
}

.dn {
    display: none;
}

.dii {
    display: inline !important;
}

.dibi {
    display: inline-block !important;
}

.dbi {
    display: block !important;
}

.dt {
    display: table !important;
}

.dit {
    display: inline-table !important;
}

.dni {
    display: none !important;
}

.c_flex {
    display: flex;
    display: -webkit-flex;
    align-items: center;
}

.jc {
    justify-content: center;
}

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

ul.bd>li:not(:last-child) {
    border-bottom: 0 !important;
}

.o-h {
    overflow: hidden !important;
}

.o-hx {
    overflow-x: hidden !important;
}

.o-hy {
    overflow-y: hidden !important;
}

.o-a {
    overflow: auto !important;
}

.o-ax {
    overflow-x: auto !important;
}

.o-ay {
    overflow-y: auto !important;
}

.ptb0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.plr0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.m-a {
    margin: auto !important;
}

.posa {
    position: absolute;
}

.posf {
    position: fixed;
}

.posr {
    position: relative;
}

.poss {
    position: static;
}

.posai {
    position: absolute !important;
}

.posfi {
    position: fixed !important;
}

.posri {
    position: relative !important;
}

.possi {
    position: static !important;
}

.imgl {
    float: left !important;
    padding: 0 20px 20px 0 !important;
}

.imgr {
    float: right !important;
    padding: 0 0 20px 20px !important;
}

.limit {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.limit1 {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.w-s {
    white-space: nowrap;
}

.t-o {
    text-overflow: ellipsis;
}

.ls1 {
    letter-spacing: -1px;
}

.ls2 {
    letter-spacing: -2px;
}

.ls3 {
    letter-spacing: -3px;
}

.ls4 {
    letter-spacing: -4px;
}

.ls5 {
    letter-spacing: -5px;
}

.ls6 {
    letter-spacing: -6px;
}

.z-1 {
    z-index: -1 !important;
}

.z0 {
    z-index: 0 !important;
}

.z1 {
    z-index: 10 !important;
}

.z11 {
    z-index: 11 !important;
}

.z2 {
    z-index: 200 !important;
}

.z21 {
    z-index: 201 !important;
}

.z3 {
    z-index: 3000 !important;
}

.z31 {
    z-index: 3001 !important;
}

.z4 {
    z-index: 40000 !important;
}

.z41 {
    z-index: 40001 !important;
}

.z5 {
    z-index: 500000 !important;
}

.z51 {
    z-index: 500001 !important;
}

.z6 {
    z-index: 6000000 !important;
}

.z61 {
    z-index: 6000001 !important;
}

.z7 {
    z-index: 70000000 !important;
}

.z71 {
    z-index: 70000001 !important;
}

.z8 {
    z-index: 800000000 !important;
}

.z81 {
    z-index: 800000001 !important;
}

.z9 {
    z-index: 9000000000 !important;
}

.z91 {
    z-index: 9000000001 !important;
}

.z92 {
    z-index: 9000000002 !important;
}

.z95 {
    z-index: 9000000005 !important;
}

.z910 {
    z-index: 90000000010 !important;
}

.fwn {
    font-weight: normal !important;
}

.fwb {
    font-weight: bold !important;
}

.ttu {
    text-transform: uppercase !important;
}

.ttl {
    text-transform: lowercase !important;
}

.ttn {
    text-transform: none !important;
}

.c-p {
    cursor: pointer !important;
}

.c-p0 {
    cursor: initial !important;
}

.fsi {
    font-style: italic !important;
}

.op0 {
    opacity: .0 !important;
}

.op0_hover:hover {
    opacity: .0 !important;
}

.op1 {
    opacity: .1 !important;
}

.op1_hover:hover {
    opacity: .1 !important;
}

.op2 {
    opacity: .2 !important;
}

.op2_hover:hover {
    opacity: .2 !important;
}

.op3 {
    opacity: .3 !important;
}

.op3_hover:hover {
    opacity: .3 !important;
}

.op4 {
    opacity: .4 !important;
}

.op4_hover:hover {
    opacity: .4 !important;
}

.op5 {
    opacity: .5 !important;
}

.op5_hover:hover {
    opacity: .5 !important;
}

.op6 {
    opacity: .6 !important;
}

.op6_hover:hover {
    opacity: .6 !important;
}

.op7 {
    opacity: .7 !important;
}

.op7_hover:hover {
    opacity: .7 !important;
}

.op8 {
    opacity: .8 !important;
}

.op8_hover:hover {
    opacity: .8 !important;
}

.op9 {
    opacity: .9 !important;
}

.op9_hover:hover {
    opacity: .9 !important;
}

.op10 {
    opacity: 1 !important;
}

.op10_hover:hover {
    opacity: 1 !important;
}

/* Classes Padroes */


/* Cores */
.c_azul,
a.c_azul {
    color: #1688CA !important;
}

.c_verde,
a.c_verde {
    color: #35AA47 !important;
}

.c_vermelho,
a.c_vermelho {
    color: #e33d43 !important;
}

.c_amarelo,
a.c_amarelo {
    color: #F2B835 !important;
}

/* Cores */


/* Borders e Backgrounds */
.bd0 {
    border: 0;
}

.bd0i {
    border: 0 !important;
}

.bdt0 {
    border-top: 0 !important;
}

.bdl0 {
    border-left: 0 !important;
}

.bdr0 {
    border-right: 0 !important;
}

.bdb0 {
    border-bottom: 0 !important;
}

.back0 {
    background: none !important;
}

.br0 {
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    border-radius: 0 !important;
}

.br50p {
    -webkit-border-radius: 50% !important;
    -moz-border-radius: 50% !important;
    border-radius: 50% !important;
}

.bdb_dashed {
    border-bottom: 1px dashed #F4F4EE;
}

.bdb_dashed_000 {
    border-bottom: 1px dashed #000;
}

.bd_dashed_000 {
    border: 1px dashed #000;
}

.bd_dashed_999 {
    border: 1px dashed #999;
}

/* Borders e Backgrounds */

/* CLASSES ABR. */


/* OUTROS */
embed#chrome-plugin-npapi-helper {
    height: 0px !important;
    display: none !important
}

.skiptranslate,
#google_translate_element {
    display: none !important;
}

.ui-dialog.max {
    margin: 48px 0 0 235px !important;
    width: -webkit-calc(100% - 235px) !important;
    width: -moz-calc(100% - 235px) !important;
    width: calc(100% - 235px) !important;
    height: -webkit-calc(100% - 92px) !important;
    height: -moz-calc(100% - 92px) !important;
    height: calc(100% - 92px) !important;
}

@media (max-width: 900px) {
    .ui-dialog.max {
        margin: 96px 0 0 0 !important;
        width: 100% !important;
        height: -webkit-calc(100% - 140px) !important;
        height: -moz-calc(100% - 140px) !important;
        height: calc(100% - 140px) !important;
    }
}

.ui-dialog.max {
    width: 100% !important;
    height: calc(100% - 44px) !important;
    margin: 0 !important;
}

/* Redes */
.rede span {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.rede1 span {
    float: none !important;
}

.atm-f {
    display: none !important;
}

/* OUTROS */

.hammer {
    color: white;
}

.secao__lance__dar-lance {
    background-color: {{COLOR_BUTTONS}};
    border-radius: 4px;
    padding: 20px;
    max-width: 360px;
    margin: 0 auto;
}

.Plugin_CSS_galeriaa .plugin_seta_left,
.Plugin_CSS_galeriaa .plugin_seta_right {
    display: block !important;
}

@media screen and (min-width: 760px) {

    .secao__lance {
        display: flex;
        width: 100%;
        margin-top: 20px;
        align-items: flex-start;
        gap: 50px;
    }

    .secao__lance__informacoes {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .secao__lance__dar-lance {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

}

.li__info {
    background: white;
    border-radius: 4px;
}

@media screen and (max-width: 1024px) {
    .lotes__infos {
        margin: 0 11px !important;
    }

}

.lc2-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
}

/* a “faixa” do carrossel precisa crescer e permitir overflow interno */
.lc2-carousel {
    flex: 1;
    /* ocupa todo o espaço entre as setas */
    min-width: 0;
    /* evita quebrar o layout quando os cards são largos */
    display: flex;
}

/* janela e trilho */
.lc2-viewport {
    width: 100%
}

.lc2-rail {
    display: flex;
    gap: 8px;
    padding: 6px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;

}

.lc2-rail {
    overflow-x: auto !important;
    /* mantém swipe/roda do mouse */
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    /* suaviza no iOS */
    scroll-snap-type: x mandatory;
    scrollbar-width: none !important;
    /* Firefox: oculta */
    -ms-overflow-style: none !important;
    /* IE/Edge legado: oculta */
}

/* WebKit (Chrome/Safari/Edge): oculta totalmente */
.lc2-rail::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

.Galeria_Produtos_Thumbs {
    display: flex;
    flex-wrap: wrap;
}

/* cards */
.lc2-card {
    scroll-snap-align: center;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    background: #fff;
    transition: box-shadow .2s, border-color .2s, transform .2s;
    width: 250px;
}

.lc2-card:hover {
    box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
    border-color: #cfcfcf;
    transform: translateY(-1px)
}

.lc2-card.is-active {
    border-color: {{COLOR_PRIMARY}};
    box-shadow: 0 0 0 2px rgba(40, 66, 143, .12) inset;
    color: {{COLOR_PRIMARY}};
    font-weight: 600
}

.lc2-tag {
    font-size: 12px;
    padding: 2px 6px;
    border-radius: 6px;
    background: {{COLOR_BG_LIGHT}};
    color: {{COLOR_PRIMARY}};
    border: 1px solid #dfe5ff
}

.lc2-name {
    display: block;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* botões (as setas) com largura fixa para ficarem “justas” nas bordas */
.lc2-btn {
    width: 36px;
    height: 36px;
    border: 1px solid #e0e0e0;
    background: #fff;
    border-radius: 8px;
    cursor: pointer;
    line-height: 0;
    flex: 0 0 auto;
}

.lc2-btn:hover {
    border-color: #cfcfcf
}

@media (max-width:768px) {
    .lc2-card {
        padding: 8px 10px
    }

    .lc2-name {
        font-size: 13px
    }

    .lc2-rail {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        /* Firefox */
        -ms-overflow-style: none;
        /* IE/Edge legado */
    }

    .lc2-rail::-webkit-scrollbar {
        display: none;
        height: 0;
    }

    /* Chrome/Safari/Edge */
}

/* Desktop: sem scroll, navegação por setas/JS */
@media (min-width:768px) {
    .lc2-rail {
        overflow: hidden !important;
    }
}

.Galeria_Produtos_Thumbs {
    display: flex;
    gap: 5px;
    /* espaço entre as thumbs */
    margin-top: 10px;
    flex-wrap: wrap;
}

.Galeria_Produtos_Thumbs .thumb {
    display: flex;
    margin-top: 10px;
    flex-wrap: wrap;
}

.Galeria_Produtos_Thumbs .thumb:hover {
    transform: scale(1.05);
}

.img_lote {
    width: 70% !important;
}

@media (max-width:768px) {
    .img_lote {
        width: 100% !important
    }
}

/* Galeria v2 (miniaturas abaixo) */
.Galeria_Produtos_Img_Maior.gp2 {
    --gp-w: 800px;
    /* fallback */
    --gp-h: 600px;
    /* fallback */
    /* ocupa toda a largura do container (lv2-gallery-wrap), sem faixas laterais */
    max-width: 100%;
    width: 100%;
    margin: 0;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.gp2-main {
    position: relative;
    width: 100%;
    background: #f7f7f9;
    border: 1px solid {{COLOR_BG_LIGHT}};
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    justify-content: center;
}

.gp2-main figure {
    margin: 0;
    width: 100%;
    flex: 1 1 100%;
}
.gp2-main figure a { display: block; width: 100%; }

.gp2-main a,
.gp2-main img {
    display: block;
    width: 100%;
    height: auto;
}

.gp2-main img {
    /* preenche todo o container (sem faixas brancas), mantendo cantos arredondados */
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    object-fit: cover;
    border-radius: 12px;
    user-select: none;
    -webkit-user-drag: none;
    /* anula o max-width/max-height inline (750px) gerado pela funcao Galeria_Produtos */
    max-width: none !important;
    max-height: none !important;
}

.gp2-thumbs {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    padding: 6px 2px;
    flex-wrap: wrap;
    border-radius: 10px;
    justify-content: center;
}

.gp2-thumbs::-webkit-scrollbar {
    height: 8px;
}

.gp2-thumbs::-webkit-scrollbar-thumb {
    background: #c8c8d8;
    border-radius: 8px;
}

.gp2-thumb {
    flex: 0 0 auto;
    width: 100px;
    height: 70px;
    border: 1px solid {{COLOR_BG_LIGHT}};
    background: #fff;
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

.gp2-thumb:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
}

.gp2-thumb.is-active {
    border-color: {{COLOR_PRIMARY}};
    box-shadow: 0 0 0 2px rgba(40, 66, 143, .15) inset;
}

.gp2-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
}

.gp2-cap {
    position: absolute;
    /* opcional se quiser legenda sobrepor; comente se não usar */
    display: none;
}

/* Acessibilidade via teclado */
.gp2-thumbs:focus-visible {
    outline: 2px solid {{COLOR_PRIMARY}};
    outline-offset: 2px;
}

@media (max-width: 768px) {
    .gp2-thumb {
        width: 80px !important;
        height: 60px !important;
        display: flex;
        margin-top: 12px;
        flex-wrap: wrap;
        border-radius: 10px;
        justify-content: space-evenly;
        align-items: center;
    }
}

.gp2-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===== Overlay da galeria ===== */
.gp2-main-img {
    cursor: pointer;
}

.gp2-overlay {
    position: fixed;
    inset: 0;
    display: none;
    /* hidden por padrão */
    align-items: center;
    justify-content: center;
    z-index: 99999;
}

.gp2-overlay.is-open {
    display: flex;
}

.gp2-overlay-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .85);
}

.gp2-overlay-content {
    position: relative;
    z-index: 1;
    margin: 0;
    padding: 0;
    max-width: 95vw;
    max-height: 95vh;
}

.gp2-overlay-img {
    max-width: 95vw;
    max-height: 95vh;
    width: auto;
    height: auto;
    display: block;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .5);
}

.gp2-overlay-close {
    position: absolute;
    top: 8px;
    right: 8px;
    border: 0;
    border-radius: 8px;
    width: 36px;
    height: 36px;
    cursor: pointer;
    background: rgba(0, 0, 0, .6);
    color: #fff;
    font-size: 22px;
    line-height: 36px;
    text-align: center;
    z-index: 999999;
}

/* ===== Overlay / Carrossel ===== */
.gp2-main-img {
    cursor: pointer;
}

/* indica que abre */

.gp2-overlay {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
}

.gp2-overlay.is-open {
    display: flex;
}

.gp2-overlay-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .85);
}

.gp2o-content {
    position: relative;
    z-index: 1;
    width: min(97vw, 1400px);
    max-height: 97vh;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 10px;
}

.gp2-overlay-close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 8px;
    background: rgba(0, 0, 0, .6);
    color: #fff;
    font-size: 22px;
    line-height: 36px;
    text-align: center;
    cursor: pointer;
}

.gp2o-stage {
    position: relative;
    flex: 1 1 auto;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 8px;
}

.gp2o-img {
    max-width: 100%;
    max-height: 85vh;
    user-select: none;
    -webkit-user-drag: none;
    /* zoom: eventos ficam no .gp2o-stage; a imagem precisa transformar livremente */
    pointer-events: none;
    transform-origin: center center;
    will-change: transform;
    transition: transform .18s ease;
    cursor: zoom-in;
}

/* ===== Badge de LUPA (indica que pode dar zoom) ===== */
.gp2-main-link, .gp2-main { position: relative; }
.gp2-zoom-hint {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(15, 23, 42, .72);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .01em;
    pointer-events: none;
    backdrop-filter: blur(4px);
}
.gp2-zoom-hint svg { width: 15px; height: 15px; display: block; }
/* lupa no canto do modal de zoom */
.gp2o-zoom-badge {
    position: absolute;
    left: 14px;
    bottom: 14px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(15, 23, 42, .62);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    pointer-events: none;
    backdrop-filter: blur(6px);
    transition: opacity .18s ease;
}
.gp2o-zoom-badge svg { width: 15px; height: 15px; display: block; }
.gp2-overlay.is-zoomed .gp2o-zoom-badge { opacity: 0; }

/* o stage captura clique/scroll/touch p/ zoom e pan */
.gp2o-stage {
    touch-action: none;
}
.gp2o-stage.is-zoomable {
    cursor: zoom-in;
}

.gp2o-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    font-size: 22px;
    line-height: 44px;
    text-align: center;
    cursor: pointer;
    z-index: 99999;
}

.gp2o-prev {
    left: 10px;
}

.gp2o-next {
    right: 10px;
}

.gp2o-nav:hover {
    background: rgba(0, 0, 0, .65);
}

.gp2o-thumbs {
    display: flex;
    gap: 8px;
    padding: 4px 2px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.gp2o-thumbs::-webkit-scrollbar {
    display: none;
}

.gp2o-thumb {
    flex: 0 0 auto;
    width: 120px;
    height: 90px;
    border: 1px solid {{COLOR_BG_LIGHT}};
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    transition: border-color .12s ease, box-shadow .12s ease, transform .12s ease;
}

.gp2o-thumb:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}

.gp2o-thumb.is-active {
    border-color: {{COLOR_PRIMARY}};
    box-shadow: 0 0 0 2px rgba(40, 66, 143, .15) inset;
}

.gp2o-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ====== Card de Informações do Lote ====== */
.info-card {
    --azul: var(--azul, {{COLOR_PRIMARY}});
    --borda: #E1E1E1;
    --texto: {{COLOR_BG_DARK}};
    --muted: {{COLOR_SECONDARY_DARK}};
    --bgchip: {{COLOR_SECONDARY_LIGHT}};
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 12px;
    padding: 18px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
}

.info-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.info-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 800;
    color: var(--texto);
    font-size: clamp(18px, 2.4vw, 22px);
}

.info-title i {
    color: var(--azul);
}

.info-chips {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    font-size: 13px;
    font-weight: 600;
    color: {{COLOR_SECONDARY_DARK}};
    background: var(--bgchip);
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 999px;
}

.chip i {
    color: {{COLOR_SECONDARY_DARK}};
}

.chip-link {
    text-decoration: none;
    color: {{COLOR_SECONDARY_DARK}};
    transition: .15s ease;
}

.chip-link:hover {
    filter: brightness(0.98);
}

/* Botão "editla" */
.info-actions {
    margin-left: auto;
}

.info-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    background: #fff;
    color: {{COLOR_SECONDARY_DARK}};
    text-decoration: none;
    border-radius: 8px;
    transition: .2s ease;
}

.info-btn:hover {
    background: {{COLOR_SECONDARY_LIGHT}};
    border-color: #94a3b8;
}

.info-btn i {
    color: {{COLOR_SECONDARY_DARK}};
}

/* divisor suave */
.info-divider {
    height: 1px;
    background: {{COLOR_SECONDARY_LIGHT}};
    margin: 12px 0;
}

/* grid de dados */
.info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 24px;
}

@media (max-width:720px) {
    .info-grid {
        grid-template-columns: 1fr;
    }
}

.info-item .lbl {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .3px;
    color: var(--muted);
    margin-bottom: 4px;
}

.info-item .val {
    font-size: 16px;
    font-weight: 700;
    color: {{COLOR_SECONDARY_DARK}};
}

/* zerar estilo de UL herdado e manter suas classes */
.info-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.info-list .pt5 {
    padding-top: 0 !important;
}

/* preservar cor dos ícones antigos se existirem */
.cor_A0A2A6 {
    color: #A0A2A6 !important;
}

.bid-card {
    --azul: {{COLOR_PRIMARY}};
    --borda: #E1E1E1;
    --texto: {{COLOR_BG_DARK}};
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 12px;
    padding: 16px 18px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    margin-top: 20px;
}

.bid-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.bid-title {
    font-weight: 800;
    color: var(--texto);
    font-size: clamp(18px, 2.4vw, 22px);
}

.bid-info {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.bid-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    font-size: 13px;
    font-weight: 600;
    color: {{COLOR_SECONDARY_DARK}};
    background: {{COLOR_SECONDARY_LIGHT}};
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 999px;
}

.bid-chip i {
    color: {{COLOR_SECONDARY_DARK}};
}

.bid-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 14px;
}

.btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    background: #fff;
    color: {{COLOR_SECONDARY_DARK}};
    text-decoration: none;
    border-radius: 8px;
    transition: .2s ease;
}

.btn-outline:hover {
    background: {{COLOR_SECONDARY_LIGHT}};
    border-color: #94a3b8;
}

.btn-bid {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    padding: 12px 16px;
    min-width: 240px;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--azul);
    background: var(--azul);
    color: #fff;
    border-radius: 10px;
    transition: .2s ease;
}

.btn-bid:hover {
    filter: brightness(1.05);
}

.btn-disabled {
    pointer-events: none;
    opacity: .6;
}

/* responsivo */
@media (max-width:480px) {
    .btn-bid {
        min-width: unset;
        width: 100%;
    }

    .btn-outline {
        width: 100%;
        justify-content: center;
    }
}

.timer-card {
    --accent: #ffc107;
    --borda: {{COLOR_SECONDARY_LIGHT}};
    --bg: #fff;
    --muted: {{COLOR_SECONDARY_DARK}};
    --text: {{COLOR_SECONDARY_DARK}};
    background: var(--bg);
    border-radius: 12px;
    padding: 14px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    margin-bottom: 12px;
}

.timer-head {
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--muted);
    font-size: 12px;
    letter-spacing: .3px;
}

.tgrid {
    margin-top: 8px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.tbox {
    min-width: 90px;
    padding: 10px 12px;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff, #fbfbfd);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.tbox span {
    /* valor (número) */
    font-weight: 800;
    line-height: 1;
    color: var(--text);
    font-size: clamp(22px, 6vw, 34px);
}

.tunit {
    /* rótulo (dias/horas/min/seg) */
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .3px;
    color: var(--muted);
}

.tsep {
    /* “:” dentro da box (opcional) */
    display: none;
    color: #9ca3af;
    font-weight: 700;
}

.timer-card .LL_cronometro_tempo .LL_dias>.tsep,
.timer-card .LL_cronometro_tempo .LL_hora>.tsep,
.timer-card .LL_cronometro_tempo .LL_min>.tsep {
    display: block;
}

/* Estado encerrado (se seu JS aplicar classe no wrapper, já fica estilizado) */
.timer-card.is-done {
    background: #fff8e1;
    border-color: #ffe08a;
}

.timer-card.is-done .timer-head {
    color: #b45309;
}

/* Mobile: caixas mais compactas */
@media (max-width:480px) {
    .tbox {
        min-width: 72px;
        padding: 8px 10px;
    }
}

/* ===== Status do lance atual ===== */
.bidstatus-card {
    --borda: {{COLOR_SECONDARY_LIGHT}};
    --text: {{COLOR_SECONDARY_DARK}};
    --muted: {{COLOR_SECONDARY_DARK}};
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 12px;
    padding: 14px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    text-align: center;
}

.bs-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .3px;
    font-weight: 700;
    font-size: 12px;
}

.currbid-card {
    --borda: {{COLOR_SECONDARY_LIGHT}};
    --bg: #fff;
    --muted: {{COLOR_SECONDARY_DARK}};
    --text: {{COLOR_SECONDARY_DARK}};
    background: var(--bg);
    border-radius: 14px;
    padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
}

.currbid-top {
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 13px;
    color: var(--text);
}

.currbid-user {
    font-weight: 800;
}

.currbid-date {
    color: var(--muted);
    font-weight: 700;
    letter-spacing: .3px;
    font-size: 12px;
}

.currbid-divider {
    height: 1px;
    background: {{COLOR_SECONDARY_LIGHT}};
    border-radius: 1px;
    margin: 10px 0;
}

.currbid-amount {
    text-align: center;
    padding: 4px 0 2px;
}

.currbid-amount>span {
    /* label (mantém .LL_lance_atual span) */
    display: block;
    color: #94a3b8;
    font-weight: 800;
    letter-spacing: .4px;
    font-size: 11px;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.currbid-amount>b {
    /* valor (mantém .LL_lance_atual b) */
    display: block;
    font-size: clamp(22px, 5.8vw, 34px);
    line-height: 1.1;
    font-weight: 900;
    color: {{COLOR_PRIMARY}};
}

/* Ajustes responsivos */
@media (max-width:420px) {
    .currbid-top {
        gap: 6px;
    }

    .currbid-date {
        font-size: 11px;
    }
}

.acc {
    margin-top: 16px;
}

.acc-item {
    border: 1px solid #E1E1E1;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
}

.acc-item+.acc-item {
    margin-top: 10px;
}

/* Summary (cabeçalho) */
.acc-item>summary {
    list-style: none;
    cursor: pointer;
    user-select: none;
    outline: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    font-weight: 800;
    color: {{COLOR_BG_DARK}};
    font-size: 14px;
}

.acc-item>summary::-webkit-details-marker {
    display: none;
}

.acc-title {
    display: flex;
    align-items: center;
    gap: 10px;
}

.acc-icon {
    width: 22px;
    height: 22px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 999px;
    display: grid;
    place-items: center;
    color: {{COLOR_SECONDARY_DARK}};
    flex: 0 0 auto;
}

.acc-chevron {
    transition: transform .2s ease;
}

.acc-item[open] .acc-chevron {
    transform: rotate(180deg);
}

/* Painel */
.acc-panel {
    padding: 14px 16px;
    border-top: 1px solid {{COLOR_SECONDARY_LIGHT}};
    font-size: 14px;
    color: {{COLOR_SECONDARY_DARK}};
}

/* Tabela moderna (Histórico) */
.modern-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.modern-table thead td {
    background: #f3f4f6;
    color: {{COLOR_SECONDARY_DARK}};
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .3px;
    font-size: 12px;
    border-bottom: 1px solid {{COLOR_SECONDARY_LIGHT}};
}

.modern-table td {
    padding: 10px;
    text-align: center;
    border-bottom: 1px solid {{COLOR_SECONDARY_LIGHT}};
}

.modern-table tbody tr:hover {
    background: #f9fafb;
}

/* Lista simples para anexos */
.acc-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.acc-links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 8px;
    text-decoration: none;
    color: {{COLOR_SECONDARY_DARK}};
    background: #fff;
    font-weight: 700;
    font-size: 13px;
    transition: .2s ease;
}

.acc-links a:hover {
    background: {{COLOR_SECONDARY_LIGHT}};
    border-color: {{COLOR_SECONDARY_LIGHT}};
}

/* Google Maps dentro do painel */
.google_maps iframe {
    border-radius: 10px;
}

/* Badge opcional de seção */
.acc-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    color: {{COLOR_SECONDARY_DARK}};
    background: {{COLOR_SECONDARY_LIGHT}};
    font-weight: 800;
    letter-spacing: .3px;
}

#box_info_leilao .acc-panel .box__ {
    display: block !important;
}

.cta-card {
    --azul: {{COLOR_PRIMARY}};
    --borda: {{COLOR_SECONDARY_LIGHT}};
    --muted: {{COLOR_SECONDARY_DARK}};
    --text: {{COLOR_SECONDARY_DARK}};
    --soft: {{COLOR_SECONDARY_LIGHT}};
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 14px;
    padding: 18px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    margin-top: 16px;
}

.cta-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.cta-title {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text);
    font-weight: 900;
    font-size: clamp(18px, 2.4vw, 22px);
}

.cta-title i {
    color: var(--azul);
}

.cta-sub {
    color: var(--muted);
    font-size: 13px;
    margin-top: 2px;
}

.cta-benefits {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 14px;
    margin: 12px 0 6px;
    padding: 0;
    list-style: none;
}

.cta-benefits li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: {{COLOR_SECONDARY_DARK}};
    font-size: 14px;
}

.cta-benefits i {
    color:{{COLOR_PRIMARY}};
    background: {{COLOR_BG_LIGHT}};
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-size: 12px;
    margin-top: 1px;
}

.cta-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 800;
    padding: 12px 16px;
    font-size: 14px;
    transition: .2s ease;
    border: 1px solid transparent;
}

.cta-primary {
    background: var(--azul);
    color: #fff;
    border-color: var(--azul);
}

.cta-primary:hover {
    filter: brightness(1.06);
}

.cta-ghost {
    background: #fff;
    color: {{COLOR_SECONDARY_DARK}};
    border-color: {{COLOR_SECONDARY_LIGHT}};
}

.cta-ghost:hover {
    background: var(--soft);
    border-color: #94a3b8;
}

.cta-note {
    color: var(--muted);
    font-size: 12px;
    margin-top: 6px;
}

@media (max-width:640px) {
    .cta-benefits {
        grid-template-columns: 1fr;
    }

    .cta-actions .cta-btn {
        flex: 1 1 100%;
        justify-content: center;
    }
}

.cards__titulo {
    font-size: 24px;
    font-family: 'Roboto', sans-serif;
    display: flex;
    justify-content: flex-start;
    padding: 15px 0;
    max-width: 1320px;
    margin: 0 auto;
}

.cards__main1 {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 1380px;
    margin: 0 auto;
}

.lots-section {
    --azul: {{COLOR_PRIMARY}};
    --borda: {{COLOR_BG_LIGHT}};
    --bg: {{COLOR_BG_LIGHT}};
    --texto: {{COLOR_SECONDARY_DARK}};
    --suave: {{COLOR_SECONDARY_LIGHT}};
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    padding: 20px 12px;
    color: var(--texto);
}

.lots-wrap {
    max-width: 1200px;
    margin: 0 auto
}

.lots-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px
}

.lots-header h2 {
    margin: 0;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 800;
    color: {{COLOR_SECONDARY_DARK}}
}

.lots-actions {
    display: flex;
    gap: 8px
}

.nav-btn {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid var(--borda);
    background: #fff;
    color: var(--azul);
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease;
}

.nav-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(40, 66, 143, .12)
}

.nav-btn:disabled {
    opacity: .4;
    cursor: not-allowed
}

.lots-scroller {
    position: relative
}

.lots-track {
    display: flex;
    gap: 12px;
    padding: 4px;
    overflow-x: auto;
    overflow-y: visible;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    /* Firefox */
}

.lots-track::-webkit-scrollbar {
    display: none
}

/* Chrome/Safari */

.lote-card {
    scroll-snap-align: start;
    list-style: none;
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 14px;
    overflow: hidden;
    transition: transform .16s ease, box-shadow .16s ease;
    min-width: 260px;
    max-width: 360px;
}

.lote-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(10, 22, 70, .07)
}

.lote-link {
    display: block;
    color: inherit;
    text-decoration: none
}

.lote-thumb {
    position: relative;
    aspect-ratio: 16/10;
    background: {{COLOR_BG_LIGHT}}
}



.status-online {
    background: {{COLOR_PRIMARY}} !important
}

.status-soon {
    background: #ef7d00
}

.lote-info {
    padding: 10px 12px
}

.lote-titulo {
    margin: 0 0 4px;
    font-size: 15px;
    font-weight: 800;
    color: {{COLOR_SECONDARY_DARK}}
}

.lote-meta {
    margin: 0;
    color: var(--azul);
    font-weight: 800;
    font-size: 14px
}

.lote-tempo {
    margin: 4px 0 0;
    color: var(--suave);
    font-size: 12px
}

.fade {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 40px;
    pointer-events: none;
    background: linear-gradient(to right, var(--bg), transparent);
    z-index: 2;
}

.fade-right {
    right: 0;
    transform: scaleX(-1)
}

.fade-left {
    left: 0
}

/* Responsivo */
@media (max-width: 640px) {
    .lots-section {
        padding: 16px 10px
    }

    .lots-track {
        grid-auto-columns: 78%
    }

    /* cards mais largos no mobile */
}

.trust-section {
    --azul: {{COLOR_PRIMARY}};
    --azul-esc: {{COLOR_SECONDARY_DARK}};
    --borda: {{COLOR_BG_LIGHT}};
    --bg: {{COLOR_BG_LIGHT}};
    --texto: {{COLOR_SECONDARY_DARK}};
    --suave: {{COLOR_SECONDARY_DARK}};
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: var(--bg);
    padding: 40px 16px;
    color: var(--azul-esc);
    border-top: 1px solid var(--borda);
    border-bottom: 1px solid var(--borda);
}

.trust-wrap {
    max-width: 1200px;
    margin: 0 auto
}

.trust-header h2 {
    margin: 0 0 8px;
    font-size: clamp(22px, 2.4vw, 32px);
    font-weight: 800;
    letter-spacing: .2px
}

.trust-sub {
    margin: 0 0 22px;
    color: var(--suave);
    font-size: clamp(14px, 1.4vw, 16px)
}

.trust-badges {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    list-style: none;
    padding: 0;
    margin: 0 0 22px
}

.trust-badges li {
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 14px;
    padding: 14px;
    display: flex;
    gap: 12px;
    align-items: center;
    min-height: 96px;
    transition: transform .18s ease, box-shadow .18s ease
}

.trust-badges li:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(10, 22, 70, .08)
}



.trust-badges strong {
    display: block;
    font-size: 15px
}

.trust-badges small {
    display: block;
    color: var(--suave);
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.3
}

.trust-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin: 8px 0 22px
}

.stat {
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 14px;
    padding: 18px;
    text-align: center;
    transition: transform .18s ease, box-shadow .18s ease
}

.stat:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(10, 22, 70, .08)
}

.stat-number {
    display: block;
    font-weight: 900;
    font-size: clamp(20px, 2.2vw, 26px);
    color: var(--azul)
}

.stat-label {
    display: block;
    font-size: 13px;
    color: var(--suave);
    margin-top: 4px
}

.trust-testimonial {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 18px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 16px;
    padding: 18px;
    margin: 0 0 18px
}

.trust-testimonial blockquote {
    margin: 0;
    color: var(--texto);
    font-size: clamp(14px, 1.6vw, 16px);
    line-height: 1.55
}

.trust-testimonial figcaption {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px
}

.trust-testimonial .avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--azul);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 800
}

.trust-testimonial small {
    display: block;
    color: var(--suave)
}

.trust-cta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap
}

.trust-btn {
    background: var(--azul);
    color: #fff;
    text-decoration: none;
    padding: 12px 18px;
    border-radius: 12px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(40, 66, 143, .18);
    transition: filter .18s ease, transform .18s ease
}

.trust-btn:hover {
    filter: brightness(1.05);
    transform: translateY(-1px)
}

.trust-link {
    align-self: center;
    color: var(--azul);
    text-decoration: underline;
    font-weight: 700
}

/* Responsivo */
@media (max-width: 992px) {
    .trust-badges {
        grid-template-columns: repeat(2, 1fr)
    }

    .trust-stats {
        grid-template-columns: repeat(2, 1fr)
    }

    .trust-testimonial {
        grid-template-columns: 1fr
    }
}

@media (max-width: 640px) {
    .trust-section {
        padding: 28px 14px
    }

    .trust-header h2 {
        font-size: 22px
    }

    .trust-badges {
        grid-template-columns: 1fr
    }

    .trust-stats {
        grid-template-columns: 1fr
    }
}

.container2 {
    max-width: 500px;
    background-color: #ffffff;
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
    text-align: center;
    margin: 60px auto;
}

.message {
    font-size: 1.1em;
    color: #333;
    margin-bottom: 25px;
}

.impact-phrase {
    font-size: 1.2em;
    font-weight: 500;
    color: #2b886e;
    margin-bottom: 30px;
}

.progress-bar {
    width: 100%;
    height: 20px;
    background: #e3f2fd;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 25px;
}

.progress-bar-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(to right, {{COLOR_BG_DARK}}, {{COLOR_BG_LIGHT}});
    border-radius: 30px;
    box-shadow: 0 0 10px {{COLOR_BG_LIGHT}};
    transition: width 0.4s ease-in-out;
}

.loading-text {
    font-size: 0.95em;
    color: #666;
    margin-top: 10px;
}

.gif {
    width: 70px;
    margin-top: 25px;
}

.containerCadastro {
    max-width: 800px;
    margin: 20px auto;
    background-color: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.form-title {
    text-align: center;
    font-size: 28px;
    color: #333;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 15px;
}s

.form-section {
    margin-bottom: 0px;
}

.form-section hr {
    margin: 20px 0;
    border: 0;
    border-top: 1px solid #eee;
}

.form-section-title {
    font-size: 20px;
    color: #555;
    margin-bottom: 15px;
}

.form-column {
    flex: 1;
    min-width: 200px;
}

.checkbox-group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.checkbox-group input {
    margin-right: 10px;
}

.disclaimer {
    text-align: center;
    color: #666;
    font-size: 14px;
    margin-bottom: 20px;
}

.terms-link {
    color: {{COLOR_SECONDARY_DARK}};
    text-decoration: none;
}

.terms-link:hover {
    text-decoration: underline;
}

.loading-overlay {
    display: none;
    /* Inicialmente oculta */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    /* Z-index alto para sobrepor todo o conteúdo */
    justify-content: center;
    align-items: center;
}

.loading-content {
    text-align: center;
    color: #fff;
}

.loading-content img {
    width: 50px;
    /* Ajuste o tamanho conforme necessário */
    height: 50px;
    /* Ajuste o tamanho conforme necessário */
}

.anchor-buttons {
    text-align: center;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    /* Espaçamento entre os botões */
}

.anchor-buttons button {
    padding: 10px 20px;
    background-color: {{COLOR_SECONDARY_DARK}};
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.anchor-buttons button:hover {
    background-color: {{COLOR_PRIMARY}};
}

.anchor-buttons button.active {
    background-color: {{COLOR_PRIMARY}};
}

.consulta {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 200px;
    flex-direction: column;
    margin-top: 70px;
}

.consulta p {
    font-size: 15px;
    font-weight: bold;
    margin: 5px auto;
}

.consulta div {
    padding: 10px;
    background-color: #e5e5e5;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: space-around;
    width: 400px;
    margin: 10px;
}

.consulta input[type=submit] {
    padding: 5px 10px;
    border: none;
    font-weight: bold;
    background: #5b5b5b;
    color: white;
    border-radius: 5px;
    margin: 0 12px;
}

.campos-acesso {
    display: flex;
    flex-direction: row !important
}

.campos-acesso input {
    width: 22%;
    text-align: center;
    height: 30px;
}

.consulta form {
    display: flex;
    flex-direction: column;
}

.consulta-off p {
    text-align: center
}

.instruc-img {
    padding: 0 !important;
    margin: 0 !important;
}

.error_consulta {
    background-color: #feeff6;
    color: #cd2b31;
    max-width: 30rem;
    min-height: 3rem;
    font-size: 0.9rem;
    padding: 0.4rem 0.7rem;
    border: 1px solid #ebccd1;
    border-radius: 4px;
    flex-wrap: wrap;
    overflow-wrap: break-word;
    text-overflow: clip;
    word-wrap: break-word;
    align-items: center;
    display: flex;
}

@media screen and (max-width: 500px) {
    .consulta {
        width: 100%
    }

    .consulta div {
        width: 90%;
        margin: 10px
    }
}

/* Container principal estilo "email" */
.contact-email {
    max-width: 700px;
    margin: 50px auto;
    padding: 30px;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 10px;
    font-family: Arial, Helvetica, sans-serif;
    color: #444;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

/* Cabeçalho */
.contact-email h2 {
    font-size: 26px;
    margin-bottom: 20px;
    color: {{COLOR_PRIMARY}};
    border-bottom: 2px solid {{COLOR_PRIMARY}};
    padding-bottom: 8px;
    text-align: left;
}

/* Blocos de informação */
.contact-block {
    margin-bottom: 25px;
}

.contact-block b {
    display: block;
    font-size: 16px;
    color: #222;
    margin-bottom: 6px;
}

/* Links e textos */
.contact-block a,
.contact-block span {
    font-size: 15px;
    color: #444;
    text-decoration: none;
    display: block;
    margin-bottom: 3px;
}

.contact-block a:hover {
    text-decoration: underline;
    color: {{COLOR_PRIMARY}};
}

/* Rodapé estilo email */
.contact-footer {
    margin-top: 30px;
    padding-top: 15px;
    border-top: 1px solid #ddd;
    font-size: 14px;
    color: #666;
    text-align: center;
}

/*RESET CSS*/

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    cursor: pointer !important;
}

/*FIM RESET CSS */

/* CABECALHO */

.cabecalho {
    background-color: white;
    padding: 0 11px;
    border-bottom: 4px solid {{COLOR_PRIMARY}};
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 9999999999999999 !important;
}

.cabecalho__logo__menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cabecalho__logo__menu-logo {
    width: 135px !important;
    padding: 5px 0;
}

.cabecalho__logo__menu-hamb {
    position: relative;
    width: 55px !important;
    height: 36px !important;
    padding: 4px 11px;
    border: 1px solid {{COLOR_PRIMARY}};
    border-radius: 4px;
    -webkit-border-radius: 4px;
    /* Prefixo para Safari */
    cursor: pointer;
}

.cabecalho__logo__menu-hamb:hover {
    box-shadow: 0 0 0 4px rgba(43, 136, 110 .5);
    /* Simula o efeito do outline */
}

.cabecalho__menu__principal__dropdown {
    display: flex;
    flex-direction: column;
    gap: 15px;
    color: {{COLOR_PRIMARY}};
    font-size: 16px;
    padding: 5px 0;
}

#dropdownMenu {
    display: none;
    flex-direction: column;
}

.cabecalho__submenu__dropdown {
    background: white;
    color: black;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin-top: 5px;
}

.cabecalho__submenu__dropdown div {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid rgba(0, 0, 0, .15);
    padding: 10px 0;
    gap: 10px;
}

.hover {
    padding: 4px 16px;
    line-height: 1.5;
    color: {{COLOR_BG_DARK}};
}

.hover:hover {
    text-decoration: underline;
    background-color: {{COLOR_BG_DARK}};

}

#submenuDropdownServicos {
    display: none;
}

.container__cabecalho {
    max-width: 560px;
    margin: 10px auto;
}

.secao__topo__banner__container,
.container,
.secao__leilao,
.rodape__section,
.rodape__copyright {
    max-width: 560px;
    margin: 0 auto;
}

.container__botoes__user {
    padding: 10px 0;
    display: flex;
    justify-content: space-around;
    gap: 15px;
}

/* FIM CABECALHO */



.secao__topo__banner {
    background-image: url(/views/imagens/topomorada.jpg);
    background-repeat: repeat-x;
    margin-top: 45px;
    background-position: center;
}

.secao__topo__botoes {
    padding: 20px 24px 24px;
}


.secao__topo__botoes__container {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.secao__topo__botoes__container a {
    background-color: #f8f9fa;
    border-radius: 0.2rem;
    width: 33.33%;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: black;
    text-decoration: none;
    font-size: 12.25px;
    justify-content: center;
    padding: 5px 8px;
    text-align: center;
    line-height: 1.5;
    font-weight: 400;
}

.secao__topo__categorias {
    background-color: #f8f9fa;
    border-radius: 0.2rem;
    padding: 24px 16px 16px;
    text-align: center;
    margin-top: 16px;
    box-shadow: 0px -6px 6px -4px rgba(0, 0, 0, 1);
}

.secao__topo__categorias span {
    font-size: 14px;
    font-weight: 500;
    color: #282c32;
}

.secao__topo__categorias__botoes {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 7px;
}

.secao__topo__categorias__botoes-veiculos {
    color: white;
    text-decoration: none;
    background: #12a3dc;
    font-size: 12.25px;
    padding: 3.5px 7px;
    border-radius: 0.2rem;
    width: 33%;
    line-height: 1.5;
    font-weight: 500;
    vertical-align: middle;
}

.secao__topo__categorias__botoes-imoveis {
    color: white;
    text-decoration: none;
    background: #277ec1;
    font-size: 12.25px;
    padding: 3.5px 7px;
    border-radius: 0.2rem;
    width: 33%;
    line-height: 1.5;
    font-weight: 500;
    vertical-align: middle;
}

.secao__topo__categorias__botoes-materiais {
    color: white;
    text-decoration: none;
    background: {{COLOR_PRIMARY}};
    font-size: 12.25px;
    padding: 3.5px 7px;
    border-radius: 0.2rem;
    width: 33%;
    line-height: 1.5;
    font-weight: 500;
    vertical-align: middle;
}


/* SEÇÃO RODAPÉ */

.rodape__container {
    padding: 42px 0;
}

.rodape__container__imagem {
    border-bottom: 1px solid #ffffff54;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.rodape__container__imagem img {
    width: 140px !important;
    margin-bottom: 16px;
}

.rodape__container__informacoes {
    margin-top: 16px;
}

.rodape__container__informacoes ul {
    color: white;
    display: flex;
    flex-direction: column;
    gap: 25px;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;
}

.rodape__container__informacoes li {
    display: flex;
    flex-direction: column;

}

.rodape__container__informacoes p {
    text-decoration: underline;
}

.rodape__container__links__uteis,
.rodape__container__links__app {
    display: flex;
    margin-top: 24px;
    flex-direction: column;
    gap: 25px;
}

.rodape__container__links__uteis h5,
.rodape__container__links__app h5 {
    font-size: 17.5px;
    font-weight: 400;
    color: white;
    margin-bottom: 14px;
}

.rodape__container__links__uteis span,
.rodape__container__links__app span {
    display: flex;
    color: #aeaeae;
    font-size: 16px;
    flex-direction: column;
    gap: 15px;
    font-weight: 400;
}

.rodape__container__selo {
    background: white;
    padding: 6px;
    text-align: center;
    box-shadow: 0 0 1em white;
    margin-top: 48px;
}

.rodape__container__selo img {
    width: 140px;
    overflow-clip-margin: content-box;
    overflow: clip;
}

.rodape__copyright {
    padding: 11px;
    color: white;
}

.rodape__copyright__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    font-weight: 400;
}

.rodape__copyright__container p,
.rodape__copyright__container div {
    padding: 12px 0;
    font-size: 14px;
    line-height: 1.5;
}

/* FIM */

/* SEÇÃO LEILÃO */

.secao__leilao__botoes__container {
    display: flex;
    flex-direction: column;
}

.secao__leilao__botoes__botao {
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: start;
    border: 1px solid #dee2e6 !important;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    padding: 7px 14px;
}

.selecionado {
    background-color: white !important;
    color: black !important;
}

.secao__leilao__container__botoes__busca {
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: 20px;
    padding: 16px 0;
}

.secao__leilao__container__botoes__busca div {
    display: flex;
    justify-content: center;
    text-align: center;
}

.secao__leilao__container__botoes__busca a {
    width: 100%;
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    border-radius: 0.3rem;
}

/* SEÇÃO CARROSSEL CARDS */

.card__leilao {
    display: flex;
    flex-direction: column;
    padding: 0.5rem;
    max-width: 285px;
    margin: 15px auto;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    /* Adiciona uma sombra suave */
    transition: box-shadow 0.3s ease;
    justify-content: space-between;
}

.card__leilao:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    /* Ajusta a sombra quando o mouse passa sobre o card */

}

.card__numero-logo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    font-size: 16px;
    color: black;
    margin-bottom: 8px;
}

.card__data-hora {
    display: flex;
    text-align: center;
    font-weight: bold;
    padding: 16px;
    line-height: 1.5;
    color: #282c32;
    border-bottom: 1px solid #80808061;
    font-size: 16px;
    justify-content: center;
    gap: 30px;
    min-height: 80px;
    align-items: center;
}

.card__info {
    display: flex;
    justify-content: center;
    text-align: center;
    line-height: 1.5;
    padding: 10px;
    gap: 10px;
}

.card__valor-lance {
    display: flex;
    flex-direction: column;
    text-align: start;
    /*border-bottom: 1px solid #80808061;*/
    padding: 10px 10px 0 10px;
}

.new-carousel-section {
    width: 100%;
    /* Ajuste a largura conforme necessário */
    margin: 0 auto;
    /* Centralizar a seção */
}

.new-carousel {
    width: 100%;
    overflow: hidden;
}

.new-carousel img {
    width: unset;
    height: unset;
}

.slick-dots {
    position: relative !important;
    bottom: 0 !important;
    top: 5px !important;
}

.slick-dots li button:before {
    display: inline-block !important;
    width: 25px !important;
    /* Largura da barra */
    height: 4px !important;
    /* Altura da barra */
    background-color: #669acb !important;
    margin: 0 5px !important;
    cursor: pointer !important;
    content: '' !important;
}

.new-carousel-section .slick-next {
    background-color: {{COLOR_PRIMARY}} !important;
    border-radius: 4px;
    width: 15px !important;
    height: 20px !important;
    background-position: center !important;
}

.new-carousel-section .slick-prev {
    background-color: {{COLOR_PRIMARY}} !important;
    border-radius: 4px;
    width: 15px !important;
    height: 20px !important;
    background-position: center !important;
}

/* FIM  */

/* FIM */

/*SEÇÃO CATEGORIAS*/

.card__categoria {
    position: relative;
    width: 31%;
    height: 140px;
}

.card__categoria__imagem {
    display: flex;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.card__categoria__overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #00000099;
    overflow: hidden;
    width: 100%;
    height: 25%;
    transition: .5s ease;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.card__categoria:hover .card__categoria__overlay {
    height: 100%;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.card__categoria__overlay span {
    color: white;
    font-size: 12px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}

.container__card__categoria {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    max-width: 560px;
    margin: 0 auto;
}

/*FIM*/

/* SEÇÃO PROX LEILÕES */

.secao__prox__leiloes__card {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.container__secao__prox__leiloes__card {
    max-width: 560px;
    margin: 0 auto;
}

/* FIM */

/*SEÇÃO COMITENTES*/
.container__secao__comitente {
    display: flex;
    flex-direction: column;
    max-width: 560px;
    margin: 0 auto;
    padding: 18px 5px;
}

.container__secao__comitente__logo {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 0 11px;
}

.container__secao__comitente__logo div {
    width: 25%;
}

.container__secao__comitente__logo img {
    width: 100%;

    object-fit: cover;
}

.secao__comitente__link {
    display: flex;
    justify-content: flex-start;
    padding: 14px;
}

/*FIM*/

/* SEÇÃO AGENDA */

.secao__agenda__container__flex {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.secao__agenda__botao__completa {
    display: flex;
    flex-direction: column;
    color: {{COLOR_BG_DARK}};
}

.secao__agenda__botao__completa span {
    font-size: 20px;
}

.secao__agenda__botao__completa p {
    font-size: 14px;
    padding-top: 10px;
}

.secao__agenda__botao__completa a {
    margin: 24px 0;
    background-color: {{COLOR_SECONDARY_DARK}};
    border: 1px solid {{COLOR_BG_DARK}};
    align-self: flex-start;
    color: white;
    padding: 10px 18px;
    border-radius: 4px;
    font-size: 14px;
}

.secao__cards__agenda {
    display: flex;
    flex-direction: column;
    overflow: auto;
    height: 400px;
}

.secao__card__agenda__cinza {
    background: #606060;
    border-color: #dee2e6;
    border-style: solid;
    border-width: 1px 0 1px 0;
    padding: 1rem;
}

.secao__card__agenda__branco {
    background: white;
    border-color: #dee2e6;
    border-style: solid;
    border-width: 1px 0 1px 0;
    padding: 1rem;
}

.secao__cards__agenda a {
    color: white;
    text-decoration: none;
    font-size: 12.25px;
    text-align: center;
    display: flex;
    justify-content: center;
    padding: 8px 0;
}

.secao__card__conteudo div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.secao__card__agenda__estilo-botao-roxo {
    background-color: #5b1474;
    border: 1px solid #4f1165;
    border-radius: 2px;
    padding: 0.25rem 0.5rem;
}

.secao__card__agenda__estilo-verde {
    background-color: #27a188;
    border: 1px solid #1a7562;
    border-radius: 2px;
    padding: 0.25rem 0.5rem;
}

.secao__card__agenda__estilo-amarelo {
    background-color: #fac43c;
    border: 1px solid #c99b26;
    border-radius: 2px;
    padding: 0.25rem 0.5rem;
}

.secao__card__agenda__estilo-encerrado {
    background-color: #ed4c6d;
    border: 1px solid #b02a37;
    border-radius: 2px;
    padding: 0.25rem 0.5rem;
}

.secao__agenda__container {
    max-width: 560px;
    margin: 0 auto;
}

.secao__cards__agenda::-webkit-scrollbar {
    width: 6px;
    background-color: #F5F5F5;
}

.secao__cards__agenda::-webkit-scrollbar-thumb {
    background-color: #282c32;
}

.secao__cards__agenda::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}


/* FIM */

/* SEÇÃO LOGIN */
.secao__login__container {
    padding: 3rem 1rem;
}

.secao__login__container__inputs {
    display: flex;
    padding: 15px;
    max-width: 332px;
    margin: auto;
    flex-direction: column;
}

.secao__login__container__inputs h2 {
    font-size: 21px;
    color: #282c32;
    margin-bottom: 14px;
}

.secao__login__container__inputs form {
    display: flex;
    flex-direction: column;
}

.secao__login__container__inputs button {
    margin-bottom: 14px;
}

.secao__login__container__inputs span {
    text-align: center;
    border-top: 1px solid #80808078;
    padding-top: 14px;
    color: {{COLOR_BG_DARK}};
    font-size: 14px;
}

.secao__login__input__div {
    display: flex;
    flex-direction: column;
    margin-bottom: 14px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: .25rem;
}

.secao__login__input__div div {
    display: flex;
}

.secao__login__input__div input {
    width: 100%;
    border: none;
    border-color: {{COLOR_SECONDARY_LIGHT}};
    color: {{COLOR_BG_DARK}};
    background-color: #fff;
    background-clip: padding-box;
    font-size: 1rem;
    font-weight: 400;
    padding: 1rem 0.75rem;
    border-radius: 0.25rem;
    outline: none;
}

.password-container {
    position: relative;
}

.password-toggle {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

/* FIM */

/* RESPONSIVO */

@media screen and (min-width: 576px) {
    .secao__leilao__botoes__container {
        flex-direction: row;
        justify-content: space-between;
    }

    .secao__leilao__botoes__botao {
        width: 100%;
        justify-content: center;
        padding: 10px 14px;
        border-bottom: none !important;
    }
}

@media screen and (min-width: 760px) {

    .container__cabecalho,
    .container,
    .secao__leilao,
    .secao__leilao,
    .secao__prox__leiloes__card,
    .container__secao__prox__leiloes__card,
    .container__card__categoria,
    .secao__agenda__container,
    .secao__prox__leiloes__card,
    .container__secao__comitente,
    .rodape__section,
    .rodape__copyright {
        max-width: 760px;
        margin: 0 auto;
    }

    .card__leilao {
        max-width: 100% !important;
    }

    .secao__topo__banner__container {
        display: flex;
        max-width: 760px;
        margin: 0 auto;
        align-items: center;
    }

    .secao__topo__banner-logo {
        width: 30%;
    }

    .secao__topo__botoes {
        width: 760px;
    }

    .rodape__flex__desktop {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        justify-content: space-between;
    }

    .rodape__container__informacoes {
        width: 40%;
    }

    .rodape__container__links__uteis {
        width: 33%;
        margin-top: 16px;
    }

    .rodape__container__links__app {
        margin-top: 16px;
    }

    .rodape__copyright__container {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    .rodape__copyright__container p {
        width: 45%;
        text-align: start;
    }

    .secao__leilao__container__botoes__busca {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .secao__agenda__container {
        flex-direction: row;
    }

    .secao__agenda__botao__completa {
        width: 25%;
    }

    .secao__cards__agenda {
        width: 75%;
    }

    .secao__agenda__container__flex {
        flex-direction: row !important;
    }

    .secao__card__conteudo {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
    }

    .secao__card__conteudo div {
        margin: 0;
        gap: 10px;
        width: 30% !important;
    }

    .secao__card__conteudo p {
        margin-bottom: 0 !important;
        width: 35%;
    }

    .secao__card__conteudo a {
        width: 15%;
        margin-left: auto;
    }

    .rodape__container__imagem {
        flex-direction: row;
        gap: 20px;
    }
}

@media screen and (min-width: 1000px) {
    .container__cabecalho {
        display: flex;
        align-items: center;
        gap: 25px;
        /* padding: 0 25px; */
    }

    .fs-28 {
        font-size: 28px !important;
    }

    .fs-24 {
        font-size: 24px !important;
    }

    .fs-18 {
        font-size: 18px !important;
    }

    #botaoMenu {
        display: none;
    }

    .container__cabecalho,
    .container__card__categoria {
        max-width: none;
        margin: 0;
    }

    #dropdownMenu {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        flex-direction: row;
        width: 100%;
    }

    .cabecalho__menu__principal__dropdown {
        display: flex;
        flex-direction: row;
    }

    .cabecalho__submenu__dropdown {
        display: none;
        position: absolute;
        top: 45px;
        border: 1px solid rgba(0, 0, 0, .15);
        max-width: max-content;
    }

    .secao__topo__banner__container {
        max-width: 1040px;
        margin: 0 auto;
    }

    .secao__topo__botoes__container a {
        flex-direction: row;
        gap: 5px;
        font-size: 14px;
    }

    .secao__topo__categorias span {
        font-weight: 600;
        font-size: 16px;
    }

    .secao__topo__categorias__botoes-veiculos,
    .secao__topo__categorias__botoes-imoveis,
    .secao__topo__categorias__botoes-materiais {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5px;
        font-size: 14px;
    }

    .secao__topo__botoes,
    .secao__agenda__container {
        max-width: 1020px;
        margin: 0 auto;
    }

    /* .secao__topo__categorias {
    		padding: 24px;	
    	} */

    .new-carousel-section .slick-prev,
    .new-carousel-section .slick-next {
        width: 30px !important;
        height: 30px !important;
    }

    .rodape__section,
    .rodape__copyright,
    .secao__agenda__container,
    .secao__leilao,
    .secao__prox__leiloes__card,
    .container__secao__prox__leiloes__card {
        max-width: 1320px;
        margin: 0 auto;
    }

    .rodape__container__links__uteis {
        width: 23%;
        font-weight: 400;
    }

    .rodape__container__links__app {
        width: 20%;
    }

    .card__categoria {
        width: 15%;
    }

    .container__secao__comitente,
    .container__secao__comitente__logo {
        max-width: 1320px;
        margin: 0 auto;
        flex-wrap: nowrap;
        padding: 14px 0;
    }

    .container__secao__comitente__logo div {
        width: 15%;
    }

    .secao__card__conteudo div {
        width: 20% !important;
    }

    .secao__card__conteudo p {
        width: 50%;
    }

    .secao__login__container__inputs h2 {
        font-size: 28px;
    }

    .secao__login__input__div input {
        font-size: 18px;
    }

    .secao__login__container {
        margin: 8rem;
    }
}

@media screen and (min-width: 1400px) {

    .container__cabecalho,
    .secao__topo__banner__container,
    .rodape__section,
    .rodape__copyright,
    .container__card__categoria {
        max-width: 1320px;
        margin: 0 auto;
    }

    .cabecalho__menu__principal__dropdown {
        font-size: 16px;
    }

    .rodape__container__informacoes,
    .rodape__container__links__uteis span,
    .rodape__container__links__app span,
    .rodape__copyright__container p,
    .rodape__copyright__container div {
        font-size: 14px;
        font-weight: 400;
    }

    .rodape__container__imagem {
        border-bottom: 2px solid #ffffff54;
        margin-bottom: 24px;
    }

    .rodape__container__links__uteis h5,
    .rodape__container__links__app h5 {
        font-size: 20px;
    }

}

.fa-classic,
.fa-regular,
.fa-solid,
.far,
.fas {
    font-family: "Font Awesome 6 Free" !important;
}

.lots-section .lots-scroller {
    position: relative;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    /* respiro nas bordas pra não colar nas extremidades */
    padding-left: 10px !important;
    padding-right: 10px !important;

    /* esconder barra de rolagem, mantendo scroll */
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.lots-section .lots-scroller::-webkit-scrollbar {
    width: 0;
    height: 0;
    background: transparent;
}

/* o trilho só organiza os cards; não tem scroll próprio */
.lots-section .lots-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    /* vamos controlar o espaço com margin-right */
    list-style: none;
    margin: 0;
    padding: 8px 0;
    overflow: visible !important;
    width: auto !important;
    max-width: none !important;
}

/* cada card com largura real — máx 280px */
.lots-section .lots-track>li {
    flex: 0 0 clamp(220px, 24vw, 280px) !important;
    /* <= max 280px */
    min-width: 220px !important;
    width: auto !important;
    max-width: none !important;
    float: none !important;
    display: block !important;
    box-sizing: border-box;

    /* **espaçamento entre os cards** */
    margin-right: 10px !important;
}

.lots-section .lots-track>li:last-child {
    margin-right: 0 !important;
}

.lots-section .lots-track>li.clear {
    display: none !important;
}

/* garante que conteúdo interno respeite o card e não crie colagem visual */
.lots-section .lots-track img {
    max-width: 100%;
    height: auto;
    display: block;
}

.lots-section .lots-track>li>* {
    max-width: 100%;
    margin: 0 !important;
}

/* feedback dos botões */
.lots-section .nav-btn[disabled] {
    opacity: .35;
    cursor: not-allowed;
}

/* esconder fades quando não há scroll */
.lots-section .lots-scroller:not(.has-scroll) .fade {
    display: none;
}

@media (max-width: 768px) {

    /* garante que o trilho é flex e não flutua nada herdado */
    .lots-section .lots-track {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        /* ignorar gap no mobile */
    }

    .lots-section .lots-track>li {
        float: none !important;
        /* anula floats de classes (.wr4 etc.) */
        margin: 0 !important;
        /* zera qualquer margem que cole os cards */
        padding-right: 10px !important;
        /* dá o espaço ENTRE os itens */
        box-sizing: border-box !important;
    }

    .lots-section .lots-track>li:last-child {
        padding-right: 0 !important;
        /* último item sem espaço extra */
    }

    /* respiro nas bordas do carrossel */
    .lots-section .lots-scroller {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* evita que o conteúdo interno “estoure” e esconda o vão */
    .lots-section .lots-track>li>* {
        max-width: 100% !important;
        margin: 0 !important;
    }

    .lote-card {
        min-width: auto !important;
    }
}

.btn-ver-todos-d {
    background: var(--azul);
    width: 100px;
    font-weight: 600;
    color: var(--borda);
}

.smart-search {
    max-width: 900px;
    margin: 12px auto;
    padding: 0 10px;
}

.smart-search__title {
    margin: 0 0 8px;
    font: 700 18px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: {{COLOR_SECONDARY_DARK}};
}

.smart-search__form {
    position: relative;
    display: flex;
    align-items: center;
    background: var(--search-bg);
    border: 1px solid var(--search-border);
    border-radius: 999px;
    box-shadow: var(--search-shadow);
    padding: 6px 56px 6px 48px;
    /* espaço para ícone e botão */
    transition: border-color .2s, box-shadow .2s, background .2s;
}

.smart-search__form:focus-within {
    border-color: var(--search-ring);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--search-ring) 20%, transparent), var(--search-shadow);
}

.smart-search__icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    opacity: .9;
    pointer-events: none;
}

.smart-search__input {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    outline: 0;
    background: transparent;
    width: 100%;
    font: 500 16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: var(--search-text);
}

.smart-search__input::placeholder {
    color: var(--search-muted);
}

.smart-search__btn,
.smart-search__clear {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 0;
    outline: 0;
    background: transparent;
    cursor: pointer;
    border-radius: 999px;
}

.smart-search__btn {
    right: 8px;
    background: {{COLOR_SECONDARY_DARK}};
}

.smart-search__btn svg {
    width: 19px;
    height: 19px;
    color: #fff;
}

.smart-search__btn:active {
    transform: translateY(-50%) scale(0.97);
}

.smart-search__clear {
    right: 52px;
    color: var(--search-muted);
}

.smart-search__clear:hover {
    color: {{COLOR_SECONDARY_DARK}};
}

/* Chips de sugestão */
.smart-search__hints {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.smart-search__chip {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    padding: 8px 12px;
    font: 600 12px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: var(--chip-bg);
    color: var(--chip-text);
}

.smart-search__chip:hover {
    background: var(--chip-bg-hover);
}

/* Responsivo */
@media (max-width:680px) {
    .smart-search {
        padding: 0 8px;
    }

    .smart-search__form {
        padding: 6px 52px 6px 46px;
    }

    .smart-search__btn {
        width: 36px;
        height: 36px;
        right: 6px;
    }

    .smart-search__clear {
        right: 48px;
    }

    .smart-search__input {
        font-size: 15px;
    }
}


.search-hero {
    max-width: 900px;
    margin: 12px auto;
    padding: 10px;
}

.search-bar {
    position: relative;
    display: flex;
    align-items: center;
    background: var(--s-bg);
    border: 1px solid var(--s-border);
    border-radius: 999px;
    padding: 8px 56px 8px 48px;
    /* espaço p/ ícone e botão */
    min-height: 52px;
    box-shadow: var(--s-shadow);
    transition: border-color .2s, box-shadow .2s, background .2s;
}

.search-bar:focus-within {
    border-color: var(--s-ring);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--s-ring) 20%, transparent), var(--s-shadow);
}


.search-input {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    outline: 0;
    background: transparent;
    width: 100%;
    font: 500 16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: var(--s-text);
}

.search-input::placeholder {
    color: var(--s-muted);
}

.search-btn,
.search-clear {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 0;
    outline: 0;
    border-radius: 999px;
    cursor: pointer;
    background: transparent;
}

.search-btn {
    right: 8px;
    background: {{COLOR_PRIMARY}};
    color: #fff;
    transition: transform .06s, background .2s;
}

.search-btn:hover {
    background: var(--btn-bg-hover);
}

.search-btn:active {
    transform: translateY(-50%) scale(.97);
}

.search-btn svg {
    width: 18px;
    height: 18px;
}

.search-clear {
    right: 54px;
    color: var(--s-muted);
}

.search-clear:hover {
    color: {{COLOR_SECONDARY_DARK}};
}

.search-clear[hidden] {
    display: none;
}

/* Responsivo */
@media (max-width:680px) {
    .search-bar {
        min-height: 48px;
        padding: 6px 52px 6px 46px;
    }

    .search-btn {
        width: 36px;
        height: 36px;
        right: 6px;
    }

    .search-clear {
        right: 46px;
    }

    .search-input {
        font-size: 15px;
    }
}

/* Acessibilidade: utilitário para label visualmente oculto */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media screen and (min-width: 698px) {
    .sumir {
        display: none;
    }

}

.sort-toolbar {
    max-width: 1320px;
    margin: 8px auto 16px;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: transparent;
}

.sort-toolbar__label {
    font-weight: 800;
    color: {{COLOR_SECONDARY_DARK}};
    letter-spacing: .2px;
}

.sort-toolbar__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sort-chip {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    background: var(--sort-chip-bg);
    color: var(--sort-chip-text);
    border: 1px solid var(--sort-border);
    border-radius: 999px;
    font: 600 13px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    cursor: pointer;
    box-shadow: var(--sort-shadow);
    transition: transform .12s ease, background .2s, color .2s, border-color .2s;
}

.sort-chip:hover {
    transform: translateY(-1px);
}

.sort-chip:active {
    transform: translateY(0);
}

.sort-chip.is-active {
    background: var(--sort-chip-active-bg);
    color: var(--sort-chip-active-text);
    border-color: transparent;
}

.sort-chip svg {
    width: 14px;
    height: 14px;
    opacity: .95;
}

.sort-chip .dir svg {
    width: 12px;
    height: 12px;
}

.sort-chip[data-dir="desc"] .icon-up {
    display: none;
}

.sort-chip[data-dir="asc"] .icon-down {
    display: none;
}

@media (max-width:680px) {
    .sort-toolbar {
        padding: 6px 8px;
    }

    .sort-toolbar__label {
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .rodape__section {
        padding: 0 11px;
    }

}

.pis {
    animation: blink 1s infinite;
}

/* Definir a animação */
@keyframes blink {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 1;
    }
}

/* SEÇÃO CARDS - MAIN*/



.cards__main {
    display: flex;
    flex-direction: column;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    font-family: 'Roboto', sans-serif;
    padding: 15px;
    border: 1px solid #80808063;
    border-radius: 3px;
    margin: 15px auto;
    max-width: 300px;
}

.cards__main img {
    height: 200px;
    max-width: 100%;
    margin: auto;
    max-width: 90% !important;
    width: 90%;
}


.cards__main h2 {
    padding: 10px 0;
    border-bottom: 1px solid #80808063;
    font-size: 16px;
    font-weight: 600;
}

.cards__main h3,
.cards__main p {
    padding: 5px 0;
}

.cards__main strong {
    font-weight: bold;
}

.cards__main span {

    padding: 5px 0;
}

.cards__main button {
    border: none;
    border-radius: 4px;
    font-size: 16px;
    color: white;
    padding: 10px;
    font-weight: bold;
    width: 100%
}

.img {
    width: 100% !important;
    max-width: 100% !important;
}

.calendar-icon {
    width: 50px;
    height: 50px;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    border: 1px solid #d1d1d1;
    overflow: hidden;
    font-family: Arial, sans-serif;
    display: flex;
    flex-direction: column;
}

.calendar-top {
    background-color: #e74c3c;
    color: white;
    text-align: center;
    padding: 2px 0;
    font-weight: bold;
    font-size: 7px;
}

.calendar-day {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

@media (min-width: 768px) {
    .card__leilao {
        margin: 5px;
    }
}

@media (max-width: 768px) {
    .card__leilao {
        margin: 0;
        min-width: 320px;
    }
}

@media (max-width: 330px) {
    #lote {
        width: 300px;
    }

    .card__leilao {
        margin: 0;
        min-width: 300px;
    }
}

/* ===== CONTAINER DE CARDS ===== */
.lot-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    align-items: stretch;
}

/* ===== CARD ===== */
.lot-card {
    --azul: {{COLOR_PRIMARY}};
    --borda: #e6e8ef;
    --soft: {{COLOR_SECONDARY_LIGHT}};
    --texto: {{COLOR_SECONDARY_DARK}};
    --muted: #64748b;
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
    min-height: 300px;
    width: 95%;
}

.lot-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(10, 22, 70, .10);
    border-color: #d9dce6;
}

/* topo */
.lot-thumb {
    position: relative;
    background: {{COLOR_BG_LIGHT}};
    overflow: hidden;
    aspect-ratio: auto !important;
    /* cancela 16/10 */
}

.lot-thumb>.img {
    line-height: 0;
    /* remove gap de baseline */
    height: auto !important;
    /* garante que o wrapper não force corte */
}

.lot-thumb>.img>img {
    display: block;
    width: 100% !important;
    /* ocupa toda a largura do card */
    height: auto !important;
    /* mantém proporção, sem corte */
    object-fit: contain !important;
    /* redundante com height:auto, mas protege se alguém pôr height */
    object-position: center;
    max-width: none;
}

/* selo do lote */
.lot-badge {
    position: absolute;
    top: 35px;
    left: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    font-weight: 800;
    font-size: 12px;
    color: #fff;
    background: {{COLOR_PRIMARY}};
    border-radius: 999px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
}

.lot-badge small {
    opacity: .85;
    font-weight: 700;
    letter-spacing: .3px;
}

/* ===== MIolo do card usa GRID nivelado ===== */
.lot-body {
    padding: 14px 14px 6px;
    color: var(--texto);
    display: grid;
    row-gap: 10px;
    grid-template-rows:
        minmax(30px, auto)
        /* 1) título */
        minmax(34px, auto)
        /* 2) PLACA + STATS (mesma linha) */
        minmax(40px, auto)
        /* 3) datas/hora */
        24px
        /* 4) usuário */
        minmax(48px, auto);
    /* 5) bloco de lance */
}
.lot-body2{
    grid-template-rows: minmax(30px, auto) /* 1) título */ minmax(34px, auto) /* 2) PLACA + STATS (mesma linha) */ minmax(40px, auto) /* 3) datas/hora */ 26px;
}
/* 2) linha combinada: placa + contadores */
.lot-platebar {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
    /* mantém na mesma linha */
    min-height: 34px;
    min-width: 0;
    /* evita overflow em flex */
}

.lot-plate {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--azul);
    font-weight: 800;
    background: {{COLOR_SECONDARY_LIGHT}};
    border: 1px solid {{COLOR_SECONDARY_DARK}};
    border-radius: 8px;
    padding: 6px 8px;
    flex: 0 0 auto;
}

.lot-stats {
    display: flex;
    gap: 10px;
    flex: 1 1 auto;
    min-width: 0;
    /* ocupa resto da linha */
    justify-content: flex-start;
    /* padrão: esquerda */
}

.lot-platebar .lot-stats--push {
    margin-left: auto;
    justify-content: flex-end;
    /* quando tiver placa -> direita */
}

.lot-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    font-size: 13px;
    font-weight: 700;
    color: {{COLOR_PRIMARY}};
    background: {{COLOR_BG_LIGHT}};
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 10px;
    white-space: nowrap;
    /* não quebra o chip */
}

.lot-chip i {
    color: {{COLOR_PRIMARY}};
}

/* 1) título */
.lot-title {
    font-size: 16px;
    font-weight: 900;
    color: {{COLOR_BG_DARK}};
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* 3) datas/hora */
.lot-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 13px;
    color: {{COLOR_PRIMARY}}; 
    background: {{COLOR_BG_LIGHT}};
}

.lot-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: {{COLOR_PRIMARY}}; 
    background: {{COLOR_BG_LIGHT}};
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 8px;
    padding: 6px 10px;
}

/* 4) usuário */
.lot-user {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.lot-user .lbl {
    font-size: 12px;
    color: {{COLOR_SECONDARY_DARK}};
    font-weight: 700;
}

.lot-user .val {
    font-weight: 800;
    color: {{COLOR_SECONDARY_DARK}};
}

/* 5) lance */
.lot-bid {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-bottom: 1px solid {{COLOR_SECONDARY_LIGHT}};
}

.lot-bid-label {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: .3px;
    color: {{COLOR_SECONDARY_DARK}};
    font-weight: 800;
}

.lot-bid-value {
    font-weight: 900;
    color: {{COLOR_PRIMARY}};
    font-size: 20px;
}

/* rodapé (botão) sempre no fundo */
.lot-footer {
    margin-top: auto;
    padding: 14px;
    display: flex;
    justify-content: center;
    border-top: 1px solid {{COLOR_SECONDARY_LIGHT}};
}

.lot-btn-bid {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 16px;
    min-width: 240px;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--azul);
    background: var(--azul);
    color: #fff;
    border-radius: 12px;
    transition: .2s ease;
}

.lot-btn-bid:hover {
    filter: brightness(1.05);
}

.lot-btn-disabled {
    pointer-events: none;
    opacity: .6;
}

/* status (mantém sua .LL_situacao) */
.lot-status {
    margin: 12px 14px 14px;
    text-align: center;
}

.lot-status .LL_situacao {
    color: #fff;
    font-weight: 800;
    border-radius: 10px;
    font-size: 13px;
    padding: 9px 12px;
    border: 1px solid transparent;
}

/* link do card */
a.lot-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

/* placeholders (se usar) */
.lot-ph {
    visibility: hidden;
}

@media (max-width:540px) {
    .lot-title {
        font-size: 15px;
    }

    .lot-badge {
        padding: 5px 9px;
        font-size: 11px;
    }
}

@media (max-width:360px) {

    /* em telas muito estreitas, pode quebrar linha */
    .lot-platebar {
        flex-wrap: wrap;
    }

    .lot-platebar .lot-stats--push {
        margin-left: 0;
        justify-content: flex-start;
    }
}

@media (max-width:480px) {
    .lot-btn-bid {
        min-width: unset;
        width: 100%;
    }
}

.car:hover,
.car:active,
.car:focus {
    background: #454443 !important;
    box-shadow: 2px 2px 4px #000;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
}

.imb:hover .imb:active,
.imb:focus {
    background: #454443 !important;
    box-shadow: 2px 2px 4px #000;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
}

.mtr:hover,
.mtr:active,
.mtr:focus {
    background: #454443 !important;
    box-shadow: 2px 2px 4px #000;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
}

@media screen and (min-width: 1025px) {
    .fzz {
        font-size: 24px !important;
    }
}

@media screen and (max-width: 704px) {
    .essp {
        height: 89px !important;
    }
}

@media screen and (max-width: 702px) {
    .essp {
        height: 88px !important;
    }
}

@media screen and (max-width: 442px) {
    .essp {
        height: 135px !important;
    }
}

.b-mobile {
    display: none !important;
}

.b-desk {
    display: block !important;
}

@media screen and (max-width: 599px) {
    .b-mobile {
        display: block !important;
    }

    .b-desk {
        display: none !important;
    }
}

/*SEÇÃO SLIDES BANNERS*/



.carousel-inner img {
    width: 100%;
    height: auto;
}

.slick-next::before {
    display: none !important;
}

.slick-prev::before {
    display: none !important;
}

.slick-next {
    background-image: url(/views/imagens/seta-next.svg) !important;
    right: 0 !important;
    z-index: 1;
    width: 30px !important;
    height: 30px !important;
    background-repeat: no-repeat !important;
    opacity: 0.7;
}

.slick-prev {
    background-image: url(/views/imagens/seta-prev.svg) !important;
    left: 0 !important;
    z-index: 1;
    width: 30px !important;
    height: 30px !important;
    background-repeat: no-repeat !important;
    opacity: 0.7;
}

.row {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.slick-slide img {
    width: 100%;
}

.container {
    padding: 14px 0;
}

.col-12 {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

#desktopMainBanner button {
    display: none !important;
}

@media (max-width: 1024px) {
    .col-md-8 {
        display: none;
        /* Esconder elementos de desktop em dispositivos móveis */
    }
}

@media screen and (min-width: 1024px) {
    .container {
        display: flex;
        gap: 15px;
        max-width: 1320px !important;
    }

    .row {
        width: 24.3%;
        flex-direction: column-reverse;
    }

    .row-desktop {
        width: 75%;
    }
}

@media screen and (max-width: 1024px) {

    .banner-section,
    .secao__agenda__botao__completa {
        margin: 0 11px;
    }

    .section__cards__categorias,
    .rodape__section {
        padding: 0 11px;
    }


}

.container__card__categoria {
    display: flex;
    gap: 16px;
    /* grid-template-columns removido para permitir flex em desktop também */
    flex-wrap: wrap;
}

.card__categoria {
    --borda: {{COLOR_BG_LIGHT}};
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    border-radius: 16px;
    padding: 18px 14px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
    backdrop-filter: saturate(1.2);
    min-width: 150px;
}

.card__categoria:hover {
    transform: translateY(-3px);
    border-color: {{COLOR_SECONDARY_LIGHT}};
    box-shadow: 0 16px 28px rgba(40, 66, 143, .12);
    background: linear-gradient(135deg, #edf2ff 0%, #e6ecff 100%);
}

.card__top {
    width: 100%;
    display: flex;
    justify-content: center
}

.icon-wrap {
    position: relative;
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: radial-gradient(120% 120% at 20% 20%, #ffffff 0%, {{COLOR_BG_LIGHT}} 100%);
    border: 1px solid {{COLOR_BG_LIGHT}};
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6), 0 8px 20px rgba(27, 43, 107, .08);
    color: {{COLOR_PRIMARY}};
}

.cat-icon,
.cat-icon-stroke {
    width: 32px;
    height: 32px;
}

.cat-icon {
    fill: currentColor
}

.cat-icon-stroke {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.qty-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    min-width: 28px;
    height: 24px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: {{COLOR_PRIMARY}};
    color: #fff;
    font-weight: 800;
    font-size: 12px;
    box-shadow: 0 8px 18px {{COLOR_SECONDARY_DARK}}, inset 0 1px 0 rgba(255, 255, 255, .35);
    border: 1px solid #dfe6ff;
}

.card__categoria__label {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .3px;
    color: {{COLOR_PRIMARY}};
    text-align: center
}

/* CONTROLES DO CARROSSEL (só mobile) */
.carousel__controls {
    display: none
}

.carousel__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    background: #fff;
    box-shadow: 0 6px 16px {{COLOR_SECONDARY_DARK}};
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    display: grid;
    place-items: center;
    opacity: .95;
}

.car-prev {
    left: 6px
}

.car-next {
    right: 6px
}

/* MOBILE: vira carrossel */
@media (max-width:640px) {
    .container__card__categoria {
        flex-wrap: nowrap;
        /* uma linha só */
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding: 6px 8px 10px;
        /* espaço p/ snap */
        gap: 12px;
    }

    .container__card__categoria::-webkit-scrollbar {
        height: 6px
    }

    .container__card__categoria::-webkit-scrollbar-thumb {
        background: {{COLOR_SECONDARY_LIGHT}};
        border-radius: 999px
    }

    .card__categoria {
        flex: 0 0 22%;
        width: auto;
        scroll-snap-align: center;
        min-width: 120px;
    }

    .icon-wrap {
        width: 58px;
        height: 58px;
        border-radius: 16px
    }

    .cat-icon,
    .cat-icon-stroke {
        width: 28px;
        height: 28px
    }

    .carousel__controls {
        display: block
    }
}

/* ====== Estilos do cabeçalho do leilão ====== */
.auction-wrap {
    max-width: 1320px;
    margin: 20px auto;
    padding: 0 12px
}

.auction-card {
    --azul: {{COLOR_PRIMARY}};
    --borda: {{COLOR_SECONDARY_LIGHT}};
    --muted: {{COLOR_SECONDARY_DARK}};
    --soft: {{COLOR_SECONDARY_LIGHT}};
    --text: {{COLOR_SECONDARY_DARK}};
    background: #fff;
    border: 1px solid var(--borda);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
    margin-top: 60px;
}

.auction-header {
    display: flex;
    flex-direction: column;
    gap: 12px
}

@media (min-width:690px) {
    .auction-header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }
}

.auction-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 800;
    color: {{COLOR_BG_DARK}};
    font-size: clamp(18px, 2vw, 24px)
}

.auction-title i {
    color: var(--azul)
}

/* ====== Contador ====== */
.auction-countdown {
    background: var(--soft);
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 10px;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap
}

.cd-label {
    color: {{COLOR_SECONDARY_DARK}};
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px
}

.cd-grid {
    display: flex;
    align-items: center;
    gap: 8px
}

.cd-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 56px
}

.cd-num {
    font-size: 22px;
    font-weight: 800;
    color: var(--text);
    line-height: 1
}

.cd-unit {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .4px;
    color: var(--muted)
}

.cd-sep {
    font-weight: 700;
    color: #9ca3af
}

.auction-countdown.is-done {
    background: #fff4f4;
    border-color: #ffd2d2
}

.auction-countdown.is-done .cd-label {
    color: #b91c1c
}

/* Responsividade do contador */
.cd-num {
    font-size: clamp(18px, 6vw, 28px);
}

.cd-unit {
    font-size: clamp(9px, 2.2vw, 11px);
}

.cd-box {
    min-width: clamp(44px, 12vw, 56px);
}

@media (max-width: 640px) {
    .auction-countdown {
        gap: 8px;
        padding: 8px 10px;
    }

    .cd-label {
        font-size: 13px;
    }

    .cd-grid {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        justify-content: space-between;
    }

    .cd-sep {
        display: none;
    }

    .cd-box {
        flex: 1 1 calc(25% - 6px);
        min-width: 0;
    }
}

@media (max-width: 360px) {
    .auction-countdown {
        flex-direction: column;
        align-items: stretch;
    }

    .cd-box {
        flex: 1 1 calc(50% - 6px);
    }

    .cd-grid {
        gap: 8px 10px;
    }
}

/* ====== Detalhes ====== */
.auction-details {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 16px;
    color: {{COLOR_SECONDARY_DARK}}
}

@media (min-width:690px) {
    .auction-details {
        grid-template-columns: repeat(2, 1fr)
    }
}

.detail-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px dashed {{COLOR_SECONDARY_LIGHT}}
}

.detail-item:last-child {
    border-bottom: 0
}

.detail-item i {
    color: {{COLOR_BG_DARK}};
    min-width: 18px;
    text-align: center
}

/* ====== CTA ====== */
.auction-cta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 16px
}

.btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid;
    border-radius: 8px;
    text-decoration: none;
    transition: .2s ease
}

.btn-ghost {
    color: {{COLOR_SECONDARY_DARK}};
    border-color: {{COLOR_SECONDARY_LIGHT}};
    background: #fff
}

.btn-ghost:hover {
    border-color: #94a3b8;
    background: {{COLOR_SECONDARY_LIGHT}}
}

.btn-primary {
    background: var(--azul);
    border-color: var(--azul);
    color: #fff
}

.btn-primary:hover {
    filter: brightness(1.05)
}

/* ====== Carrossel (fundo branco e sem quebrar layout) ====== */
.auction-card .auction-carousel {
    background: #fff;
    border-radius: 10px;
    padding: 12px;
    overflow: hidden;
    grid-column: 1 / -1;
    /* ocupa largura total da grid */
    min-width: 0;
    /* deixa encolher dentro da grid */
}

/* Barra do carrossel */
.auction-card .lc2-bar {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Faixa que ocupa espaço entre as setas */
.auction-card .lc2-carousel {
    flex: 1 1 auto;
    min-width: 0;
}

.auction-card .lc2-viewport {
    width: 100%;
}

.auction-card .lc2-rail {
    display: flex;
    gap: 8px;
    padding: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    background: #fff;
    border-radius: 8px;
}

.auction-card .lc2-rail::-webkit-scrollbar {
    display: none;
}

/* Cards */
.auction-card .lc2-card {
    scroll-snap-align: center;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid {{COLOR_SECONDARY_LIGHT}};
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    background: #fff;
    transition: box-shadow .2s, border-color .2s, transform .2s;
    width: 250px;
}

.auction-card .lc2-card:hover {
    box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
    border-color: #cfcfcf;
    transform: translateY(-1px)
}

.auction-card .lc2-card.is-active {
    border-color: {{COLOR_PRIMARY}};
    box-shadow: 0 0 0 2px rgba(40, 66, 143, .12) inset;
    color: {{COLOR_PRIMARY}};
    font-weight: 600
}

.auction-card .lc2-tag {
    font-size: 12px;
    padding: 2px 6px;
    border-radius: 6px;
    background: {{COLOR_BG_LIGHT}};
    color: {{COLOR_PRIMARY}};
    border: 1px solid #dfe5ff
}

.auction-card .lc2-name {
    display: block;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

/* Botões (setas) */
.auction-card .lc2-btn {
    width: 36px;
    height: 36px;
    border: 1px solid #e0e0e0;
    background: #fff;
    border-radius: 8px;
    cursor: pointer;
    line-height: 0;
    flex: 0 0 auto;
}

.auction-card .lc2-btn:hover {
    border-color: #cfcfcf
}

/* Mobile: cards menores */
@media (max-width:640px) {
    .auction-card .lc2-card {
        width: 210px;
    }
}
.lots-section {
  --azul:{{COLOR_PRIMARY}}; --borda:{{COLOR_BG_LIGHT}}; --bg:{{COLOR_BG_LIGHT}}; --texto:{{COLOR_SECONDARY_DARK}}; --suave:{{COLOR_SECONDARY_LIGHT}};
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  padding:20px 12px; color:var(--texto);
}
.lots-wrap { max-width:1200px; margin:0 auto; }
.lots-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.lots-header h2 { margin:0; font-size:clamp(18px,2vw,24px); font-weight:800; color:{{COLOR_SECONDARY_DARK}}; }
.lots-actions { display:flex; gap:8px; }
.nav-btn {
  display:grid; place-items:center; width:36px; height:36px; border-radius:10px;
  border:1px solid var(--borda); background:#fff; color:var(--azul); cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
}
.nav-btn:hover { transform:translateY(-1px); box-shadow:0 6px 16px rgba(40,66,143,.12); }
.nav-btn:disabled { opacity:.4; cursor:not-allowed; }

.lots-scroller{
  position:relative;
  overflow-x:auto;            /* a DIV é quem rola */
  overflow-y:visible;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  scrollbar-width:none;
  direction:ltr;              /* evita herdar RTL e começar no fim */
  scroll-padding-inline:12px; /* “acolchoa” snap nas bordas */
}
.lots-scroller::-webkit-scrollbar{ display:none; }

.lots-scroller .fade { pointer-events:none; position:absolute; top:0; bottom:0; width:48px; }
.lots-scroller .fade-left  { left:0;  background:linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0)); }
.lots-scroller .fade-right { right:0; background:linear-gradient(to left,  rgba(255,255,255,1), rgba(255,255,255,0)); }

/* OL é só a “pista” — mede a largura total do conteúdo */
.lots-track{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:12px;
  padding-inline:12px;        /* combina com scroll-padding */
  padding-block:4px;
  width:max-content;          /* não encolher para caber no wrap */
}
.lots-track > li.clear{ display:none !important; } /* não entra no carrossel */

/* sobrepõe .wr4/.wr3 herdados e garante overflow no desktop */
.lots-track > li{
  flex:0 0 300px !important;
  width:300px !important;
  max-width:300px !important;
  min-width:300px !important;
  scroll-snap-align:start;
}

/* calço final: permite alinhar o último card 100% visível */
.lots-track::after{
  content:"";
  flex:0 0 12px;
}

/* cartão (seu z_leilao.phtml deve criar a estrutura interna) */
.lote-card {
  list-style:none; background:#fff; border:1px solid var(--borda);
  border-radius:14px; overflow:hidden; transition:transform .16s ease, box-shadow .16s ease;
}
.lote-card:hover { transform:translateY(-2px); box-shadow:0 10px 22px rgba(10,22,70,.07); }
.lote-link{ display:block; color:inherit; text-decoration:none; }
.lote-thumb{ position:relative; aspect-ratio:16/10; background:{{COLOR_BG_LIGHT}}; }

.btn-lotes{
    --bg: linear-gradient(135deg,{{COLOR_PRIMARY}},{{COLOR_SECONDARY_DARK}});
    --bg-hover: linear-gradient(135deg,{{COLOR_SECONDARY_DARK}},{{COLOR_PRIMARY}});
    --text:#ffffff;
    --ring:#99c2ff;

    display:inline-flex; align-items:center; gap:.6rem;
    padding:.9rem 1.2rem;
    border-radius:10px;
    color:var(--text);
    background:var(--bg);
    text-decoration:none;
    font:600 0.95rem/1.1 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    box-shadow:0 8px 20px rgba(15, 120, 255, .25), inset 0 1px 0 rgba(255,255,255,.18);
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
    -webkit-tap-highlight-color: transparent;
    white-space: nowrap;
    max-width: 300px;    
  }
  .btn-lotes .icon{ width:1.15rem; height:1.15rem; transition: transform .15s ease; }

  .btn-lotes:hover{
    background:var(--bg-hover);
    transform: translateY(-1px);
    box-shadow:0 10px 26px rgba(15,120,255,.30), inset 0 1px 0 rgba(255,255,255,.22);
  }
  .btn-lotes:hover .icon{ transform: translateX(2px); }

  .btn-lotes:active{
    transform: translateY(0);
    box-shadow:0 6px 16px rgba(15,120,255,.22), inset 0 0 0 rgba(0,0,0,0);
  }
  .btn-lotes:focus-visible{
    outline:none;
    box-shadow:
      0 8px 20px rgba(15,120,255,.28),
      0 0 0 4px color-mix(in oklab, var(--ring) 50%, transparent);
  }

  /* Modo escuro opcional */
  @media (prefers-color-scheme: dark){
    .btn-lotes{
      --ring:#3a8bff;
      box-shadow:0 8px 20px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.10);
    }
  }

  /* Respeita usuários que preferem menos animação */
  @media (prefers-reduced-motion: reduce){
    .btn-lotes, .btn-lotes .icon{ transition:none; }
  }
  /* Botão fixo */
    .footer-contact-btn {
      position: fixed;
      bottom: 10px;
      width: 100%;
      display: flex;
      justify-content: center;
      z-index: 999;
    }

    .footer-contact-btn button {
      padding: 8px 28px;
      font-size: 16px;
      background-color: {{COLOR_PRIMARY}};
      color: white;
      border: none;
      border-radius: 30px;
      cursor: pointer;
      box-shadow: 0 5px 12px rgba(0,0,0,0.15);
      transition: all 0.3s ease;
    }

    .footer-contact-btn button:hover {
      background-color: {{COLOR_SECONDARY_DARK}};
    }

    /* Modal estilizado */
    .modal {
      display: none;
      position: fixed;
      inset: 0;
      background-color: rgba(0, 0, 0, 0.4);
      z-index: 1000;
      justify-content: center;
      align-items: center;
    }

    .modal-content {
      background-color: #fff;
      padding: 30px;
      border-radius: 20px;
      box-shadow: 0 8px 24px rgba(0,0,0,0.2);
      width: 90%;
      max-width: 350px;
      text-align: center;
      position: relative;
      animation: slideUp 0.3s ease;
    }

    @keyframes slideUp {
      from { transform: translateY(40px); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }

    .close-btn {
      position: absolute;
      top: 15px;
      right: 20px;
      font-size: 24px;
      color: #888;
      cursor: pointer;
      transition: color 0.3s ease;
    }

    .close-btn:hover {
      color: #000;
    }

    .modal-content h2 {
      margin-bottom: 20px;
      color: #222;
    }

    .contact-option {
      display: flex;
      align-items: center;
      gap: 12px;
      margin: 15px 0;
      justify-content: flex-start;
    }

    .contact-option i {
      font-size: 22px;
      color: {{COLOR_PRIMARY}};
    }

    .contact-option a {
      font-size: 16px;
      text-decoration: none;
      color: #333;
      transition: color 0.3s;
    }

    .contact-option a:hover {
      color: {{COLOR_PRIMARY}};
    }
    
    .btn-confirm-ajax{
        background: {{COLOR_SECONDARY_DARK}} !important;
        color: {{COLOR_SECONDARY_LIGHT}} !important;
    }
    .btn-confirm-ajax i{
        color: {{COLOR_SECONDARY_LIGHT}} !important;
    }
    .btn-cancel-ajax{
        background: {{COLOR_SECONDARY_LIGHT}} !important;
        color: {{COLOR_SECONDARY_DARK}} !important;
        border: none !important;
    }
    .btn-cancel-ajax i{
        color: {{COLOR_SECONDARY_DARK}} !important;
    }
    .trust-testimonial{
        display: grid;
        grid-template-columns: 2.5fr .8fr;
        gap: 18px;
        align-items: center;
        background: #fff;
        border: 1px solid var(--borda);
        border-radius: 16px;
        padding: 18px;
        margin: 0 0 18px;
        justify-items: start;
    }
    .testimonials-carousel {
      overflow: hidden;
      position: relative;
    }
    
    .testimonials-carousel .tc-track {
      display: flex;
      transition: transform .5s ease;
    }
    
    .testimonials-carousel .trust-testimonial {
      min-width: 100%;
      box-sizing: border-box;
    }
    


.sort-toolbar {
    max-width: 1320px;
    margin: 8px auto 16px;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: transparent;
}

.sort-toolbar__label {
    font-weight: 800;
    color: {{COLOR_SECONDARY_DARK}};
    letter-spacing: .2px;
}

.sort-toolbar__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sort-chip {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    background: var(--sort-chip-bg);
    color: var(--sort-chip-text);
    border: 1px solid var(--sort-border);
    border-radius: 999px;
    font: 600 13px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    cursor: pointer;
    box-shadow: var(--sort-shadow);
    transition: transform .12s ease, background .2s, color .2s, border-color .2s;
}

.sort-chip:hover {
    transform: translateY(-1px);
}

.sort-chip:active {
    transform: translateY(0);
}

.sort-chip.is-active {
    background: var(--sort-chip-active-bg);
    color: var(--sort-chip-active-text);
    border-color: transparent;
}

.sort-chip svg {
    width: 14px;
    height: 14px;
    opacity: .95;
}

.sort-chip .dir svg {
    width: 12px;
    height: 12px;
}

.sort-chip[data-dir="desc"] .icon-up {
    display: none;
}

.sort-chip[data-dir="asc"] .icon-down {
    display: none;
}

@media (max-width:680px) {
    .sort-toolbar {
        padding: 6px 8px;
    }

    .sort-toolbar__label {
        display: none;
    }
}

/* ================================================================
   LEILO — CSS EXTRAÍDO DOS ARQUIVOS INLINE
   Gerado em: 2026-04-02
   INSTRUÇÕES: Copie e cole este conteúdo ao final do css.css global
================================================================ */



/* ============================================================
   ORIGEM: views/lote.phtml
   ============================================================ */

/* ── iOS: reset de aparência nativa em formulários (escopo: página lote) ── */
/* Nota: NÃO aplicar globalmente — quebra radio/checkbox nativos em outras páginas */
.page-lote input:not([type=radio]):not([type=checkbox]),
.page-lote select,
.page-lote button,
.page-lote textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* ════════════════════════════════════════════
   OCULTAR HEADER PADRÃO EM MOBILE
   .aviso-bar  → barra rotativa fixa (top: 0, ~36px)
   header.header → cabeçalho principal (top: 36px, ~60px)
   ════════════════════════════════════════════ */
@media (max-width: 1023px) {
  html.page-lote .aviso-bar,
  html.page-lote header.header {
    display: none !important;
  }
  html.page-lote body {
    padding-top: 0 !important;
  }
}

/* ════════════════════════════════════════════
   HEADER MOBILE LV2
   display:none por padrão; ativado no @media abaixo
   ════════════════════════════════════════════ */
.lv2-mob-header { display: none; }

@media (max-width: 1023px) {

  .lv2-mob-header {
    display: flex;
    align-items: center;
    position: fixed;
    top: 0;
    padding-top: env(safe-area-inset-top); left: 0; right: 0;
    z-index: 999;
    background: #ffffff;
    border-bottom: 1px solid #e0e0e0;
    padding: 0 12px;
    height: 56px;
    gap: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,.10);
  }
  .lv2-mob-header__logo {
    flex-shrink: 0; width: 34px; height: 34px;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden; border-radius: 6px;
  }
  .lv2-mob-header__logo img { width: 100%; height: 100%; object-fit: contain; }
  .lv2-mob-header__info {
    flex: 1; min-width: 0;
    display: flex; flex-direction: column; justify-content: center; gap: 1px;
  }
  .lv2-mob-header__meta {
    font-size: 10px; color: #888888; font-weight: 500;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    text-transform: lowercase; letter-spacing: 0.3px;
  }
  .lv2-mob-header__title {
    font-size: 13px; font-weight: 700; color: #1a1a2e;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .lv2-mob-header__btn {
    flex-shrink: 0; background: var(--green); color: var(--white);
    text-decoration: none; display: inline-flex; align-items: center;
    gap: 5px; white-space: nowrap; line-height: 1;
    padding: 10px 12px; border: none; border-radius: 5px;
    cursor: pointer; font-weight: 600; font-size: 14px;
    touch-action: manipulation;
  }
  .lv2-mob-header__btn:hover { opacity: 0.8; }
  .lv2-mob-header__hamburger {
    flex-shrink: 0; background: none; border: none; cursor: pointer;
    padding: 6px 4px; color: var(--lv-primaria-dark); font-size: 22px;
    display: flex; align-items: center; justify-content: center;
  }

  /* Compensar header fixo no scroll da página */
  html.page-lote .lote-mobile { padding-top: 56px; }

} /* fim @media (max-width: 1023px) */

/* ════════════════════════════════════════════
   RESET BASE — lv2
   ════════════════════════════════════════════ */
.lote-mobile * { box-sizing: border-box; }
.lote-mobile {
  background: #f4f5f7;
  padding-top: 96px; /* desktop: .aviso-bar(36px) + header.header(~60px) */
}

/* ════════════════════════════════════════════
   TOPBAR DE NAVEGAÇÃO (desktop)
   ════════════════════════════════════════════ */
.lv2-topbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 7px 20px; background: #fff; border-bottom: 1px solid #e5e7eb;
  position: sticky; top: 96px; z-index: 200;
}
.lv2-topbar-left  { display: flex; gap: 6px; align-items: center; }
.lv2-topbar-right { display: flex; gap: 6px; align-items: center; }
.lv2-btn-nav {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 12px;
  background: #fff; color: #374151; font-size: 12px; font-weight: 700;
  text-decoration: none; cursor: pointer;
  transition: background .15s, border-color .15s; white-space: nowrap;
}
.lv2-btn-nav:hover           { background: #f3f4f6; border-color: #d1d5db; }
.lv2-btn-nav.disabled        { opacity: .35; pointer-events: none; }
.lv2-btn-nav.btn-close       {  color: var(--lv-cta); }
.lv2-btn-nav.btn-close:hover { background: #ffe4e6; }
.lv2-topbar-counter          { font-size: 11px; color: #9ca3af; font-weight: 600; padding: 0 6px; }

/* ════════════════════════════════════════════
   STRIP DE LOTES — desktop (sticky) + mobile (fluxo)
   Wrapper com setas; o strip em si é o scroll container
   ════════════════════════════════════════════ */
.lv2-strip-wrap {
  display: flex;
  align-items: stretch;
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
}

/* Botões de seta (desktop only) */
.lv2-strip-arrow {
  flex-shrink: 0;
  width: 38px;
  background: #fff;
  border: none;
  border-right: 1px solid #f0f0f0;
  cursor: pointer;
  touch-action: manipulation;
  color: #6b7280;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .15s, color .15s;
}
.lv2-strip-arrow--next { border-right: none; border-left: 1px solid #f0f0f0; }
.lv2-strip-arrow:hover { background: #f3f4f6; color: #111827; }

/* O carrossel de lotes em si */
.lv2-mob-strip {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding: 8px 6px;
  gap: 8px;
  scrollbar-width: none;
}
.lv2-mob-strip::-webkit-scrollbar { display: none; }

.lv2-mob-strip__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  scroll-snap-align: start;
  text-decoration: none;
  gap: 4px;
  padding-bottom: 4px;
  border-bottom: 2px solid transparent;
}
.lv2-mob-strip__item.ativo { border-bottom: 2px solid var(--lv-cta); }

/* Thumb — tamanho base (desktop) */
.lv2-mob-strip__thumb {
  position: relative; /* necessário para o badge absoluto */
  width: 80px;
  height: 60px;
  border-radius: 6px;
  overflow: hidden;
  background: #e5e7eb;
  flex-shrink: 0;
}
.lv2-mob-strip__thumb img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

/* Badge de status sobreposto ao thumb */
.lv2-mob-strip__badge {
  position: absolute;
  top: 3px; left: 2px;
  background: #f59e0b;
  color: #fff;
  font-size: 6.5px;
  font-weight: 700;
  padding: 2px 4px;
  border-radius: 2px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  z-index: 2;
  white-space: nowrap;
  pointer-events: none;
  line-height: 1.3;
}

.lv2-mob-strip__label {
  font-size: 9px;
  font-weight: 700;
  color: #6b7280;
  white-space: nowrap;
  letter-spacing: 0.3px;
}
.lv2-mob-strip__item.ativo .lv2-mob-strip__label { color: var(--lv-cta); }

/* Mobile: strip static, setas ocultas, thumbs menores */
@media (max-width: 1023px) {
  .lv2-strip-wrap  { position: static; }
  .lv2-strip-arrow { display: none; }
  .lv2-mob-strip   { padding: 8px 10px; }
  .lv2-mob-strip__thumb { width: 62px; height: 46px; }
}

/* ════════════════════════════════════════════
   BREADCRUMB (desktop only)
   ════════════════════════════════════════════ */
.lv2-breadcrumb {
  display: flex; align-items: center; flex-wrap: wrap; gap: 4px;
  padding: 8px 20px; background: #fff; border-bottom: 1px solid #f0f0f0; font-size: 11px;
}
.lv2-breadcrumb a       { color: #6b7280; text-decoration: none; font-weight: 500; transition: color .15s; }
.lv2-breadcrumb a:hover { color: var(--lv-primaria); text-decoration: underline; }
.lv2-breadcrumb .sep    { color: #d1d5db; font-size: 10px; }
.lv2-breadcrumb .current { color: #111827; font-weight: 700; max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ════════════════════════════════════════════
   LAYOUT PRINCIPAL: 2 COLUNAS
   ════════════════════════════════════════════ */
.lv2-main-wrap {
  max-width: 1320px; margin: 0 auto; padding: 16px 16px 60px;
  display: grid; grid-template-columns: 1fr 340px;
  gap: 18px; align-items: start;
}
.lv2-col-main { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.lv2-col-side {
  display: flex; flex-direction: column; gap: 14px;
  position: sticky;
  top: 143px; /* abaixo da .lv2-topbar sticky (que vai ate ~135px) + folga */
  align-self: flex-start; /* evita esticar na altura da coluna e travar o sticky */
}

/* ════════════════════════════════════════════
   GALERIA
   ════════════════════════════════════════════ */
.lv2-gallery-wrap { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,.06); }
.lv2-gallery-wrap .Plugin_CSS_galeriaa { margin: 0; }

/* ════════════════════════════════════════════
   GRID DE ESPECIFICAÇÕES (3 colunas)
   ════════════════════════════════════════════ */
.lv2-specs-card { background: #fff; overflow: hidden; }
.lv2-specs-hd   {
  display: flex; align-items: center; gap: 8px; padding: 11px 16px;
  border-bottom: 1px solid #f0f0f0; font-size: 11px; font-weight: 700;
  color: #9ca3af; text-transform: uppercase; letter-spacing: .06em;
}
.lv2-specs-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.lv2-spec-cell  {
  display: flex; flex-direction: column; gap: 3px;
  padding: 13px 16px; border-right: 1px solid #f3f4f6; border-bottom: 1px solid #f3f4f6;
}
.lv2-spec-cell:nth-child(3n) { border-right: none; }
.lv2-spec-cell__icon {
  width: 28px; height: 28px; border-radius: 7px; background: #f3f4f6;
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; color: #374151; margin-bottom: 3px; flex-shrink: 0;
}
.lv2-spec-cell__lbl  { font-size: 10px; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .04em; }
/* Valor dos cards PADRONIZADO: tamanho unico + MAIUSCULO via CSS (independe de como
   esta escrito no codigo/banco). !important sobrescreve os font-size inline antigos. */
.lv2-spec-cell__val  { font-size: 12.5px !important; font-weight: 700; color: #111827; line-height: 1.35; word-break: break-word; text-transform: uppercase; }
.lv2-spec-cell__val.green { color: var(--lv-sucesso); }

/* ════════════════════════════════════════════
   SEÇÕES DE INFORMAÇÃO (accordion)
   ════════════════════════════════════════════ */
.lv2-info-card               { background: #fff; overflow: hidden; }
.lv2-info-section            { border-bottom: 1px solid #f0f0f0; }
.lv2-info-section:last-child { border-bottom: none; }
.lv2-section-toggle          { display: flex; align-items: center; justify-content: space-between; padding: 13px 16px; cursor: pointer; user-select: none; transition: background .15s; gap: 10px; }
.lv2-section-toggle:hover    { background: transparent; }
.lv2-section-toggle-left     { display: flex; align-items: center; gap: 10px; }
.lv2-section-icon            { width: 28px; height: 28px; border-radius: 7px; background: #f3f4f6; display: flex; align-items: center; justify-content: center; font-size: 12px; color: #374151; flex-shrink: 0; }
.lv2-section-title           { font-size: 13px; font-weight: 700; color: #374151; text-transform: uppercase; letter-spacing: .04em; }
.lv2-section-chevron         { font-size: 12px; color: #9ca3af; transition: transform .25s; flex-shrink: 0; }
.lv2-info-section.open .lv2-section-chevron { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.lv2-section-body            { display: none; border-top: 1px solid #f0f0f0; }
.lv2-info-section.open .lv2-section-body   { display: block; }

/* Linhas label/valor dentro das seções */
.lv2-row                { display: grid; grid-template-columns: 150px 1fr; border-bottom: 1px solid #f9fafb; }
.lv2-row:last-child     { border-bottom: none; }
.lv2-th                 { padding: 9px 16px; font-size: 12px; font-weight: 700; color: #6b7280; white-space: nowrap; }
.lv2-td                 { padding: 9px 16px; font-size: 13px; color: #111827; font-weight: 500; word-break: break-word; }
.lv2-td a               { color: var(--lv-primaria); text-decoration: none; }
.lv2-td a:hover         { text-decoration: underline; }
.lv2-td a.file-link     { display: inline-flex; align-items: center; gap: 6px; color: var(--lv-cta); font-weight: 600; }
.lv2-text-block         { padding: 14px 16px; }
.lv2-text-block p       { font-size: 13px; line-height: 1.65; color: #374151; margin: 0 0 10px; }
.lv2-text-block p:last-child { margin-bottom: 0; }
.lv2-disclaimer         { font-size: 11px; color: #9ca3af; font-style: italic; border-top: 1px solid #f0f0f0; padding-top: 10px; margin-top: 6px; }
.lv2-vendedor-logo      { padding: 14px 16px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.lv2-vendedor-logo img  { max-height: 48px; max-width: 120px; object-fit: contain; }

/* ════════════════════════════════════════════
   SIDEBAR: PAINEL DE LANCE
   ════════════════════════════════════════════ */
.lv2-bid-panel        { background: #fff; overflow: hidden; }
.lv2-bid-panel__hd    { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; flex-wrap: wrap; gap: 6px; }
.lv2-bid-panel__label { font-size: 11px; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .05em; }
.lv2-bid-timer               { display: flex; align-items: center; gap: 3px; font-size: 11px; color: #374151; }
.lv2-bid-timer .LL_dias span,
.lv2-bid-timer .LL_hora span,
.lv2-bid-timer .LL_min span,
.lv2-bid-timer .LL_seg span  { font-weight: 700; color: #111; }
.lv2-bid-timer .timer-lbl    { font-weight: 600; color: #9ca3af; margin-right: 3px; }
.lv2-bid-value-block               { padding: 14px 14px 8px; }
.lv2-bid-value-block .lance-label  { font-size: 10px; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 2px; display: block; }
.lv2-bid-value-main                { font-size: 28px; font-weight: 600; color: #111827; line-height: 1; display: block; }
.lv2-bid-closed-note               { font-size: 11px; color: #9ca3af; margin-top: 4px; display: block; }
.lv2-bid-stats          { display: flex; border-top: 1px solid #f0f0f0; margin-top: 10px; }
.lv2-bid-stat           { flex: 1; padding: 8px 10px; border-right: 1px solid #f0f0f0; display: flex; flex-direction: column; gap: 2px; }
.lv2-bid-stat:last-child { border-right: none; }
.lv2-bid-stat span      { font-size: 10px; font-weight: 700; color: #9ca3af; text-transform: uppercase; }
.lv2-bid-stat b         { font-size: 13px; font-weight: 700; color: #111; }
.lv2-bid-actions        { padding: 10px 14px 14px; display: flex; flex-direction: column; gap: 7px; }
.lv2-action-btn         { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 14px; border-radius: 9px; font-size: 14px; font-weight: 700; cursor: pointer; border: none; text-decoration: none; transition: opacity .2s, background .2s; width: 100%; text-align: center; }
.lv2-action-btn.lance          { background: var(--lv-sucesso); color: #fff; font-size: 15px; }
.lv2-action-btn.lance:hover    { opacity: .9; }
.lv2-action-btn.habilitar      { background: #f59e0b; color: #fff; }
.lv2-action-btn.login          { background: var(--lv-primaria); color: #fff; }
.lv2-action-btn.login:hover    { opacity: .9; }
.lv2-action-btn.cadastro       { background: #fff; color: var(--lv-primaria); border: 1px solid var(--lv-primaria); }
.lv2-action-btn.cadastro:hover { background: #f3f4f6; }
.lv2-action-btn.outline        { background: #f9fafb; color: #374151; border: 1px solid #e5e7eb; }
.lv2-action-btn.outline:hover  { background: #f3f4f6; }

/* FIPE no painel */
.lv2-fipe-row            { display: flex; border-top: 1px solid #f0f0f0; }
.lv2-fipe-col            { flex: 1; padding: 10px 14px; border-right: 1px solid #f0f0f0; }
.lv2-fipe-col:last-child { border-right: none; }
.lv2-fipe-col span       { font-size: 10px; font-weight: 700; color: #9ca3af; text-transform: uppercase; display: block; margin-bottom: 2px; }
.lv2-fipe-col b          { font-size: 15px; font-weight: 600; color: #111; display: block; }
.lv2-fipe-col b.green    { color: var(--lv-sucesso); }
.lv2-fipe-note           { padding: 8px 14px 12px; font-size: 11px; color: #6b7280; display: flex; align-items: flex-start; gap: 5px; line-height: 1.5; }
.lv2-fipe-note i         { color: #f59e0b; flex-shrink: 0; margin-top: 1px; }
.lv2-fipe-note b         { color: var(--lv-sucesso); }

/* ════════════════════════════════════════════
   HISTÓRICO DE LANCES
   ════════════════════════════════════════════ */
.lv2-hist-box            { background: #fff; overflow: hidden; }
.lv2-hist-box__hd        { padding: 10px 14px; font-size: 12px; font-weight: 700; color: #6b7280; text-transform: uppercase; letter-spacing: .04em; }
/* ============================================================
   LOADER + ALERTS — estilo moderno (2026-07-30), adaptado ao layout
   ============================================================ */
/* Loader "Carregando..." — PORTADO DO MRC (scoped .events_externos, display:none por padrao) */
.events_externos .carregando {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 9000000100;
    transform: translate(-50%, -50%);
    margin: 0;
    min-width: 168px;
    padding: 14px 18px;
    border: 1px solid rgba(30,58,95,.10);
    background: rgba(255,255,255,.96);
    border-radius: 14px;
    box-shadow: 0 14px 32px rgba(17,24,39,.14);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    white-space: nowrap;
}
.events_externos .carregando img { display: none; }
.events_externos .carregando > span { display: inline-flex; align-items: center; vertical-align: middle; }
.events_externos .carregando .loader-ring {
    width: 20px; height: 20px; margin-right: 12px; border-radius: 999px;
    /* anel: azul da marca + VERMELHO (cor do site teste). Trocar o vermelho por site ao portar. */
    border: 2px solid rgba(30,58,95,.18); border-top-color: var(--lv-primaria); border-right-color: var(--lv-cta);
    animation: gs_loader_spin .72s linear infinite; box-sizing: border-box; flex: 0 0 auto;
}
.events_externos .carregando .loader-text { color: #1f2937; font-size: 14px; font-weight: 700; letter-spacing: .01em; }
.events_externos .carregando .porcentagem { margin-right: 3px; color: var(--lv-primaria); }
@keyframes gs_loader_spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }


/* ============================================================
   LANCE INLINE 1-CLIQUE — 3 estados (idle / sending / winning)
   ============================================================ */
.lv2-bid1{ display:block; }
.lv2-bid1 .lv2-bid1__val{ margin-left:4px; }
/* SENDING: enviando... */
.lv2-bid1__sending{ background:#64748b !important; color:#fff !important; cursor:default; }
.lv2-bid1__sending i{ margin-right:6px; }
/* WINNING: esta vencendo (travado, verde) */
.lv2-bid1__winning{
  background:var(--lv-sucesso) !important; color:#fff !important; cursor:default !important; opacity:1 !important;
  border:0 !important; display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-weight:800; text-transform:uppercase; letter-spacing:.03em;
  animation:lv2WinPulse 2s ease-in-out infinite;
}
@keyframes lv2WinPulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(22,163,74,.35); } 50%{ box-shadow:0 0 0 6px rgba(22,163,74,0); } }
.lv2-bid1__winning{ cursor:default; }
/* status do lance (estado vencendo) — somente o texto, sem caixa/borda/fundo */
.lv2-bid1__winmsg{
  display:block; margin-top:8px; padding:2px 2px;
  font-size:12px; line-height:1.5; color:#475569;
}
.lv2-bid1__winmsg i{ display:none; }
/* aviso "lance superado" — MESMO formato/lugar da msg de vencendo, so texto, em vermelho */
.lv2-bid1__alert{
  display:block; margin-top:8px; padding:2px 2px;
  font-size:12px; line-height:1.5; color:var(--lv-cta);
}
.lv2-bid1__alert i{ display:none; }
.lv2-bid1__alert b{ color:var(--lv-cta); font-weight:700; }
/* barra fixa MOBILE refletindo o estado do lance */
.lv2-bid1-mobbtn.is-winning{ background:var(--lv-sucesso) !important; color:#fff !important; cursor:default; }
.lv2-bid1-mobbtn.is-winning i{ margin-right:5px; }
.lv2-bid1-mobbtn.is-sending{ background:#64748b !important; color:#fff !important; cursor:default; }

/* histórico com altura limitada + scroll vertical (cabeçalho fixo) */
.lv2-hist-scroll         { max-height: 260px; overflow-y: auto; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.lv2-hist-table          { width: 100%; border-collapse: collapse; font-size: 12px; }
.lv2-hist-table thead th { background: #f8fafc; padding: 7px 10px; font-weight: 700; color: #6b7280; border-bottom: 2px solid #e5e7eb; text-align: left; position: sticky; top: 0; z-index: 1; }
.lv2-hist-table tbody tr:nth-child(even) { background: #fafafa; }
.lv2-hist-table tbody td { padding: 7px 10px; border-bottom: 1px solid #f0f0f0; color: #333; }

/* ════════════════════════════════════════════
   AO VIVO
   ════════════════════════════════════════════ */
.lv2-aovivo     { background: #fff; overflow: hidden; padding: 14px; }
.lv2-aovivo__hd { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; font-size: 12px; font-weight: 700; }
.lv2-badge-aovivo {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--lv-cta); color: #fff; font-size: 9px; font-weight: 700;
  padding: 2px 7px; border-radius: 4px; text-transform: uppercase;
  letter-spacing: .05em; animation: lv2blink 1.2s infinite;
}
.lv2-badge-aovivo i { font-size: 6px; }

/* ════════════════════════════════════════════
   CARROSSEL: OUTROS LOTES
   ════════════════════════════════════════════ */
.lv2-outros-lotes      { max-width: 1320px; margin: 0 auto 40px; padding: 0 16px; }
.lv2-carousel-wrap     { background: #fff; overflow: hidden; }
.lv2-carousel-hd       { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; }
.lv2-carousel-title    { font-size: 13px; font-weight: 700; color: #374151; text-transform: uppercase; letter-spacing: .04em; display: flex; align-items: center; gap: 8px; }
.lv2-carousel-nav      { display: flex; align-items: center; gap: 10px; color: #9ca3af; font-size: 14px; }
.lv2-carousel-nav i    { cursor: pointer; transition: color .15s; }
.lv2-carousel-nav i:hover { color: #374151; }
.lv2-carousel-viewport { overflow: hidden; padding: 10px 0; }
.lv2-carousel-track    { display: flex; gap: 14px; padding: 0 16px 8px; overflow-x: auto; scrollbar-width: none; scroll-behavior: smooth; }
.lv2-carousel-track::-webkit-scrollbar { display: none; }
.lv2-carousel-footer   { padding: 10px 16px; }

.lv2-carousel-item                          { flex-shrink: 0; width: 180px; text-decoration: none; color: inherit; position: relative; }
.lv2-carousel-item .ev-lote-card            { display: flex; flex-direction: column; border-radius: 10px; overflow: hidden; box-shadow: 0 1px 6px rgba(0,0,0,.09); transition: box-shadow .25s, transform .25s; background: #fff; }
.lv2-carousel-item:hover .ev-lote-card      { box-shadow: 0 6px 20px rgba(0,0,0,.14); -webkit-transform: translateY(-2px); transform: translateY(-2px); }
.lv2-carousel-item .ev-lote-img-wrap        { position: relative; overflow: hidden; border-radius: 10px 10px 0 0; aspect-ratio: 4/3; background: #e8e8e8; }
.lv2-carousel-item .ev-lote-img-wrap img    { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .38s ease; }
.lv2-carousel-item:hover .ev-lote-img-wrap img { -webkit-transform: scale(1.08); transform: scale(1.08); }
.lv2-carousel-item .ev-lote-body            { padding: 8px 8px 10px; display: flex; flex-direction: column; gap: 4px; }
.lv2-carousel-item .ev-lote-titulo          { font-size: 0.72rem; font-weight: 700; color: #1a1a1a; line-height: 1.3; text-transform: uppercase; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lv2-carousel-item .ev-lote-preco           { font-size: 0.95rem; font-weight: 700; color: #1a1a1a; margin-top: 2px; }
.lv2-carousel-item .ev-lote-preco-label     { font-size: 0.62rem; color: #aaa; margin-top: -2px; }
.lv2-carousel-item .ev-dar-lance-bottom     { position: static; opacity: 1; pointer-events: auto; border-radius: 0 0 10px 10px; background: var(--lv-primaria); color: #fff; font-weight: 700; font-size: 0.78rem; display: flex; justify-content: center; align-items: center; height: 34px; text-decoration: none; }
.lv2-ver-todos-btn                          { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 16px; background: var(--lv-primaria); color: #fff; border: none; border-radius: 8px; font-size: 13px; font-weight: 700; text-decoration: none; transition: background .15s; width: 100%; }
.lv2-ver-todos-btn:hover                    { background: #162d4a; }

/* ════════════════════════════════════════════
   MOBILE: STICKY BOTTOM BAR (navegação entre lotes)
   ════════════════════════════════════════════ */
.lv2-mobile-bar {
  display: none; position: fixed; bottom: 0;
    padding-bottom: env(safe-area-inset-bottom); left: 0; right: 0;
  z-index: 300; background: #fff; align-items: center;
  justify-content: space-between; gap: 10px; padding: 10px 14px;
  border-top: 1px solid #e5e7eb;
}
.lv2-mobile-bar__nav-left,
.lv2-mobile-bar__nav-right {
  display: flex; align-items: center; justify-content: center; gap: 5px;
  padding: 10px 16px; font-size: 13px; font-weight: 600; color: #374151;
  text-decoration: none; border: 1px solid #d1d5db; border-radius: 10px;
  background: #fff; cursor: pointer; white-space: nowrap; transition: background .15s;
}
.lv2-mobile-bar__nav-left:hover,
.lv2-mobile-bar__nav-right:hover   { background: #f3f4f6; }
.lv2-mobile-bar__nav-left.disabled,
.lv2-mobile-bar__nav-right.disabled { opacity: .35; pointer-events: none; }
.lv2-mobile-bar__center    { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; cursor: pointer; padding: 4px 8px; }
.lv2-mobile-bar__lot-num   { font-size: 15px; font-weight: 700; color: var(--lv-cta); line-height: 1.3; }
.lv2-mobile-bar__lot-caret { color: var(--lv-cta); font-size: 11px; }
.lv2-mobile-bar__label     { font-size: 9px; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 2px; }

@keyframes lv2blink { 0%,100%{opacity:1} 50%{opacity:.3} }

/* ════════════════════════════════════════════
   MOBILE: BARRA DE LANCE FIXA (acima da bottom bar)
   ════════════════════════════════════════════ */
.lv2-mob-bid-bar          { display: none; position: fixed; bottom: 61px;
    padding-bottom: env(safe-area-inset-bottom); left: 0; right: 0; z-index: 299; background: #fff; box-shadow: 0 -1px 6px rgba(0,0,0,.08);  flex-direction: column; }
.lv2-mob-bid-bar__status  { display: flex; align-items: center; justify-content: space-between; padding: 7px 14px; background: #1a7a5e; }
.lv2-mob-bid-bar__status-val  { font-size: 12px; font-weight: 700; color: #fff; }
.lv2-mob-bid-bar__body    { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; }
.lv2-mob-bid-bar__info    { display: flex; flex-direction: column; gap: 2px; }
.lv2-mob-bid-bar__lbl     { font-size: 10px; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .04em; }
.lv2-mob-bid-bar__val     { font-size: 20px; font-weight: 600; color: #111827; line-height: 1.2; }
.lv2-mob-bid-bar__user    { font-size: 11px; color: #6b7280; display: flex; align-items: center; gap: 4px; }
.lv2-mob-bid-bar__btn     { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 18px; border: 2px solid var(--lv-cta); border-radius: 10px; background: #fff; color: var(--lv-cta); font-size: 13px; font-weight: 700; cursor: pointer; text-decoration: none; white-space: nowrap; transition: background .15s, color .15s; }
.lv2-mob-bid-bar__btn:hover     { background: var(--lv-cta); color: #fff; }
.lv2-mob-bid-bar__btn.encerrado { border-color: #9ca3af; color: #9ca3af; pointer-events: none; }

/* ════════════════════════════════════════════
   MOBILE BID BAR — colapso animado
   ════════════════════════════════════════════ */
.lv2-mob-bid-bar__body {
  overflow: hidden;
  max-height: 120px;
  opacity: 1;
  transition: max-height 0.38s ease, opacity 0.28s ease, padding 0.28s ease;
}
.lv2-mob-bid-bar.lv2-bid-collapsed .lv2-mob-bid-bar__body {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}
/* colapsada: esconde SO a faixa do lance+botao (__body). O status "Aberto para Lances" CONTINUA visivel. */


/* ════════════════════════════════════════════
   RESPONSIVO — TABLET/MOBILE (960px)
   ════════════════════════════════════════════ */
@media (max-width: 960px) {
  /* no mobile empilha tudo numa coluna e REORDENA: galeria -> lance -> historico -> specs -> info */
  .lv2-main-wrap   { display: flex; flex-direction: column; padding: 12px 12px 160px; gap: 14px; }
  .lv2-col-main,
  .lv2-col-side    { display: contents; }
  .lv2-col-side    { position: static; }
  .lv2-gallery-wrap { order: 1; }
  .lv2-bid-panel    { order: 2; }
  .lv2-hist-box     { order: 3; }
  .lv2-specs-card   { order: 4; }
  .lv2-info-card    { order: 5; }
  .lv2-aovivo       { order: 6; }
  /* com display:contents nas colunas, os blocos entram no flex do wrap;
     força largura total (senao encolhem ao conteúdo, ex: histórico) */
  .lv2-gallery-wrap, .lv2-bid-panel, .lv2-hist-box,
  .lv2-specs-card, .lv2-info-card, .lv2-aovivo { width: 100%; align-self: stretch; }
  .lv2-specs-grid  { grid-template-columns: repeat(3, 1fr); }
  .lv2-breadcrumb  { display: none; }
  .lv2-mobile-bar  { display: flex; }
  .lv2-mob-bid-bar { display: flex; }
  .lv2-topbar      { display: none; }
}
@media (max-width: 540px) {
  .lv2-specs-grid { grid-template-columns: repeat(2, 1fr); }
  .lv2-specs-grid .lv2-spec-cell:nth-child(3n) { border-right: 1px solid #f3f4f6; }
  .lv2-specs-grid .lv2-spec-cell:nth-child(2n) { border-right: none; }
  .lv2-row        { grid-template-columns: 120px 1fr; }
}


/* ============================================================
   ORIGEM: views/lotes.phtml
   ============================================================ */

/* ═══════════════════════════════════════════════════════
   SIDEBAR FILTROS — /lotes/ desktop
   Classes sb-* — sem conflito com busca-* do inicio
═══════════════════════════════════════════════════════ */

.sb-container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: var(--white);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

/* Seções fixas (pesquisa e valor): não encolhem */
.sb-secao {
    padding: 14px;
    border-bottom: 1px solid #f0f0f0;
    flex-shrink: 0;
}

/* Seções com scroll: dividem o espaço restante */
.sb-secao-categorias,
.sb-secao-mais-visitados,
.sb-secao-mais-lances {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 14px;
    border-bottom: 1px solid #f0f0f0;
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

.sb-secao-categorias::-webkit-scrollbar,
.sb-secao-mais-visitados::-webkit-scrollbar,
.sb-secao-mais-lances::-webkit-scrollbar { width: 4px; }

.sb-secao-categorias::-webkit-scrollbar-thumb,
.sb-secao-mais-visitados::-webkit-scrollbar-thumb,
.sb-secao-mais-lances::-webkit-scrollbar-thumb { background: #ccc; border-radius: 4px; }

.sb-secao:last-child { border-bottom: none; }

/* Título da seção */
.sb-titulo {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--gray-dark);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 0 0 10px 0;
}
/* ── iOS: reset de aparência nativa em formulários (escopo: página lote) ── */
/* Nota: NÃO aplicar globalmente — quebra radio/checkbox nativos em outras páginas */
.page-lote input:not([type=radio]):not([type=checkbox]),
.page-lote select,
.page-lote button,
.page-lote textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* ── Input busca ── */
.sb-input-group {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--gray);
    border-radius: 8px;
    padding: 8px 10px;
    margin-bottom: 8px;
}
.sb-input-icon {
    color: var(--gray-dark);
    font-size: 13px;
    flex-shrink: 0;
}
.sb-input {
    width: 100%;
    border: none;
    background: none;
    outline: none;
    font-size: 13px;
    color: var(--dark);
}

/* Botão ver lotes */
.sb-ver-lotes {
    width: 100%;
    background: var(--green);
    color: var(--white);
    border: none;
    border-radius: 8px;
    padding: 10px 0;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    touch-action: manipulation;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.sb-badge-lotes {
    background: rgba(255,255,255,0.25);
    color: var(--white);
    font-size: 11px;
    font-weight: 600;
    padding: 1px 7px;
    border-radius: 5px;
}

/* ── Categorias ── */
.sb-cat-grid {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.sb-cat-link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 6px;
    border-radius: 6px;
    text-decoration: none;
    color: var(--dark);
    font-size: 13px;
    font-weight: 500;
    transition: background 0.2s;
}
.sb-cat-link:hover { background: var(--gray); }
.sb-cat-icone {
    width: 26px;
    height: 26px;
    object-fit: contain;
    flex-shrink: 0;
}
.sb-cat-nome { flex: 1; }
.sb-cat-badge {
    background: var(--gray);
    color: var(--gray-dark);
    font-size: 11px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 5px;
}

/* ── Cards: Mais Visitados / Mais Lances ── */
.sb-cards {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.sb-card {
    border-radius: 8px;
    overflow: hidden;
    background: var(--gray);
}
.sb-card-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: var(--dark);
    padding: 6px;
}
.sb-card-link:hover { background: #ebebeb; border-radius: 8px; }

/* Imagem: tamanho fixo forçado */
.sb-card-link img,
.sb-card-link img.sb-card-img,
.sb-card-link > img {
    width: 64px !important;
    height: 48px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    flex-shrink: 0 !important;
    display: block !important;
}
/* Wrapper que $img->img() pode gerar */
.sb-card-link > div:first-child,
.sb-card-link > span:first-child {
    width: 64px !important;
    height: 48px !important;
    min-width: 64px !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
}
.sb-card-link > div:first-child img,
.sb-card-link > span:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}
.sb-card-info { flex: 1; min-width: 0; }
.sb-card-nome {
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sb-card-rodape {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}
.sb-card-cat {
    font-size: 0.62rem;
    color: var(--gray-dark);
}
.sb-card-preco {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--primary-color);
    white-space: nowrap;
}

/* ── Botões de valor ── */
.sb-valor-grid {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.sb-valor-btn {
    display: block;
    width: 100%;
    background: var(--primary-color);
    color: var(--white);
    text-decoration: none;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    transition: opacity 0.2s;
    box-sizing: border-box;
}
.sb-valor-btn:hover { opacity: 0.85; }

/* ── Scrollbar do painel ── */
#filtros-panel {
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}
#filtros-panel::-webkit-scrollbar { width: 4px; }
#filtros-panel::-webkit-scrollbar-track { background: transparent; }
#filtros-panel::-webkit-scrollbar-thumb { background: #ccc; border-radius: 4px; }

/* ── Sort Toolbar ── */
.sort-toolbar { display:flex; align-items:center; margin-bottom:16px; }
.sort-toolbar__chips { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.sort-chip {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 6px 12px; border: 1px solid #ddd; border-radius: 20px;
    background: #fff; color: #555; font-size: 13px; font-weight: 500;
    cursor: pointer; transition: all .2s; white-space: nowrap;
    touch-action: manipulation;
}
.sort-chip svg { width: 14px; height: 14px; flex-shrink: 0; }
.sort-chip:hover { border-color: var(--primary-color); color: var(--primary-color); }
.sort-chip.is-active {
    background: var(--primary-color); border-color: var(--primary-color); color: #fff;
}
.sort-chip .dir svg { width: 12px; height: 12px; opacity: .35; transition: opacity .2s; }
.sort-chip[data-dir="asc"]  .icon-up   { opacity: 1 !important; }
.sort-chip[data-dir="desc"] .icon-down { opacity: 1 !important; }


/* ============================================================
   ORIGEM: views/minha_conta.phtml
   ============================================================ */

/* ── iOS: reset de aparência nativa em formulários (escopo: página lote) ── */
/* Nota: NÃO aplicar globalmente — quebra radio/checkbox nativos em outras páginas */
.page-lote input:not([type=radio]):not([type=checkbox]),
.page-lote select,
.page-lote button,
.page-lote textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* DEPOIS — afeta só a página minha conta */
.mc-wrap *, .mc-wrap *::before, .mc-wrap *::after { box-sizing: border-box; margin: 0; padding: 0; }
.mc-modal *, .mc-overlay { box-sizing: border-box; }

/* ================================================================
   VARIÁVEIS GLOBAIS DO LAYOUT
   Para mudar a identidade visual do site, altere apenas este bloco.
   Prefixo --lv-* = Layout Variável (nosso CSS desenvolvido)
   Aliases --mc-*, --white, --gray etc. mantidos por compatibilidade
   ================================================================ */
:root {

  /* ── MARCA / PRIMÁRIA ── */
  --lv-primaria:          #0F5132;  /* Verde esmeralda — nav, headers, bordas */
  --lv-primaria-hover:    #14A870;  /* Verde ação — links, estados ativos, CTA vibrante */
  --lv-primaria-light:    #F0F9F4;  /* Verde-quase-branco — fundo suave, hover rows */
  --lv-primaria-dark:     #0A3D26;  /* Esmeralda muito escuro — destaques, títulos */
  --lv-acento:            #0F766E;  /* Teal profundo — acento moderno, elementos especiais */

  /* ── DESTAQUE / CTA ── */
  --lv-cta:               #dc2626;  /* Vermelho moderno — botões, badges */
  --lv-cta-alt:           #faa91a;  /* Dourado — hover alternativo */

  /* ── STATUS ── */
  --lv-sucesso:           #16a34a;  /* Verde — ao-vivo, confirmado */
  --lv-sucesso-hover:     #15803d;  /* Verde escuro — hover */
  --lv-sucesso-bg:        #f0fdf4;  /* Verde fundo claro — notificação */
  --lv-aviso:             #f59e0b;  /* Âmbar — badge destaque */
  --lv-aviso-bg:          #fef3c7;  /* Âmbar fundo */
  --lv-erro-bg:           #fef2f2;  /* Vermelho fundo claro — erro */

  /* ── TEXTOS ── */
  --lv-titulo:            #111827;  /* Títulos */
  --lv-label:             #374151;  /* Labels / meta-info */
  --lv-hint:              #6b7280;  /* Placeholders / hints */
  --lv-desab:             #9ca3af;  /* Desabilitados / texto fraco */

  /* ── BACKGROUNDS ── */
  --lv-bg:                #ffffff;  /* Branco — cards, fundos */
  --lv-bg-section:        #f3f4f6;  /* Section backgrounds */
  --lv-bg-page:           #f4f5f7;  /* Fundo da página */
  --lv-bg-input:          #eeeeee;  /* Fundo inputs */

  /* ── BORDAS ── */
  --lv-borda:             #e5e7eb;  /* Borda padrão */
  --lv-borda-leve:        #f0f0f0;  /* Divisores */

  /* ── LAYOUT ── */
  --mc-side-w:            260px;    /* Largura do painel lateral (filtros) */

  /* ── ALIASES --mc-* (compatibilidade com blocos minha_conta, dlance, etc.) ── */
  --mc-blue:              var(--lv-primaria);        /* #1e3a5f */
  --mc-blue-dk:           #0d2540;                   /* azul muito escuro — sem equivalente direto */
  --mc-red:               var(--lv-cta);             /* #dc2626 */
  --mc-green:             var(--lv-sucesso);         /* #16a34a */
  --mc-amber:             var(--lv-aviso);           /* #f59e0b */
  --mc-gray-bg:           var(--lv-bg-page);         /* #f4f5f7 */
  --mc-gray-brd:          var(--lv-borda);           /* #e5e7eb */
  --mc-gray-lbl:          var(--lv-desab);           /* #9ca3af */
  --mc-gray-dk:           var(--lv-label);           /* #374151 */
  --mc-black:             var(--lv-titulo);          /* #111827 */

  /* ── ALIASES variáveis antigas (compatibilidade com index.phtml, cadastro, etc.) ── */
  --primary-color:        var(--lv-primaria-dark);   /* #003049 */
  --accent-color:         var(--lv-acento);          /* #ff6600 */
  --white:                var(--lv-bg);              /* #ffffff */
  --gray:                 var(--lv-bg-input);        /* #eeeeee */
  --gray-dark:            #757575;                   /* sem equivalente exato */
  --dark:                 #333333;                   /* sem equivalante exato */
  --green:                #14937b;                   /* verde antigo — diferente do --lv-sucesso */
  --hover-red:            #dc2626;                   /* ERRO = SEMPRE vermelho (nao e cor de marca; conversao JMK trocou por engano p/ verde) */
  --color-white:          var(--lv-bg);              /* alias redundante mantido por segurança */
  --font-principal:       'Albert Sans', sans-serif; /* fonte principal */
}

/* ════ LAYOUT PRINCIPAL ════ */
.mc-wrap {
    display: flex;
    min-height: 80vh;
    background: var(--mc-gray-bg);
    font-family: inherit;
    margin-top: 100px;
}



/* ════════════════════════════
   SIDEBAR
════════════════════════════ */
.mc-side {
    width: var(--mc-side-w);
    min-width: var(--mc-side-w);
    background: #fff;
    border-right: 1px solid var(--mc-gray-brd);
    display: flex;
    flex-direction: column;
    position: sticky;
    top: var(--mc-header-h);
    height: calc(100vh - var(--mc-header-h));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 100;
}

.mc-side__user {
    padding: 20px 16px 14px;
    border-bottom: 1px solid var(--mc-gray-brd);
}
.mc-side__avatar {
    width: 42px; height: 42px; border-radius: 50%;
    background: var(--mc-black); color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 17px; font-weight: 700; margin-bottom: 9px;
}
.mc-side__name {
    font-size: 13px; font-weight: 700;
    color: var(--mc-black); line-height: 1.3;
}
.mc-side__badge {
    display: inline-block; margin-top: 5px;
    padding: 2px 10px; border-radius: 20px;
    font-size: 11px; font-weight: 600;
    background: #d1fae5; color: #065f46;
}
.mc-side__badge--pend { background: #fef3c7; color: #92400e; }

.mc-nav { flex: 1; padding: 6px 0; }
.mc-nav ul { list-style: none; }

.mc-nav__group-hd {
    display: flex; align-items: center; gap: 10px;
    padding: 11px 16px; cursor: pointer;
    touch-action: manipulation;
    font-size: 13px; font-weight: 600; color: var(--mc-gray-dk);
    user-select: none; transition: background .15s;
}
.mc-nav__group-hd:hover { background: #f9fafb; }
.mc-nav__group-hd .mc-nav__gi { width: 20px; text-align: center; color: var(--mc-gray-lbl); font-size: 13px; }
.mc-nav__group-hd .mc-nav__lbl { flex: 1; }
.mc-nav__group-hd .mc-nav__chev { font-size: 10px; color: var(--mc-gray-lbl); transition: transform .2s; }
.mc-nav__group-hd.open .mc-nav__chev { -webkit-transform: rotate(180deg); transform: rotate(180deg); }

.mc-nav__sub { overflow: hidden; max-height: 0; transition: max-height .28s ease; background: #fafafa; }
.mc-nav__sub.open { max-height: 500px; }
.mc-nav__sub li a {
    display: flex; align-items: center; gap: 10px;
    padding: 9px 16px 9px 38px;
    font-size: 13px; color: var(--mc-gray-dk);
    text-decoration: none;
    border-left: 3px solid transparent;
    transition: background .12s, color .12s, border-color .12s;
}
.mc-nav__sub li a i { font-size: 12px; width: 15px; text-align: center; color: var(--mc-gray-lbl); }
.mc-nav__sub li a:hover { background: #f3f4f6; color: var(--mc-black); }
.mc-nav__sub li a.mc-active { border-left-color: var(--mc-red); color: var(--mc-red); background: #fff5f5; font-weight: 600; }
.mc-nav__sub li a.mc-active i { color: var(--mc-red); }

.mc-nav__sair a {
    display: flex; align-items: center; gap: 10px;
    padding: 11px 16px; font-size: 13px; color: var(--mc-gray-dk);
    text-decoration: none; border-top: 1px solid var(--mc-gray-brd);
    transition: background .12s;
}
.mc-nav__sair a:hover { background: #f9fafb; }
.mc-nav__sair a i { width: 20px; text-align: center; color: var(--mc-gray-lbl); }

.mc-nav__ctas { padding: 12px; display: flex; flex-direction: column; gap: 8px; }
.mc-nav__ctas a {
    display: block; padding: 9px 12px;
    border: 1px solid var(--mc-blue); border-radius: 8px;
    font-size: 11px; font-weight: 600; color: var(--mc-blue);
    text-decoration: none; line-height: 1.4; transition: background .15s;
}
.mc-nav__ctas a:hover { background: rgba(30,58,95,.06); }

/* ════ ÁREA PRINCIPAL ════ */
.mc-main { flex: 1; min-width: 0; display: flex; flex-direction: column; }

.mc-hero {
    background: linear-gradient(135deg, var(--mc-blue) 0%, var(--mc-blue) 100%);
    padding: 26px 32px;
    display: flex; align-items: flex-end; justify-content: space-between;
    min-height: 120px;
    padding-bottom: 72px;
}
.mc-hero__bc { font-size: 11px; color: rgba(255,255,255,.5); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 5px; }
.mc-hero__h1 { font-size: 22px; font-weight: 700; color: #fff; line-height: 1.2; }

.mc-hero__mob-btn {
    display: none; align-items: center; gap: 6px;
    background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.3);
    color: #fff; border-radius: 8px; padding: 7px 12px;
    font-size: 12px; cursor: pointer;
    touch-action: manipulation;
}

.mc-body { padding: 24px 28px; flex: 1; }

/* ════ SEÇÕES ════ */
.mc-sec { display: none; }
.mc-sec.mc-on { display: block; }

/* ════ CARDS GRID ════ */
.mc-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 22px;
}

.mc-card {
    background: #fff; border: 1px solid var(--mc-gray-brd);
    border-radius: 14px; padding: 18px 18px 14px;
    display: flex; flex-direction: column;
    position: relative; overflow: hidden;
    transition: box-shadow .18s;
}
.mc-card:hover { box-shadow: 0 4px 18px rgba(0,0,0,.09); }
.mc-card__ic {
    position: absolute; top: 16px; right: 16px;
    width: 34px; height: 34px; border-radius: 8px;
    background: #f3f4f6; color: var(--mc-gray-lbl);
    display: flex; align-items: center; justify-content: center;
    font-size: 15px;
}
.mc-card__badge {
    display: inline-block; padding: 2px 9px; border-radius: 20px;
    font-size: 10px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .04em; margin-bottom: 7px; width: fit-content;
}
.mc-card__badge--green { background: #d1fae5; color: #065f46; }
.mc-card__badge--amber { background: #fef3c7; color: #92400e; }
.mc-card__title { font-size: 15px; font-weight: 700; color: var(--mc-black); margin-bottom: 10px; padding-right: 38px; }
.mc-card__body { flex: 1; margin-bottom: 12px; }
.mc-card__row { font-size: 12.5px; color: var(--mc-gray-dk); margin-bottom: 4px; line-height: 1.5; }
.mc-card__row .mc-ok   { color: var(--mc-green); font-weight: 600; }
.mc-card__row .mc-warn { color: var(--mc-red); font-weight: 600; text-decoration: underline; cursor: pointer; }
touch-action: manipulation;
.mc-card__foot { border-top: 1px solid var(--mc-gray-brd); padding-top: 10px; margin-top: auto; }
.mc-card__link {
    display: flex; align-items: center; justify-content: space-between;
    font-size: 13px; font-weight: 600; color: var(--mc-red);
    text-decoration: none; cursor: pointer; transition: opacity .15s;
    touch-action: manipulation;
}
.mc-card__link:hover { opacity: .72; }

/* ════ BANNER HABILITAÇÕES ════ */
.mc-banner {
    background: #fff; border: 1px solid var(--mc-gray-brd);
    border-radius: 14px; overflow: hidden;
    display: grid; grid-template-columns: 220px 1fr;
    min-height: 190px; margin-bottom: 20px;
}
.mc-banner__img {
    position: relative;
    background: var(--mc-blue) center/cover no-repeat;
}
.mc-banner__img::after {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(160deg, rgba(13,37,64,.75) 0%, rgba(13,37,64,.4) 100%);
}
.mc-banner__img-inner {
    position: absolute; inset: 0; z-index: 1;
    display: flex; flex-direction: column; justify-content: flex-end;
    padding: 18px 16px;
}
.mc-banner__img-title { font-size: 17px; font-weight: 700; color: #fff; line-height: 1.25; margin-bottom: 10px; }
.mc-banner__btn {
    display: inline-block; padding: 5px 13px;
    border: 2px solid #fff; border-radius: 20px;
    color: #fff; font-size: 12px; font-weight: 700;
    text-decoration: none; width: fit-content; cursor: pointer;
    touch-action: manipulation;
    transition: background .15s, color .15s; background: transparent;
}
.mc-banner__btn:hover { background: #fff; color: var(--mc-black); }
.mc-banner__content {
    display: flex; flex-direction: column; align-items: center;
    justify-content: center; padding: 28px 32px; text-align: center; gap: 8px;
}
.mc-banner__empty-ic { font-size: 44px; color: #d1d5db; margin-bottom: 4px; line-height: 1; }
.mc-banner__empty-ttl { font-size: 15px; font-weight: 700; color: var(--mc-black); }
.mc-banner__empty-sub { font-size: 12px; color: var(--mc-gray-lbl); max-width: 280px; }
.mc-banner__cta {
    margin-top: 6px; display: inline-block;
    padding: 7px 20px; border: 1px solid var(--mc-gray-brd);
    border-radius: 20px; font-size: 12px; color: var(--mc-gray-dk);
    text-decoration: none; cursor: pointer;
    touch-action: manipulation;
    transition: border-color .15s, color .15s; background: transparent;
}
.mc-banner__cta:hover { border-color: var(--mc-black); color: var(--mc-black); }

/* ════ SECTION HEAD ════ */
/* titulo da secao (mc-sec-head) REMOVIDO: duplicava o titulo grande do hero (#mcH1) */
.mc-sec-head { display: none; }

/* Atalho WhatsApp na secao de documentos — SEM box colorido (texto + botao limpos) */
.mc-whats-box { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  margin-top:16px; padding:0; background:none; border:0; }
.mc-whats-box__txt { font-size:13px; color:var(--mc-gray-dk,#374151); line-height:1.5; flex:1 1 220px; }
.mc-whats-btn { display:inline-flex; align-items:center; gap:8px; background:#25d366; color:#fff;
  text-decoration:none; padding:11px 18px; border-radius:9px; font-size:13.5px; font-weight:700; white-space:nowrap; transition:.15s; }
.mc-whats-btn:hover { background:#1eb356; }
.mc-whats-btn i { font-size:16px; }
@media(max-width:600px){ .mc-whats-btn { width:100%; justify-content:center; } }
.mc-sec-head h2 { font-size: 20px; font-weight: 700; color: var(--mc-black); }

/* ════ DADOS PESSOAIS ════ */
.mc-pcard {
    background: #fff; border: 1px solid var(--mc-gray-brd);
    border-radius: 14px; padding: 22px; margin-bottom: 20px;
}
.mc-pcard h3 {
    font-size: 12px; font-weight: 700; color: var(--mc-black);
    text-transform: uppercase; letter-spacing: .05em;
    margin-bottom: 16px; padding-bottom: 12px;
    border-bottom: 1px solid var(--mc-gray-brd);
}
.mc-pcard h3 i { color: var(--mc-gray-lbl); margin-right: 7px; }
.mc-pgrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 24px; }
.mc-pfield label {
    display: block; font-size: 11px; font-weight: 600;
    color: var(--mc-gray-lbl); text-transform: uppercase;
    letter-spacing: .04em; margin-bottom: 3px;
}
.mc-pfield p { font-size: 13.5px; color: var(--mc-black); font-weight: 500; }
.mc-pfield--full { grid-column: 1 / -1; }

.mc-sbar {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 16px; border-radius: 10px;
    margin-bottom: 16px; font-size: 13px; font-weight: 600;
}
.mc-sbar--ok   { background: var(--lv-sucesso-bg); border: 1px solid #bbf7d0; color: var(--mc-green); }
.mc-sbar--pend { background: #fef2f2; border: 1px solid #fecaca; color: var(--mc-red); }

.mc-warn-box {
    background: none; border: 0;
    padding: 0; margin-bottom: 18px;
    font-size: 13px; color: var(--mc-gray-dk,#374151); line-height: 1.6;
}
.mc-warn-box a {
    display: inline-flex; align-items: center; gap: 7px;
    margin-top: 10px; padding: 8px 16px;
    background: var(--mc-red); color: #fff;
    border-radius: 8px; font-weight: 700; font-size: 12px;
    text-decoration: none; transition: opacity .15s;
}
.mc-warn-box a:hover { opacity: .82; }

/* ════ TERMO ════ */
.mc-termo { background: #fff; border: 1px solid var(--mc-gray-brd); border-radius: 14px; padding: 22px; margin-top: 20px; }
.mc-termo h3 { font-size: 12px; font-weight: 700; color: var(--mc-black); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid var(--mc-gray-brd); }
.mc-termo h3 i { color: var(--mc-gray-lbl); margin-right: 7px; }
.mc-termo__box { max-height: 230px; overflow-y: auto; padding: 12px; background: var(--mc-gray-bg); border-radius: 8px; font-size: 12px; color: var(--mc-gray-dk); line-height: 1.7; margin-bottom: 12px; border: 1px solid var(--mc-gray-brd); }
.mc-termo__accept { display: flex; align-items: flex-start; gap: 9px; font-size: 12px; color: var(--mc-gray-dk); margin-bottom: 14px; line-height: 1.5; }
.mc-termo__accept input { margin-top: 2px; }
.mc-termo__accept span { color: var(--mc-gray-lbl); font-size: 11px; display: block; margin-top: 2px; }
.mc-btn-print { display: inline-flex; align-items: center; gap: 7px; padding: 8px 16px; background: var(--mc-blue); color: #fff; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; transition: opacity .15s; }
touch-action: manipulation;
.mc-btn-print:hover { opacity: .82; }

/* ════ DOCS ════ */
.mc-docs-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 14px; }
.mc-docs-instr { background: #fff; border: 1px solid var(--mc-gray-brd); border-radius: 14px; padding: 20px; font-size: 13px; color: var(--mc-gray-dk); line-height: 1.7; }
.mc-docs-instr h4 { font-size: 13px; font-weight: 700; color: var(--mc-black); margin-bottom: 10px; }
.mc-docs-instr ul { padding-left: 18px; margin: 7px 0 10px; }
.mc-docs-instr li { margin-bottom: 4px; }
.mc-limit { display: flex; align-items: flex-start; gap: 8px; background: #fffbeb; border: 1px solid #fde68a; border-radius: 10px; padding: 11px 14px; font-size: 12px; color: #78350f; margin-bottom: 16px; line-height: 1.6; }
.mc-limit i { color: var(--mc-amber); flex-shrink: 0; margin-top: 1px; }
.mc-docs-form { background: #fff; border: 1px solid var(--mc-gray-brd); border-radius: 14px; padding: 20px; }
.mc-docs-form h4 { font-size: 13px; font-weight: 700; color: var(--mc-black); margin-bottom: 14px; }
.mc-frow { margin-bottom: 12px; }
.mc-frow label { display: block; font-size: 11px; font-weight: 600; color: var(--mc-gray-lbl); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 5px; }
.mc-file-area { display: flex; align-items: center; gap: 10px; border: 1px dashed var(--mc-gray-brd); border-radius: 8px; padding: 10px 13px; background: var(--mc-gray-bg); cursor: pointer; transition: border-color .15s; }
touch-action: manipulation;
.mc-file-area:hover { border-color: var(--mc-blue); }
.mc-file-area input[type="file"] { display: none; }
.mc-file-lbl { font-size: 12px; font-weight: 600; color: var(--mc-blue); padding: 4px 10px; background: rgba(30,58,95,.08); border-radius: 6px; cursor: pointer; white-space: nowrap; }
touch-action: manipulation;
.mc-file-name { font-size: 12px; color: var(--mc-gray-lbl); }
.mc-factions { display: flex; gap: 10px; margin-top: 16px; }
.mc-btn { display: inline-flex; align-items: center; gap: 6px; padding: 9px 16px; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; text-decoration: none; border: none; transition: opacity .15s; }
touch-action: manipulation;
.mc-btn--prim { background: var(--mc-blue); color: #fff; }
.mc-btn--sec  { background: #f3f4f6; color: var(--mc-gray-dk); border: 1px solid var(--mc-gray-brd); }
.mc-btn:hover { opacity: .8; }
.mc-doc-res { border-radius: 10px; padding: 13px 16px; font-size: 13px; line-height: 1.6; margin-top: 14px; }
.mc-doc-res--ok   { background: var(--lv-sucesso-bg); border: 1px solid #bbf7d0; color: #166534; }
.mc-doc-res--pend { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }

/* ════ TABELAS ════ */
.mc-tbl-wrap { background: #fff; border: 1px solid var(--mc-gray-brd); border-radius: 14px; overflow: hidden; }
.mc-tbl { width: 100%; border-collapse: collapse; font-size: 13px; }
.mc-tbl thead th { background: #f9fafb; padding: 10px 14px; text-align: left; font-size: 11px; font-weight: 700; color: var(--mc-gray-lbl); text-transform: uppercase; letter-spacing: .05em; border-bottom: 1px solid var(--mc-gray-brd); white-space: nowrap; }
.mc-tbl tbody td { padding: 11px 14px; color: var(--mc-gray-dk); border-bottom: 1px solid #f3f4f6; vertical-align: middle; }
.mc-tbl tbody tr:last-child td { border-bottom: none; }
.mc-tbl tbody tr:hover td { background: #fafafa; }
.mc-tbl .mc-empty { text-align: center; padding: 40px; color: var(--mc-gray-lbl); font-size: 13px; }
.mc-tbl .mc-empty i { font-size: 32px; display: block; margin-bottom: 10px; color: #d1d5db; }
.mc-st { display: inline-block; padding: 3px 9px; border-radius: 20px; font-size: 11px; font-weight: 600; }
.mc-st--open   { background: #dcfce7; color: #166534; }
.mc-st--closed { background: #f3f4f6; color: var(--mc-gray-dk); }
.mc-st--cond   { background: #fef3c7; color: #92400e; }
.mc-st--vd     { background: #ede9fe; color: #5b21b6; }
.mc-btn-lote { display: inline-flex; align-items: center; gap: 5px; padding: 5px 12px; background: var(--mc-blue); color: #fff; border-radius: 6px; font-size: 11px; font-weight: 600; text-decoration: none; transition: opacity .15s; white-space: nowrap; }
.mc-btn-lote:hover { opacity: .8; }

/* ════ MODAL ════ */
.mc-scope .mc-modal { display: none; position: fixed;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom); inset: 0; background: rgba(0,0,0,.4); z-index: 9000; align-items: center; justify-content: center; }
.mc-modal.mc-on { display: flex; }
.mc-modal__box { background: #fff; border-radius: 14px; padding: 28px 30px; max-width: 380px; width: 90%; position: relative; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.18); }
.mc-modal__close { position: absolute; top: 11px; right: 14px; font-size: 19px; cursor: pointer; color: var(--mc-gray-lbl); background: none; border: none; }
touch-action: manipulation;
.mc-modal__close:hover { color: var(--mc-black); }
.mc-modal__box p { font-size: 14px; color: var(--mc-gray-dk); line-height: 1.6; }

/* ════ OVERLAY MOBILE ════ */
.mc-scope .mc-overlay { display: none; position: fixed;
    /* overlay fullscreen cobre safe-area automaticamente */ inset: 0; background: rgba(0,0,0,.4); z-index: 290; }
.mc-overlay.mc-on { display: block; }   /* era '.mc-overlay .mc-on' (filho) -> overlay nunca aparecia/fechava */

/* ── Cards sobrepostos ao hero ── */
.mc-body {
    padding: 0 28px 24px;
}

.mc-grid {
    margin-top: -48px;
    position: relative;
    z-index: 10;
}
/* ════ RESPONSIVO ════ */
@media (max-width: 1023px) {
    .mc-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 960px) {
    .mc-side {
        position: fixed;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom); left: -280px; top: var(--mc-header-h); height: calc(100vh - var(--mc-header-h));
        z-index: 300; transition: left .28s ease;
        box-shadow: 4px 0 24px rgba(0,0,0,.18);
    }
    .mc-side.mc-on { left: 0; }
    .mc-hero__mob-btn { display: flex; }
    .mc-hero { padding: 18px 16px 55px; min-height: 90px; }
    .mc-hero__h1 { font-size: 18px; }
    .mc-body { padding: 14px 12px; }
    .mc-docs-row { grid-template-columns: 1fr; }
    .mc-pgrid { grid-template-columns: 1fr; }
    .mc-banner { grid-template-columns: 1fr; grid-template-rows: 120px auto; }
    .mc-banner__img { min-height: 120px; }
    .mc-tbl-wrap { overflow-x: auto; }
    .mc-tbl { min-width: 520px; }
    .mc-wrap {margin-top: 85px;} 
}
@media (max-width: 580px) {
    .mc-grid { grid-template-columns: 1fr; }
    .mc-factions { flex-direction: column; }
}


/* ============================================================
   ORIGEM: views/agradecimento.phtml
   ============================================================ */

/* ════ RESET ESCOPADO — não vaza para o template pai ════ */
  .agd-wrap, .agd-wrap *,
  .agd-wrap *::before,
  .agd-wrap *::after { box-sizing: border-box; margin: 0; padding: 0; }

  /* ════ WRAPPER ════ */
  .agd-wrap {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background: #f4f5f7;
    color: #374151;
    width: 100%;
  }

  /* ════ HEADER ════ */
  .agd-header {
    background: var(--lv-primaria);
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 12px rgba(0,0,0,.18);
  }
  .agd-header a { display: flex; align-items: center; }
  .agd-header img { height: 38px; display: block; }

  /* ════ HERO ════ */
  .agd-hero {
    background: linear-gradient(135deg, var(--lv-primaria) 0%, var(--lv-primaria-hover) 55%, var(--lv-primaria) 100%);
    padding: 64px 24px 88px;
    text-align: center;
    position: relative;
    overflow: hidden;
  }
  .agd-hero::before {
    content: '';
    position: absolute;
    top: -40px; right: -40px;
    width: 180px; height: 180px;
    background: rgba(245,158,11,.12);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 24px;
  }
  .agd-hero::after {
    content: '';
    position: absolute;
    bottom: -50px; left: -30px;
    width: 140px; height: 140px;
    background: rgba(220,38,38,.10);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 20px;
  }
  .agd-hero__shapes {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    pointer-events: none;
    overflow: hidden;
  }
  .agd-hero__shape { position: absolute; width: 0; height: 0; }
  .agd-hero__shape--1 {
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-bottom: 100px solid rgba(245,158,11,.18);
    top: 20px; left: 5%;
  }
  .agd-hero__shape--2 {
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-bottom: 70px solid rgba(220,38,38,.15);
    bottom: 30px; right: 8%;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .agd-hero__shape--3 {
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-bottom: 44px solid rgba(255,255,255,.07);
    top: 50%; right: 15%;
  }
  .agd-hero__check {
    width: 72px; height: 72px;
    background: var(--lv-sucesso);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px;
    box-shadow: 0 0 0 12px rgba(22,163,74,.15), 0 0 0 24px rgba(22,163,74,.07);
    animation: agd-pop .5s cubic-bezier(.34,1.56,.64,1) both;
  }
  .agd-hero__check i { color: #fff; font-size: 32px; }
  .agd-hero__badge {
    display: inline-block;
    background: rgba(22,163,74,.18);
    color: #4ade80;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 99px;
    border: 1px solid rgba(22,163,74,.3);
    margin-bottom: 14px;
  }
  .agd-hero__title {
    color: #fff;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.2;
    margin-bottom: 10px;
  }
  .agd-hero__title span { color: #f59e0b; }
  .agd-hero__sub {
    color: rgba(255,255,255,.72);
    font-size: 14px;
    max-width: 420px;
    margin: 0 auto 28px;
    line-height: 1.6;
  }

  /* ════ PROGRESS BAR ════ */
  .agd-progress-wrap { max-width: 320px; margin: 0 auto; }
  .agd-progress-label {
    color: rgba(255,255,255,.55);
    font-size: 12px;
    margin-bottom: 8px;
    display: flex; align-items: center; justify-content: space-between;
  }
  .agd-progress-label strong { color: rgba(255,255,255,.9); }
  .agd-progress-track {
    height: 6px;
    background: rgba(255,255,255,.15);
    border-radius: 99px;
    overflow: hidden;
  }
  .agd-progress-fill {
    height: 100%;
    width: 100%;
    background: linear-gradient(90deg, var(--lv-sucesso), #4ade80);
    border-radius: 99px;
    transform-origin: left;
    animation: agd-drain <?= $tempo_redirect ?>s linear forwards;
  }

  /* ════ ANIMAÇÕES ════ */
  @keyframes agd-drain {
    from { transform: scaleX(1); }
    to   { transform: scaleX(0); }
  }
  @keyframes agd-pop {
    from { transform: scale(0); opacity: 0; }
    to   { transform: scale(1); opacity: 1; }
  }
  @keyframes agd-fadein {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  @keyframes agd-pulse-ring {
    0%   { box-shadow: 0 0 0 0 rgba(220,38,38,.5); }
    70%  { box-shadow: 0 0 0 12px rgba(220,38,38,0); }
    100% { box-shadow: 0 0 0 0 rgba(220,38,38,0); }
  }

  /* ════ CORPO PRINCIPAL ════ */
  .agd-body {
    max-width: 680px;
    margin: -28px auto 0;
    padding: 0 16px 48px;
    position: relative;
    z-index: 10;
  }

  /* ════ CARD JORNADA ════ */
  .agd-journey {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 24px rgba(0,0,0,.08);
    padding: 28px 24px;
    margin-bottom: 20px;
    animation: agd-fadein .5s .1s ease both;
  }
  .agd-journey__title {
    font-size: 13px;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 20px;
  }
  .agd-steps { display: flex; align-items: flex-start; }
  .agd-step {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
  }
  .agd-step:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 20px;
    left: calc(50% + 20px);
    right: calc(-50% + 20px);
    height: 2px;
    background: #e5e7eb;
    z-index: 0;
  }
  .agd-step--done:not(:last-child)::after {
    background: linear-gradient(90deg, var(--lv-sucesso), #e5e7eb);
  }
  .agd-step__icon {
    width: 40px; height: 40px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
    margin-bottom: 10px;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
  }
  .agd-step--done .agd-step__icon    { background: var(--lv-sucesso); color: #fff; box-shadow: 0 0 0 5px rgba(22,163,74,.12); }
  .agd-step--active .agd-step__icon  { background: #fef3c7; color: #f59e0b; border: 2px dashed #f59e0b; }
  .agd-step--pending .agd-step__icon { background: #f3f4f6; color: #9ca3af; }
  .agd-step__label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    line-height: 1.3;
  }
  .agd-step--done .agd-step__label    { color: var(--lv-sucesso); }
  .agd-step--active .agd-step__label  { color: #f59e0b; }
  .agd-step--pending .agd-step__label { color: #9ca3af; }
  .agd-step__sub { font-size: 10px; color: #9ca3af; margin-top: 2px; }

  /* ════ BANNER CONFIRMA AÍ ════ */
  .agd-banner {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,.10);
    margin-bottom: 20px;
    animation: agd-fadein .5s .2s ease both;
  }
  .agd-banner__head {
    background: linear-gradient(110deg, var(--mc-blue-dk) 0%, var(--lv-primaria) 55%, var(--lv-primaria-hover) 100%);
    padding: 28px 28px 22px;
    position: relative;
    overflow: hidden;
    min-height: 160px;
    display: flex;
    align-items: center;
  }
  .agd-banner__tri { position: absolute; width: 0; height: 0; pointer-events: none; }
  .agd-banner__tri--1 {
    border-left: 70px solid transparent;
    border-right: 70px solid transparent;
    border-bottom: 120px solid rgba(245,158,11,.22);
    top: -30px; left: -20px;
  }
  .agd-banner__tri--2 {
    border-left: 45px solid transparent;
    border-right: 45px solid transparent;
    border-bottom: 80px solid rgba(220,38,38,.18);
    bottom: -10px; right: 230px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .agd-banner__tri--3 {
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 50px solid rgba(245,158,11,.35);
    bottom: 10px; left: 30%;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .agd-banner__text { position: relative; z-index: 2; flex: 1; }
  .agd-banner__eyebrow {
    display: inline-block;
    background: rgba(220,38,38,.9);
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 3px 10px;
    border-radius: 4px;
    margin-bottom: 10px;
  }
  .agd-banner__title {
    font-size: 40px;
    font-weight: 900;
    color: #fff;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: -1px;
    margin-bottom: 10px;
  }
  .agd-banner__title em { font-style: normal; color: #f59e0b; }
  .agd-banner__desc { color: rgba(255,255,255,.75); font-size: 13px; line-height: 1.6; max-width: 320px; }
  .agd-banner__desc strong { color: #fff; }
  .agd-banner__photo {
    position: absolute;
    right: 0; bottom: 0;
    height: 100%;
    max-width: 220px;
    object-fit: cover;
    object-position: top center;
    -webkit-mask-image: linear-gradient(to left, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 100%);
    mask-image: linear-gradient(to left, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 100%);
    display: block;
    z-index: 1;
  }

  /* ════ ITENS DO BANNER ════ */
  .agd-banner__body { background: #fff; }
  .agd-banner__item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 24px;
    border-bottom: 1px solid #e5e7eb;
  }
  .agd-banner__item:last-child { border-bottom: none; }
  .agd-banner__icon-wrap {
    width: 52px; height: 52px;
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
  }
  .agd-banner__icon-wrap--blue  { background: #eff6ff; color: var(--lv-primaria); }
  .agd-banner__icon-wrap--green { background: var(--lv-sucesso-bg); color: var(--lv-sucesso); }
  .agd-banner__icon-wrap--amber { background: #fffbeb; color: #f59e0b; }
  .agd-banner__item-content { flex: 1; }
  .agd-banner__item-title { font-size: 14px; font-weight: 700; color: #111827; margin-bottom: 4px; }
  .agd-banner__item-desc { font-size: 13px; color: #6b7280; line-height: 1.5; }
  .agd-banner__item-desc strong { color: #374151; }
  .agd-banner__item-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    padding: 0;
    background: none !important;
    border: 0 !important;
    border-radius: 0;
    margin-top: 6px;
    animation: none !important;
  }
  .agd-banner__item-badge--done    { color: var(--lv-sucesso); }
  .agd-banner__item-badge--pending { color: #d97706; }

  /* ════ CTA ════ */
  .agd-cta-wrap { text-align: center; animation: agd-fadein .5s .35s ease both; }
  .agd-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--lv-primaria);
    color: #fff;
    text-decoration: none;
    padding: 14px 32px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .02em;
    transition: background .2s, transform .15s;
    box-shadow: 0 4px 16px rgba(30,58,95,.25);
  }
  .agd-cta-btn:hover { background: #163050; transform: translateY(-1px); }
  .agd-cta-btn i { font-size: 16px; }
  .agd-cta-wrap { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
  .agd-cta-btn--ghost { background:#fff; color:var(--lv-primaria); border:1px solid var(--lv-primaria); box-shadow:none; }
  .agd-cta-btn--ghost:hover { background:#f1f5f9; }
  /* botoes de acao do bloco Documentos */
  .agd-doc-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
  .agd-doc-btn { display:inline-flex; align-items:center; gap:8px; text-decoration:none; padding:10px 18px; border-radius:9px; font-size:13.5px; font-weight:700; transition:.15s; }
  .agd-doc-btn--primary { background:var(--lv-primaria); color:#fff; }
  .agd-doc-btn--primary:hover { background:#163050; }
  .agd-doc-btn--whats { background:#25d366; color:#fff; }
  .agd-doc-btn--whats:hover { background:#1eb356; }
  .agd-doc-btn i { font-size:15px; }
  @media(max-width:600px){ .agd-doc-btn, .agd-cta-btn { width:100%; justify-content:center; } }
  .agd-redirect-note { margin-top: 12px; font-size: 12px; color: #9ca3af; }
  .agd-redirect-note #agdCountdown { font-weight: 700; color: var(--lv-primaria); }

  /* ════ RESPONSIVO ════ */
  @media (max-width: 540px) {
    .agd-hero          { padding: 40px 16px 72px; }
    .agd-hero__title   { font-size: 22px; }
    .agd-body          { padding: 0 12px 40px; }
    .agd-banner__head  { min-height: 130px; padding: 22px 20px 18px; }
    .agd-banner__photo { max-width: 130px; }
    .agd-banner__title { font-size: 30px; }
    .agd-banner__item  { padding: 16px 18px; }
    .agd-step__label   { font-size: 10px; }
    .agd-journey       { padding: 22px 16px; }
  }


/* ============================================================
   ORIGEM: views/cadastro.phtml
   ============================================================ */

/* ===== PAGE CONTAINER ===== */
.cadastro-page {
  display: flex;
  justify-content: center;
  min-height: 100vh; /* fallback iOS */
    min-height: 100dvh; /* fallback iOS Safari */
  min-height: 100dvh;
}

.cadastro-card {
  width: 100%;
  max-width: 390px;
  padding: 20px;
  margin: 40px 0 0 0;
}

/* ===== LOGO ===== */
.cadastro-logo {
  text-align: center;
  margin-bottom: 20px;
}

.cadastro-logo img {
  width: 140px;
}

/* ===== TITULO ===== */
.cadastro-title {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 600;
}

.cadastro-desc {
  text-align: center;
  color: var(--gray-dark);
  font-size: 0.95rem;
  margin: 8px 0 20px;
}

/* ===== PF / PJ ===== */
.tipo-pessoa {
  display: flex;
  gap: 12px;
  margin-bottom: 25px !important;
}

.tipo-btn {
  flex: 1;
  padding: 10px 14px;
  border-radius: 5px;
  background: var(--white);
  border: 1px solid #dcdcdc;
  font-size: 0.95rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  touch-action: manipulation;
  transition: 0.2s ease;
  color: var(--dark);
}

/* Radio custom */
.tipo-btn .radio {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #bfbfbf;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tipo-btn .radio::after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: transparent;
  transition: 0.2s;
}

/* ===== ATIVO ===== */
.tipo-btn.ativo {
  border-color: var(--hover-red);
  color: var(--hover-red);
  background: var(--white);
}

.tipo-btn.ativo .radio {
  border-color: var(--hover-red);
}

.tipo-btn.ativo .radio::after {
  background: var(--hover-red);
}

/* ===== PF/PJ TOGGLE ===== */
[data-pf-only].pf-hidden {
  display: none;
}

/* FORM */
.cadastro-form {
  width: 100%;
}

.form-group {
  margin-bottom: 16px;
    position: relative;
}

.form-group label {
  position: absolute;
  left: 14px;
  top: 26px;   /* centro do input (altura fixa ~52px); NAO 50% do grupo, senao a dica/erro desalinha o par */
  transform: translateY(-50%);
  pointer-events: none;
  transition: 0.25s ease;
  font-size: 0.95rem;
  color: var(--gray-dark);
}

.form-group input,
.form-group select {
  width: 100%;
  padding: 24px 14px 8px 14px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 0.95rem;
  background: var(--gray);;
  outline: none;
  font-style: normal;
    color: var(--dark);
}

/* Corrige altura do select no Safari para igualar aos inputs */
.cadastro-form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 52px;
  background-color: var(--gray);
  padding-top: 16px;
  padding-bottom: 8px;
  line-height: normal;
}

/* input focado → label sobe */
.form-group input:focus + label,
.form-group select:focus + label {
  top: 12px;
  font-size: 0.75rem;
  color: var(--hover-red);
}

/* campo preenchido → label sobe (automatico via :not(:placeholder-shown), sem depender de JS .filled) */
.form-group input.filled + label,
/* select sobe o label so quando tem valor (.filled via JS) ou uma option nao-vazia selecionada.
   NAO usar :not(:placeholder-shown) em select (sempre verdadeiro -> label subia mesmo vazio). */
.form-group select.filled + label,
.form-group input:not(:placeholder-shown) + label {
  top: 12px;
  font-size: 0.75rem;
}

/* placeholder invisível */
.form-group input::placeholder {
  opacity: 0;
}

.cadastro-form input:focus, .cadastro-form select:focus {
  border-color: var(--hover-red);
}

/* Harmoniza a cor de TODOS os campos do cadastro (evita CPF branco / cores divergentes) */
.cadastro-form .form-group input,
.cadastro-form .form-group select,
.cadastro-form .form-group textarea {
    background: var(--gray) !important;
}
.cadastro-form .form-group input:focus,
.cadastro-form .form-group select:focus {
    background: #fff !important;
}
/* CPF valido (verificado) -> borda verde sutil + msg verde */
/* Regras de senha: verde quando cumprida, vermelho quando nao */
.regra-ok { color: var(--lv-sucesso) !important; }
.regra-no { color: var(--hover-red, var(--lv-cta)) !important; }

/* Dica sutil abaixo de um campo (ex: Apelido usado nos lances) */
.form-group .campo-dica {
  display: block;
  font-size: 0.72rem;
  color: #8a94a3;
  margin-top: 4px;
}
.form-group.ok .campo-dica, .form-group.erro .campo-dica { color: #8a94a3; }

/* Aceite dos termos obrigatorio -> destaque quando tenta enviar sem marcar */
.termos-box.termos-erro {
  border: 1px solid var(--hover-red, var(--lv-cta));
  border-radius: 8px;
  padding: 10px 12px;
  background: #fef2f2;
  animation: termos-shake .35s ease;
}
.termos-box.termos-erro .checkbox-termos span { color: var(--hover-red, var(--lv-cta)); }
@keyframes termos-shake { 0%,100%{transform:translateX(0)} 25%{transform:translateX(-4px)} 75%{transform:translateX(4px)} }

/* Campo CARREGANDO (verificando CPF no servidor) -> spinner na msg */
.form-group.carregando .erro-msg { display:block; color:#6b7280; }
.form-group.carregando .erro-msg::before {
  content:''; display:inline-block; width:11px; height:11px; margin-right:6px; vertical-align:-1px;
  border:2px solid #cbd5e1; border-top-color:var(--lv-primaria); border-radius:50%; animation: cpfspin .7s linear infinite;
}
@keyframes cpfspin { to { transform: rotate(360deg); } }

/* Campo VALIDADO (ex: CPF ok) -> tudo verde, com check */
.form-group.ok input, .form-group.ok select { border-color: var(--lv-sucesso) !important; background: var(--lv-sucesso-bg) !important; }
.form-group.ok input:focus, .form-group.ok select:focus { background: var(--lv-sucesso-bg) !important; }
.form-group.ok label { color: var(--lv-sucesso) !important; }
.form-group.ok .erro-msg { display:block; color:var(--lv-sucesso); font-weight:600; }
.form-group.ok .erro-msg::before { content:'\2713 '; font-weight:700; }

/* -- ESTILO DE ERRO -- */
.form-group.erro input,
.form-group.erro select {
    border-color: var(--hover-red) !important;
}

.form-group.erro label {
    color: var(--hover-red) !important;
}

.form-group .erro-msg {
    font-size: 0.75rem;
    color: var(--hover-red);
    margin-top: 4px;
    display: none;
}

/* mostrar mensagem quando tiver erro */
.form-group.erro .erro-msg {
    display: block;
}

/* ícone X */
.form-group .erro-icon {
    position: absolute;
    right: 12px;
    top: 16px;   /* centro do input (~51px alt, icone 20px -> (51-20)/2). Antes 26px = descia ~10px */
    transform: none;
    background: var(--hover-red);
    width: 20px;
    height: 20px;
    border-radius: 100px;
    color: #fff;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
}
/* nos campos com olhinho, afasta o X pra nao colidir */
.senha-group .erro-icon { right: 40px; }

/* Quando o campo estiver em erro e vazio, a label deve descer */
.form-group.erro input:placeholder-shown + label {
    top: 26px;
    -webkit-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 1rem;
    color: var(--hover-red);
}

.form-group.erro select.empty + label {
    top: 35%;
    -webkit-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 1rem;
    color: var(--hover-red);
}

.form-row {
  display: flex;
  gap: 12px;
  align-items: flex-start;   /* inputs alinham pelo TOPO (dica/erro embaixo nao desalinham o par) */
}
.form-row > .form-group { flex: 1 1 0; min-width: 0; }

/* ICON RIGHT (atualizar CEP) */
.icon-right {
  position: relative;
}

.icon-right .icon {
  position: absolute;
  right: 10px;
  top: 50%;
  translate: 0 -50%;
}

/* SENHA */
.senha-group {
  position: relative;
}

.senha-group input {
  padding-right: 42px !important;   /* espaco p/ o olhinho nao cobrir o texto */
}
.senha-toggle {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  translate: 0 -50%;
  cursor: pointer;
  touch-action: manipulation;
  opacity: .5;
  line-height: 0;
  color: #4b5563;
  user-select: none;
  transition: opacity .15s;
  z-index: 4;
  display: inline-flex;
  align-items: center;
}
.senha-toggle svg { display: block; }
.senha-toggle:hover, .senha-toggle.ativo { opacity: 1; }

/* REGRAS DA SENHA */
.senha-regras {
  margin-top: 10px;
  list-style: none;
}

.senha-regras li {
  font-size: 0.9rem;
  margin-bottom: 6px;
  color: #8a94a3;   /* neutro por padrao; fica verde/vermelho via .regra-ok/.regra-no */
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.senha-regras li .regra-ic { flex-shrink: 0; }

/* TITULOS DAS SEÇÕES */
.secao-titulo {
  font-size: 1rem;
  margin-bottom: 4px;
  font-weight: 600;
}

.secao-desc {
  font-size: 0.85rem;
  color: var(--gray-dark);
  margin-bottom: 14px;
}

/* DIVIDER */
.form-divider {
  border: none;
  height: 1px;
  background: #e0e0e0;
  margin: 22px 0;
}

/* INTERESSES (TAGS) */
.interesses {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0 20px;
}

.tag {
  padding: 8px 16px;
  background: #ebebeb;
  border: 1px solid #dadada;
  border-radius: 8px;
  font-size: 0.88rem;
  cursor: pointer;
  touch-action: manipulation;
}

.tag.ativo {
  background: var(--accent-color);
  border-color: var(--accent-color);
  color: var(--white);
}

/* RADIO LIST */
.opcoes-radio {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 0;
  margin: 15px 0;
}

.opcoes-radio label {
  display: flex;
  align-items: center;
  gap: 6px;
}

/* TERMOS */
.termos-box {
  border: 1px solid #ddd;
  padding: 10px;
  background: #fafafa;
  border-radius: 10px;
  margin: 10px 0;
}

.checkbox-termos {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.checkbox-termos a {
  color: red;
  text-decoration: none;
}

.campos-obrigatorios {
  font-size: 0.8rem;
  color: var(--dark) !important;
  margin-top: 8px;
}

/* BOTÃO FINAL */
.btn-salvar {
  width: 100%;
  background: var(--green);
  color: white;
  padding: 15px;
  font-size: 1rem;
  border-radius: 12px;
  margin-top: 14px;
  border: none;
  cursor: pointer;
  touch-action: manipulation;
  font-weight: 600;
}

.btn-salvar:hover {
  background: #0d6d59;
}

@media (min-width: 600px) {

  .cadastro-card {
    max-width: 860px;
    padding: 30px;
    margin-top: 60px;
  }

  /* Form rows lado a lado */
  .form-row {
    display: flex;
    flex-direction: row;
    gap: 16px;
  }

  .senha-regras {
    display: flex; 
    gap: 15px;
  }

  .form-row .form-group {
    flex: 1;
  }

  /* Interesse: quebrar linha se necessário */
  .interesses {
    gap: 12px;
  }

  .tag {
    flex-shrink: 0;
  }

  /* Origem: mais colunas em telas maiores */
  .opcoes-radio {
    grid-template-columns: repeat(4, 1fr);
  }

  .btn-salvar {
    width: 40%;
  }

  .tipo-pessoa {
    width: 50%;
    margin: 0 auto;
  }

}


/* ============================================================
   ORIGEM: views/fale.phtml
   ============================================================ */

/* ════ RESET & BASE — Fale Conosco ════ */
    /* * e body removidos: estilos base já definidos globalmente no css.css */
    .fc-banner-wrap a, .fc-main a { text-decoration: none; color: inherit; }

    /* ════ BANNER ════ */
    .fc-banner-wrap {
      max-width: 1100px;
      margin: 150px auto 0;
      padding: 0 24px;
    }
    .fc-banner {
      border-radius: 16px;
      height: 180px;
      background: url('/views/imagens/como-funciona-jmk.jpg') center center / cover no-repeat;
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
    }
    .fc-banner::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, rgba(11,74,62,0.90) 0%, rgba(20,147,123,0.68) 54%, rgba(64,181,158,0.28) 100%);
      z-index: 1;
    }
    .fc-banner__inner {
      position: relative;
      z-index: 2;
      width: 100%;
      padding: 20px 28px 22px;
    }
    .fc-banner__breadcrumb {
      font-size: 11px;
      color: rgba(255,255,255,0.75);
      margin-bottom: 8px;
    }
    .fc-banner__breadcrumb a { color: rgba(255,255,255,0.75); }
    .fc-banner__breadcrumb a:hover { color: #fff; }
    .fc-banner__breadcrumb span { margin: 0 5px; }
    .fc-banner__title {
      font-size: 26px;
      font-weight: 700;
      color: #fff;
      text-shadow: 0 2px 8px rgba(0,0,0,0.3);
    }

    /* ════ CONTEÚDO PRINCIPAL ════ */
    .fc-main {
      max-width: 1100px;
      margin: 0 auto;
      padding: 56px 24px 64px;
    }

    /* ════ LAYOUT ÚNICO ════ */
    .fc-grid {
      max-width: 560px;
    }

    /* ════ LADO ESQUERDO ════ */
    .fc-left__heading {
      font-size: 28px;
      font-weight: 700;
      color: #111827;
      line-height: 1.25;
      margin-bottom: 14px;
    }
    .fc-left__sub {
      font-size: 13.5px;
      color: #6b7280;
      line-height: 1.7;
      margin-bottom: 40px;
    }

    /* ════ BLOCOS DE CONTATO ════ */
    .fc-contact-list {
      display: flex;
      flex-direction: column;
      gap: 28px;
    }
    .fc-contact-item {
      display: flex;
      align-items: flex-start;
      gap: 18px;
    }
    .fc-contact-item__icon-wrap {
      width: 44px;
      height: 44px;
      border-radius: 10px;
      background: #f3f4f6;
      border: 1px solid #e5e7eb;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      font-size: 17px;
      color: var(--lv-primaria);
      transition: background 0.2s, color 0.2s;
    }
    .fc-contact-item:hover .fc-contact-item__icon-wrap {
      background: var(--lv-primaria);
      color: #fff;
    }
    .fc-contact-item__body {}
    .fc-contact-item__label {
      font-size: 11px;
      font-weight: 700;
      color: #9ca3af;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      margin-bottom: 4px;
    }
    .fc-contact-item__value {
      font-size: 14.5px;
      font-weight: 700;
      color: #111827;
      margin-bottom: 2px;
    }
    .fc-contact-item__extra {
      font-size: 13px;
      color: #6b7280;
      margin-top: 2px;
    }
    .fc-contact-item__extra a {
      color: var(--lv-primaria);
      font-weight: 600;
      transition: color 0.2s;
    }
    .fc-contact-item__extra a:hover { color: var(--lv-cta); }

    /* ════ LADO DIREITO — CARDS DE DEPARTAMENTOS ════ */
    .fc-right {}
    .fc-dept-cards {
      display: flex;
      flex-direction: column;
      gap: 14px;
    }
    .fc-dept-card {
      background: #fff;
      border: 1px solid #e5e7eb;
      border-radius: 10px;
      padding: 20px 22px;
      transition: box-shadow 0.2s, transform 0.2s;
    }
    .fc-dept-card:hover {
      box-shadow: 0 4px 18px rgba(0,0,0,0.08);
      -webkit-transform: translateY(-2px);
      transform: translateY(-2px);
    }
    .fc-dept-card__header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 12px;
    }
    .fc-dept-card__icon {
      width: 36px; height: 36px;
      border-radius: 8px;
      background: #f3f4f6;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      color: var(--lv-primaria);
      flex-shrink: 0;
    }
    .fc-dept-card__title {
      font-size: 13.5px;
      font-weight: 700;
      color: #111827;
    }
    .fc-dept-card__links {
      display: flex;
      flex-direction: column;
      gap: 6px;
      padding-left: 48px;
    }
    .fc-dept-card__link {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 13px;
      color: #374151;
    }
    .fc-dept-card__link i {
      font-size: 11px;
      color: #9ca3af;
      width: 14px;
    }
    .fc-dept-card__link a {
      color: var(--lv-primaria);
      font-weight: 600;
      transition: color 0.2s;
    }
    .fc-dept-card__link a:hover { color: var(--lv-cta); }

    /* ════ HORÁRIO — card especial ════ */
    .fc-dept-card--horario .fc-dept-card__links {
      flex-direction: row;
      gap: 20px;
      flex-wrap: wrap;
    }
    .fc-horario-item {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }
    .fc-horario-item__day {
      font-size: 11px;
      color: #9ca3af;
      font-weight: 600;
      text-transform: uppercase;
    }
    .fc-horario-item__time {
      font-size: 13px;
      font-weight: 700;
      color: #111827;
    }

    /* ════ RESPONSIVO ════ */
    @media (max-width: 900px) {
      .fc-grid { grid-template-columns: 1fr; gap: 40px; }
    }
    @media (max-width: 480px) {
      .fc-banner__title { font-size: 20px; }
      .fc-left__heading { font-size: 22px; }
      .fc-main { padding: 36px 16px 48px; }
      .fc-dept-card__links { padding-left: 0; }
      .fc-dept-card--horario .fc-dept-card__links { flex-direction: column; gap: 10px; }
    }


/* ============================================================
   ORIGEM: views/faq.phtml
   ============================================================ */

/* ════ RESET & BASE ════ */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    body { font-family: 'Segoe UI', Arial, sans-serif; background: #f4f5f7; color: #374151; }
    a { text-decoration: none; color: inherit; }

    /* ════ BANNER ════ */
    .fq-banner-wrap {
      max-width: 1100px;
      margin: 150px auto 0;
      padding: 0 24px;
    }
    .fq-banner {
      border-radius: 16px;
      height: 180px;
      background: url('/views/imagens/como-funciona-jmk.jpg') center center / cover no-repeat;
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
    }
    .fq-banner::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, rgba(11,74,62,0.90) 0%, rgba(20,147,123,0.68) 54%, rgba(64,181,158,0.28) 100%);
      z-index: 1;
    }
    .fq-banner__inner {
      position: relative;
      z-index: 2;
      width: 100%;
      padding: 20px 28px 22px;
    }
    .fq-banner__breadcrumb {
      font-size: 11px;
      color: rgba(255,255,255,0.75);
      margin-bottom: 8px;
    }
    .fq-banner__breadcrumb a { color: rgba(255,255,255,0.75); }
    .fq-banner__breadcrumb a:hover { color: #fff; }
    .fq-banner__breadcrumb span { margin: 0 5px; }
    .fq-banner__title {
      font-size: 26px;
      font-weight: 700;
      color: #fff;
      text-shadow: 0 2px 8px rgba(0,0,0,0.3);
      margin-bottom: 4px;
    }
    .fq-banner__sub {
      font-size: 12px;
      color: rgba(255,255,255,0.80);
    }

    /* ════ CONTATOS ════ */
    .fq-contacts-wrap {
      background: #fff;
      border-bottom: 1px solid #e5e7eb;
    }
    .fq-contacts {
      max-width: 1100px;
      margin: 0 auto;
      padding: 40px 24px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
    }
    .fq-contact-card {
      border: 1px solid #e5e7eb;
      border-radius: 10px;
      padding: 20px 18px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      transition: box-shadow 0.2s, transform 0.2s;
    }
    .fq-contact-card:hover {
      box-shadow: 0 4px 16px rgba(0,0,0,0.08);
      -webkit-transform: translateY(-2px);
      transform: translateY(-2px);
    }
    .fq-contact-card__icon {
      font-size: 20px;
      color: var(--lv-primaria);
      margin-bottom: 4px;
    }
    .fq-contact-card__title {
      font-size: 13px;
      font-weight: 700;
      color: #111827;
    }
    .fq-contact-card__desc {
      font-size: 12px;
      color: #6b7280;
      line-height: 1.5;
    }
    .fq-contact-card__link {
      font-size: 12.5px;
      font-weight: 600;
      color: var(--lv-primaria);
      margin-top: 4px;
      transition: color 0.2s;
    }
    .fq-contact-card__link:hover { color: var(--lv-cta); }

    /* ════ SEÇÃO FAQ ════ */
    .fq-section {
      max-width: 1100px;
      margin: 0 auto;
      padding: 48px 24px 8px;
    }
    .fq-section__heading {
      font-size: 22px;
      font-weight: 700;
      color: #111827;
      margin-bottom: 6px;
    }
    .fq-section__sub {
      font-size: 13px;
      color: #9ca3af;
      margin-bottom: 24px;
    }

    /* ════ ACCORDION ════ */
    .fq-acc-list {
      display: flex;
      flex-direction: column;
      gap: 0;
      margin-bottom: 40px;
    }
    .fq-acc-item {
      border: 1px solid #e5e7eb;
      border-radius: 0;
      background: #fff;
      overflow: hidden;
      transition: box-shadow 0.2s;
      margin-top: -1px; /* sobreposição de bordas */
    }
    .fq-acc-item:first-child { border-radius: 8px 8px 0 0; }
    .fq-acc-item:last-child  { border-radius: 0 0 8px 8px; }
    .fq-acc-item:only-child  { border-radius: 8px; }
    .fq-acc-item.open {
      z-index: 1;
      position: relative;
      box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    }
    .fq-acc-trigger {
      width: 100%;
      background: none;
      border: none;
      padding: 15px 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      cursor: pointer;
      touch-action: manipulation;
      font-size: 13.5px;
      font-weight: 500;
      color: #374151;
      text-align: left;
      gap: 12px;
      transition: background 0.15s;
    }
    .fq-acc-trigger:hover { background: #fafafa; }
    .fq-acc-item.open .fq-acc-trigger { color: #111827; font-weight: 600; }
    .fq-acc-trigger__icon {
      font-size: 13px;
      color: var(--lv-cta);
      transition: transform 0.3s;
      flex-shrink: 0;
    }
    .fq-acc-item.open .fq-acc-trigger__icon { transform: rotate(180deg); }
    .fq-acc-body {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease;
    }
    .fq-acc-body__inner {
      padding: 4px 18px 18px 18px;
      font-size: 13px;
      color: #374151;
      line-height: 1.75;
      border-top: 1px solid #f3f4f6;
      padding-top: 14px;
    }

    /* ════ RESPONSIVO ════ */
    @media (max-width: 900px) {
      .fq-contacts { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 480px) {
      .fq-banner-wrap { padding: 0 12px; }
      .fq-banner__title { font-size: 20px; }
      .fq-contacts { grid-template-columns: 1fr; padding: 28px 16px; }
      .fq-section { padding: 32px 16px 8px; }
    }


/* ============================================================
   ORIGEM: views/login.phtml
   ============================================================ */

/* Container geral */
.login-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh; /* fallback iOS */
    height: 100dvh; /* fallback iOS Safari */
  height: 100dvh;
}

.login-container {
  width: 100%;
  max-width: 500px;
  padding: 30px;
}

.login-image-side {
  display: none; /* Esconde no mobile */
}

/* Card de login */
.login-card {
  padding: 40px 25px;
  width: 100%;
  max-width: 400px;
}

/* Logo */
.login-logo {
  height: 40px;
  margin-bottom: 25px;
}

/* Títulos */
.login-title {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 5px;
  color: var(--dark);
}

.login-subtitle {
  font-size: 14px;
  color: var(--dark);
  margin-bottom: 25px;
}
/* ── iOS: reset de aparência nativa em formulários (escopo: página lote) ── */
/* Nota: NÃO aplicar globalmente — quebra radio/checkbox nativos em outras páginas */
.page-lote input:not([type=radio]):not([type=checkbox]),
.page-lote select,
.page-lote button,
.page-lote textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* Formulário */
.login-form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

/* Inputs */
.login-input-group {
  position: relative;
  margin-bottom: 20px;
}

.login-input {
  width: 100%;
  padding: 21px 16px 16px;
  padding-right: 40px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 5px;
  background: var(--gray);
  font-style: normal;
  outline: none;
  transition: border 0.3s ease;
}

.login-input:focus {
  border: 2px solid red;
}

.login-input + label {
  position: absolute;
  left: 16px;
  top: 18px;
  font-size: 16px;
  color: #888;
  pointer-events: none;
  padding: 0 4px;
  transition: all 0.2s ease;
}

.login-input:focus + label,
.login-input:not(:placeholder-shown) + label {
  top: 5px;
  left: 12px;
  font-size: 12px;
  color: red;
}

.login-input::placeholder {
  color: transparent;
}

.toggle-password {
  position: absolute;
  right: 12px;
  top: 30px;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  touch-action: manipulation;
  color: #777;
}

/* Lembrar + link */
.login-options {
  display: flex;
  flex-direction: column;
  align-items: start;
  font-size: 14px;
  color: var(--gray);
}


.login-forgot {
  font-size: 14px;
  color: var(--gray);
  text-decoration: underline;
}

/* Botão */
.login-submit {
  background-color: var(--green);
  color: var(--white);
  padding: 12px;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  touch-action: manipulation;
  margin-top: 10px;
}

/* Cadastro */
.login-register {
  margin-top: 20px;
  font-size: 14px;
}

.login-register a {
  color: var(--green);
  font-weight: 700;
  font-size: 22px;
  text-decoration: underline;
}

/* Campo com erro */
.login-input.error {
  border-color: red;
}

/* Label quando erro */
.login-input.error + label {
  color: red;
}

/* Ícone de erro */
.input-error-icon {
  position: absolute;
  right: 12px;
  top: 40%;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: red;
  font-size: 18px;
  display: none;
}

.input-error-icon-senha {
  position: absolute;
  right: 35px;
  top: 40%;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: red;
  font-size: 18px;
  display: none;
}

/* Mostrar ícone quando erro */
.login-input.error ~ .input-error-icon {
  display: block;
}

/* Mostrar ícone quando erro */
.login-input.error ~ .input-error-icon-senha {
  display: block;
}

/* Texto de erro */
.input-error-text {
  color: red;
  font-size: 12px;
  margin-top: 4px;
  display: none;
}

/* Mostrar texto quando erro */
.login-input.error ~ .input-error-text {
  display: block;
}

@media (min-width: 1026px) {
  .login-wrapper {
    padding: 0;
  }

  .login-container {
    display: flex;
    flex-direction: row;
    max-width: none;
    height: 100vh; /* fallback iOS */
    height: 100dvh; /* fallback iOS Safari */
    height: 100dvh;
    box-shadow: none;
    border-radius: 0;
    background: var(--white);
    padding: 0;
  }

  .login-image-side {
    display: block;
    width: 50%;
    height: 100%;
  }

  .login-image-side img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    object-position: right;
  }

  .login-card {
    width: 50%;
    padding: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 600px;
    margin: 0 auto;
  }

  .login-logo {
    width: 30%;
    height: auto;

  }
}


/* ============================================================
   ORIGEM: views/z_footer.phtml
   ============================================================ */

.site-footer {
  background-color: var(--primary-color);
  color: var(--white);
  padding: 30px 20px;
  font-size: 14px;
  border-radius: 16px 16px 0 0;
  position: relative;
  z-index: 1;
}

.site-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('/views/imagens/bg-footer.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
}

.footer-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 20px;
}

.accordion-item {
  
}

.accordion-btn {
  background: none;
  border: none;
  color: var(--white);
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  width: 100%;
  padding: 15px 0;
  cursor: pointer;
  touch-action: manipulation;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.accordion-btn i {
  color: var(--gray-dark);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.accordion-content ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 0;
  list-style: none;
}

.accordion-content ul li a {
  color: var(--white);
  text-decoration: none;
  font-size: 14px;
}

.accordion-item.open .accordion-content {
  max-height: 300px;
}

.footer-about {
  margin: 20px auto !important;
}

.footer-about p {
  margin-bottom: 10px;
  line-height: 1.6;
}

.footer-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 20px;
}

.footer-contact .logo {
  width: 250px;
  margin-bottom: 10px;
  height: auto;
}

.contact-info p {
  margin: 5px 0;
}

.footer-logos img {
     width: 150px;
    height: 100%;
}

.footer-logos {
    display: flex;
    align-items: flex-end;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.footer-bottom {
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  padding-top: 15px;
  font-size: 12px;
}

.overlay {
  position: fixed;
    /* overlay cobre tela toda — safe-area aplicada via conteúdo interno */
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh; /* fallback iOS */
    height: 100dvh; /* fallback iOS Safari */
  height: 100dvh;
  background-color: rgba(0, 0, 0, 0.5); /* Escuro translúcido */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  z-index: 1005; /* abaixo do side-menu (z-index: 999) */
}

.overlay.active {
  opacity: 1;
  pointer-events: all;
}

@media (min-width: 600px) {
  .footer-container {
    max-width: 600px;
    margin: 0 auto;
  }
  .footer-flex {
    display: flex;
    margin-top: 30px;
  }
  .footer-contact {
    width: 70%;
  }
  .footer-bottom {
    text-align: start;
    margin-top: 15px;
    width: 100%;
  }
  .footer-logos {
    flex-direction: column;
    width: 30%;
    justify-content: center;
  }
  .footer-logos img {
    height: auto;
  }
}

@media (min-width: 850px) {
  .footer-container {
    max-width: 850px;
    margin: 0 auto;
  }
}

.footer-links-grid {
  display: none;
}

@media (min-width: 1024px) {
  .footer-container{
    max-width: 1140px;
    margin: auto;
  }
  .footer-links {
    display: none;
  }
  .footer-container-links-sobre {
    display: flex;
    gap: 40px;
    width: 100%;
  }
  .footer-links-grid {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    gap: 40px;
    width: 70%;
  }

  .footer-col {
    flex: 1 1 180px;
  }

  .footer-col h4 {
    font-weight: bold;
    margin-bottom: 10px;
    color: var(--white);
    font-size: 15px;
  }

  .footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .footer-col ul li {
    margin-bottom: 8px;
  }

  .footer-col ul li a {
    color: var(--white);
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s ease;
  }

  .footer-col ul li a:hover {
    color: var(--gray-light);
  }

  .footer-about {
    width: 30%;
    margin: 0 !important;
    color: var(--white);
    font-size: 14px;
    line-height: 1.6;
  }

  .footer-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 10px;
    margin-top: 30px;
  }
  .footer-contact {
    width: 100%;
  }

  .footer-logos {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: max-content;
    align-items: flex-end;
  }

  .footer-logos img {
    height: auto;
    max-width: 150px;
  }

  .footer-bottom {
    text-align: start;
    font-size: 12px;
    color: var(--white);
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 15px;
  }

  .contact-info p {
    color: var(--white);
    margin-bottom: 10px;
    font-size: 14px;
    display: flex;
    gap: 15px;
  }

  .footer-contact-flex {
    display: flex;
    gap: 20px;
  }

  .footer-contact .logo {
    width: 200px;
    margin-bottom: 10px;
    height: fit-content;
  }

  .q-icon {
    color: var(--white);
  }
}


/* ============================================================
   ORIGEM: views/z_top.phtml
   ============================================================ */

/* Início Banner */
.banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.banner__wrapper {
  position: relative;
}

.banner__slide {
  display: none;
  width: 100%;
}

.banner__slide img {
  width: 100%;
  height: auto;
  display: block;
}

.banner__slide.active {
  display: block;
}

.banner__prev,
.banner__next {
  opacity: 0.5;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #fff;
  padding: 8px 12px;
  cursor: pointer;
  touch-action: manipulation;
  font-size: 32px;
  z-index: 10;
  font-weight: bold;
}

.banner__prev {
  left: 10px;
}

.banner__next {
  right: 10px;
}

.banner__pagination {
  position: absolute;
  bottom: 10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
}

.banner__pagination span {
  display: block;
  width: 25px;
  height: 4px;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 2px;
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.3s;
  opacity: 0.5;
}

.banner__pagination span.active {
  background: #fff;
}

/*Fim banner*/


/* ============================================================
   ORIGEM: app/Ajax/Boxs/dlance.php
   ============================================================ */

/* ════ BX-DLANCE — Confirmação de Lance ════ */
.bx-dl { padding: 2px 0 0; font-family: inherit; }

.bx-dl__rows {
    background: #f4f5f7;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 14px;
    border: 1px solid #e5e7eb;
}
.bx-dl__row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    border-bottom: 1px solid #e5e7eb;
}
.bx-dl__row:last-child { border-bottom: none; }
.bx-dl__lbl {
    color: #9ca3af;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.bx-dl__val {
    color: #374151;
    font-size: 13px;
    font-weight: 700;
}

.bx-dl__total {
    background: linear-gradient(135deg, var(--lv-primaria) 0%, var(--lv-primaria-hover) 100%);
    border-radius: 10px;
    padding: 18px 16px;
    text-align: center;
    margin-bottom: 12px;
}
.bx-dl__total-lbl {
    color: rgba(255,255,255,.6);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 6px;
}
.bx-dl__total-val {
    color: #fff;
    font-size: 30px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.01em;
}

.bx-dl__note {
    color: #9ca3af;
    font-size: 11px;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 14px;
}

.bx-dl__actions { display: flex; flex-direction: column; gap: 8px; }

.bx-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    padding: 13px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    cursor: pointer;
    touch-action: manipulation;
    border: 2px solid transparent;
    transition: all .18s ease;
    font-family: inherit;
    line-height: 1;
}
.bx-btn i { font-size: 16px; }

.bx-btn-green { background: var(--lv-sucesso); color: #fff; border-color: var(--lv-sucesso); }
.bx-btn-green:hover { background: var(--lv-sucesso-hover); border-color: var(--lv-sucesso-hover); }

.bx-btn-red { background: #fff; color: var(--lv-cta); border-color: var(--lv-cta); }
.bx-btn-red:hover { background: var(--lv-cta); color: #fff; }


/* ============================================================
   ORIGEM: app/Ajax/Boxs/llance.php
   ============================================================ */

/* ════ BX-SIM — Simulação de Valor ════ */
.bx-sim { padding: 2px 0 0; font-family: inherit; }

.bx-sim__badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: #eff6ff; color: var(--lv-primaria);
    font-size: 11px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .05em; padding: 5px 10px; border-radius: 20px;
    margin-bottom: 14px;
}
.bx-sim__badge i { font-size: 11px; }

.bx-sim__rows {
    background: #f4f5f7; border-radius: 10px;
    overflow: hidden; margin-bottom: 14px;
    border: 1px solid #e5e7eb;
}
.bx-sim__row {
    display: flex; justify-content: space-between; align-items: center;
    padding: 10px 14px; border-bottom: 1px solid #e5e7eb;
}
.bx-sim__row:last-child { border-bottom: none; }
.bx-sim__lbl { color: #9ca3af; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.bx-sim__val { color: #374151; font-size: 13px; font-weight: 700; }

.bx-sim__total {
    background: linear-gradient(135deg, var(--lv-primaria) 0%, var(--lv-primaria-hover) 100%);
    border-radius: 10px; padding: 18px 16px;
    text-align: center; margin-bottom: 12px;
}
.bx-sim__total-lbl {
    color: rgba(255,255,255,.6); font-size: 10px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .1em; margin-bottom: 6px;
}
.bx-sim__total-val { color: #fff; font-size: 30px; font-weight: 900; line-height: 1; }

.bx-sim__note {
    color: #9ca3af; font-size: 11px; text-align: center;
    line-height: 1.6; padding: 0 8px;
}
.bx-sim__note i { color: #f59e0b; margin-right: 4px; }


/* ============================================================
   ORIGEM: app/Ajax/Boxs/lance.php
   ============================================================ */

/* ════ BX-HB — Confirmação com Frete/Vistoria ════ */
.bx-hb { padding: 2px 0 0; font-family: inherit; }
.bx-hb__rows {
    background: #f4f5f7; border-radius: 10px;
    overflow: hidden; margin-bottom: 14px;
    border: 1px solid #e5e7eb;
}
.bx-hb__row {
    display: flex; justify-content: space-between; align-items: center;
    padding: 9px 14px; border-bottom: 1px solid #e5e7eb;
}
.bx-hb__row:last-child { border-bottom: none; }
.bx-hb__lbl { color: #9ca3af; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.bx-hb__val { color: #374151; font-size: 13px; font-weight: 700; }
.bx-hb__total {
    background: linear-gradient(135deg, var(--lv-primaria) 0%, var(--lv-primaria-hover) 100%);
    border-radius: 10px; padding: 18px 16px;
    text-align: center; margin-bottom: 12px;
}
.bx-hb__total-lbl {
    color: rgba(255,255,255,.6); font-size: 10px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .1em; margin-bottom: 6px;
}
.bx-hb__total-val { color: #fff; font-size: 30px; font-weight: 900; line-height: 1; }
.bx-hb__note { color: #9ca3af; font-size: 11px; text-align: center; line-height: 1.6; margin-bottom: 14px; }
.bx-hb__actions { display: flex; flex-direction: column; gap: 8px; }
.bx-hb-btn {
    display: flex; align-items: center; justify-content: center; gap: 9px;
    width: 100%; padding: 13px 16px; border-radius: 8px;
    font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
    cursor: pointer; border: 2px solid transparent;
    touch-action: manipulation;
    transition: all .18s ease; font-family: inherit; line-height: 1;
    text-decoration: none; box-sizing: border-box;
}
.bx-hb-btn i { font-size: 16px; }
.bx-hb-btn-green { background: var(--lv-sucesso); color: #fff; border-color: var(--lv-sucesso); }
.bx-hb-btn-green:hover { background: var(--lv-sucesso-hover); border-color: var(--lv-sucesso-hover); }
.bx-hb-btn-red { background: #fff; color: var(--lv-cta); border-color: var(--lv-cta); }
.bx-hb-btn-red:hover { background: var(--lv-cta); color: #fff; }


/* ============================================================
   ORIGEM: app/Ajax/Boxs/dlancenl2.php
   ============================================================ */

/* ════ BX-NL2 — Não logado · Lance ════ */
/* Reutiliza as classes bx-nl definidas em dlancenl.php;
   redefine aqui para garantir independência do arquivo */
.bx-nl { padding: 8px 0 4px; text-align: center; font-family: inherit; }
.bx-nl__icon {
    width: 56px; height: 56px; background: #fef3c7; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 14px;
}
.bx-nl__icon i { color: #f59e0b; font-size: 24px; }
.bx-nl__title { color: #111827; font-size: 16px; font-weight: 700; margin-bottom: 8px; }
.bx-nl__text {
    color: #6b7280; font-size: 13px; line-height: 1.6; margin-bottom: 20px;
    max-width: 280px; margin-left: auto; margin-right: auto;
}
.bx-nl__actions { display: flex; flex-direction: column; gap: 8px; }
.bx-nl-btn {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    width: 100%; padding: 13px 16px; border-radius: 8px;
    font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
    text-decoration: none; border: 2px solid transparent;
    transition: all .18s ease; font-family: inherit; cursor: pointer;
    touch-action: manipulation;
    line-height: 1; box-sizing: border-box;
}
.bx-nl-btn i { font-size: 15px; }
.bx-nl-btn-green { background: var(--lv-sucesso); color: #fff; border-color: var(--lv-sucesso); }
.bx-nl-btn-green:hover { background: var(--lv-sucesso-hover); border-color: var(--lv-sucesso-hover); }
.bx-nl-btn-out { background: #fff; color: var(--lv-primaria); border-color: var(--lv-primaria); }
.bx-nl-btn-out:hover { background: #f4f5f7; }

/* ============================================================
   ORIGEM: views/index.phtml
   ============================================================ */


/* Reset & Base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: var(--font-principal);
}
/* 
body {
  padding-top: 35px;
} */

/* 🔔 Aviso Rotativo */
.aviso-bar {
  background-color: var(--primary-color);
  color: var(--white);
  height: 36px;
  overflow: hidden;
  position: fixed;
    padding-top: env(safe-area-inset-top);
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1001; /* acima do header */
}

.aviso-container {
  position: relative;
  height: 100%;
}

.aviso-item {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 1s ease-in-out;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 100%;
  justify-content: center;
  /* nao deixa transbordar as laterais em telas estreitas */
  max-width: 100vw;
  padding: 0 12px;
  box-sizing: border-box;
}

.aviso-item img {
  height: 16px;
  object-fit: contain;
}

.aviso-item.active {
  opacity: 1;
  z-index: 1;
}

.aviso-item span {
    font-weight: 600;
    /* fonte fluida: encolhe em telas estreitas p/ caber o texto numa linha so.
       min 8px, ~3vw acompanha a largura, max 16px (desktop). */
    font-size: clamp(8px, 3vw, 16px);
    white-space: nowrap;
    overflow: visible;
}

/* 🔷 Header */
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px;
  background-color: var(--white);
  border-bottom: 1px solid #ddd;
  position: fixed;
  top: 36px;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.header-right {
    display: flex;
    align-items: center;
}

.logo {
  height: 30px;
}

.btn-login {
  background-color: var(--primary-color);
  color: var(--white);
  border: none;
  padding: 10px 14px;
  border-radius: 5px;
  cursor: pointer;
  touch-action: manipulation;
  font-weight: 600;
  line-height: 1.375rem;
  font-size: 14px;
  display: flex;
  align-items: center;
}

.menu-btn {
  background: none;
  border: none;
  font-size: 24px;
  margin-left: 12px;
  cursor: pointer;
  touch-action: manipulation;
    color: var(--primary-color);
}

/* 📱 Menu Lateral */
.side-menu {
  position: fixed;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
  top: 0;
  right: -320px;
  width: 320px;
  height: 100%;
  background-color: var(--white);
  box-shadow: -2px 0 6px rgba(0,0,0,0.2);
  padding: 20px;
  transition: right 0.3s ease-in-out;
  z-index: 1006;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.side-menu.open {
  right: 0;
}

.side-menu-header {
display: flex;
    justify-content: start;
    gap:10px;
    align-items: center;
    margin: 40px 0 0;
    border-bottom: 1px solid rgb(238, 238, 238);
    padding-bottom: 10px;
}

.btn-cadastrar, .btn-login.green {
  padding: 14px 12px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  touch-action: manipulation;
  font-weight: 600;
  font-size: 14px;
}

.btn-cadastrar {
  background-color: transparent;
  border: 1px solid var(--primary-color);
  color: var(--primary-color);
  line-height: 1.375rem;
}

.btn-cadastrar:hover {
    background-color: var(--primary-color);
    color: var(--white);
}

.btn-login.green {
  background-color: var(--green);
  color: var(--white);
}

.btn-login.green:hover {
    opacity: 0.8;
}

.close-btn {
  background: none;
  border: none;
  font-size: 20px;
}

/* 🧭 Menu Interno */
.menu-list {
  display: flex;
  flex-direction: column;
  list-style: none;
  border-bottom: 1px solid rgb(238, 238, 238);
  gap: 25px;
  padding-bottom: 16px;
}



.menu-list p {
    color: var(--gray-dark);
    padding-top: 16px;
}

.menu-item {
  font-size: 16px;
  cursor: pointer;
  touch-action: manipulation;
}

.menu-item a {
  color: #374151;
}

.menu-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.menu-title i {
  transition: transform 0.3s ease;
}

.menu-item.has-submenu .submenu {
  display: none;
  list-style: none;
  padding-left: 15px;
  font-size: 14px;
}

.menu-item.has-submenu.open .submenu {
  display: flex;
  flex-direction: column;
}

/* Submenu com transição */
.submenu {
  overflow: hidden;
  max-height: 0;
  transition: max-height 1s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

/* Submenu aberto */
.menu-item.open .submenu {
  max-height: 1000px; /* suficiente para conter o conteúdo */
}

.submenu.leilao-mobile {
  list-style: none;
  padding: 0 0 0 10px;
  margin: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.evento-leilao {
  background: #fff;
  padding: 0;
  border: none;
  border-radius: 0;
  font-size: 14px;
}

.evento-leilao strong {
  display: block;
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 6px;
  color: var(--dark);
  line-height: 1.25;
}

/* infos empilhadas ABAIXO do nome (nome em cima, infos embaixo) */
.evento-leilao a {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0;
}
.evento-leilao .info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 12px;
  color: #666;
  font-size: 12.5px;
}
.evento-leilao .info + .info { margin-top: 4px; }
.evento-leilao .info i {
  margin-right: 4px;
}

.evento-leilao .lotes {
  background: #eee;
  font-weight: 500;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: 12px;
}

.submenu-comprar .submenu {
  list-style: none;
  padding-left: 10px;
  margin: 10px 0;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s ease;
}

.submenu-comprar.open .submenu {
  max-height: 1000px;
}

.submenu-comprar .submenu a {
  padding: 12px 0;
}

.submenu-comprar .submenu li a {
  text-decoration: none;
  color: var(--dark);
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.submenu-comprar .submenu li i {
  width: 20px;
  font-size: 16px;
  opacity: 0.7;
}

.submenu-comprar .submenu li .badge {
  background: #eee;
  font-weight: 500;
  border-radius: 6px;
  padding: 2px 6px;
  font-size: 13px;
  color: var(--gray-dark);
  margin-left: auto;
}


/* VISIBILIDADE POR DISPOSITIVO */
.desktop-only {
  display: none;
}
/* ── iOS: reset de aparência nativa em formulários (escopo: página lote) ── */
/* Nota: NÃO aplicar globalmente — quebra radio/checkbox nativos em outras páginas */
.page-lote input:not([type=radio]):not([type=checkbox]),
.page-lote select,
.page-lote button,
.page-lote textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* Campo de busca */
.header-search {
  display: none;
  flex: 1;
  max-width: 500px;
  position: relative;
  align-self: stretch; /* estica na altura do header p/ o input preencher tudo */
}

.header-search input {
    width: 100%;
    height: 100%; /* preenche a altura total da div .header-search */
    box-sizing: border-box;
    padding: 5px 14px;
    border: 1px solid #ccc;
    border-radius: 10px;
    line-height: normal;
}

.search-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 16px;
  cursor: pointer;
  touch-action: manipulation;
}

/* Menu navegação e botões (desktop) */
.header-nav {
  display: none !important;
  align-items: center;
  gap: 20px;
}

.desktop-menu {
  display: flex;
  gap: 16px;
  height: -webkit-fill-available;  
  position: relative;
}


.desktop-menu a {
  position: relative;
  padding: 6px 8px;
  font-size: 15px;
  font-weight: 500;
  color: var(--dark);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s ease;
  height: -webkit-fill-available; 
}

.desktop-menu a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 8px;
  width: calc(100% - 16px);
  height: 3px;
  background-color: var(--hover-red);
  -webkit-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  border-radius: 4px 4px 0 0;
}

.desktop-menu a:hover, 
.menu-title:hover i,
.menu-title:hover {
  color: var(--hover-red);
}

.desktop-menu a:hover i {
  color: var(--hover-red);
}

.desktop-menu a:hover::after {
  -webkit-transform: scaleX(1);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.desktop-menu i {
  font-size: 11px;
  color: var(--dark);
  transition: color 0.2s ease;
}



.dropdown-toggle {
  position: relative;
  cursor: pointer;
  touch-action: manipulation;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--white);
  max-width: 360px;
  max-height: 70vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #ddd;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  z-index: 9999;
  scrollbar-width: thin;     /* para Firefox: deixa mais “compacto” */
  scrollbar-color: var(--dark) #f0f0f0; /* cor da “thumb” e “track” */
}

/* Para navegadores WebKit (Chrome, Safari) */
.dropdown-menu::-webkit-scrollbar {
  width: 8px;
}

/* Remove os botões da scrollbar (setas) para WebKit */
.dropdown-menu::-webkit-scrollbar-button:single-button {
  display: none !important;
}

/* Também cobre versões genéricas */
.dropdown-menu::-webkit-scrollbar-button {
  display: none !important;
}


.menu-item.open .dropdown-menu {
  display: block;
}

/* ESTADO ATIVO do dropdown (aberto): nome vermelho + seta girada (persiste apos tirar o mouse) */
.menu-item.has-submenu.open > .dropdown-toggle,
.menu-item.has-submenu.open .dropdown-toggle,
.menu-item.has-submenu.open > .dropdown-toggle i,
.menu-item.has-submenu.open .dropdown-toggle i {
  color: var(--lv-cta) !important; /* vermelho da marca */
}
.menu-item.has-submenu.open > .dropdown-toggle i,
.menu-item.has-submenu.open .dropdown-toggle i {
  -webkit-transform: rotate(180deg) !important;
  transform: rotate(180deg) !important;
}
.dropdown-toggle i { transition: transform .3s ease; }

.dropdown-header {
  font-weight: 400;
  font-size: 15px;
  margin-bottom: 8px;
  padding: 16px 16px 6px 16px;
  border-bottom: 1px solid #eee;
}

.dropdown-list {
    list-style: none;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 16px;
}

.dropdown-list li {
  margin-bottom: 10px;
}

.dropdown-list a {
  color: var(--dark);
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.dropdown-footer {
    display: block !important;
    text-align: center;
    padding: 16px !important;
    font-size: 14px !important;
    color: var(--hover-red) !important;
    text-decoration: underline !important;
    border-top: 1px solid rgb(235, 235, 240);
    position: sticky !important;
    bottom: 0 !important;
    background: var(--white);
}

/* Estilo do submenu “Comprar” em grid */
.grid-comprar {
  display: none;
  position: absolute;
  top: 100%;
  left: auto;
  background: var(--white);
  min-width: 400px; /* ajuste conforme necessário */
  max-width: 425px; /* ajuste conforme necessário */
  padding: 16px 24px;
  border: 1px solid #ddd;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  z-index: 9999;
  max-height: 70vh;
}

.dropdown‑header {
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 12px;
  border-bottom: 1px solid #eee;
  padding-bottom: 6px;
  color: var(--dark);
}

.btn‑ver‑todos {
  display: block;
  width: 100%;
  text-align: center;
  background-color: var(--hover-red);
  color: var(--white);
  padding: 10px 0;
  border: none;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 12px;
  cursor: pointer;
  touch-action: manipulation;
}

.dropdown‑grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.dropdown‑grid li a {
  display: flex;
  align-items: start;
  gap: 8px;
  border: 1px solid #eee;
  padding: 8px 10px;
  border-radius: 4px;
  text-decoration: none;
  color: var(--dark);
  font-size: 14px;
  flex-direction: column; 
  width: 150px;
}

.dropdown‑grid li a div {
    display: flex;
    align-items: center;
    gap: 5px;
}

.dropdown‑grid li a img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.dropdown‑grid li a .badge {
  background: #eee;
  color: var(--gray-dark);
  font-size: 12px;
  font-weight: 500;
  padding: 2px 6px;
  border-radius: 6px;
  margin-left: auto;
}



/* Quando o menu está aberto */
.menu-item.has-submenu.open .menu-title i,
.desktop-menu a.open i {
  -webkit-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.auth-buttons {
  display: flex;
  gap: 8px;
}


/* RESPONSIVIDADE DESKTOP */
@media (min-width: 1024px) {
  .desktop-only {
    display: flex !important;
  }

  .header {
    flex-wrap: nowrap;
    gap: 20px;
    padding: 5px 16px;
  }

  .header-right {
    display: none;
  }

  .header-search {
    display: flex;
  }

  .header-nav {
    display: flex !important;
    flex: 1;
    justify-content: flex-end;
    align-items: center;
    font-weight: 600;
  }

  .logo {
    height: 50px;
  }
}
  /* CONTAINER */
.busca-container {
    background: var(--white);
    padding: 16px;
    border-radius: 12px;
    max-width: 1080px;   /* mesma largura dos cards de evento */
    margin: 10px auto;
    font-family: var(--font-principal);
    box-shadow: 0px 5.473px 43.784px 0px rgba(0, 0, 0, 0.05);
}

/* TABS */
.busca-tabs {
    display: flex;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.busca-tab {
    flex: 1;
    padding: 12px;
    background: none;
    border: none;
    cursor: pointer;
    touch-action: manipulation;
    font-size: 0.9rem;
    color: var(--dark);
    border-bottom: 3px solid transparent;
    
}

.busca-tab.active {
    color: var(--primary-color);
    border-bottom-color: var(--primary-color);
}

/* TAB CONTENT */
.busca-tab-content {
  /* REMOVIDO: position, top, left, width */
  transition: opacity 0.25s ease;
  opacity: 1;
}

.busca-tab-content.hidden {
  display: none;
  /* REMOVIDO: opacity, transform, pointer-events */
}

.busca-tab-wrapper {
  position: relative;
  /* REMOVIDO: min-height — agora segue o conteúdo naturalmente */
}



/* INPUT TEXTO */
.busca-input-group {
    border-radius: 10px;
    padding: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--gray);
}

.busca-input {
    width: 100%;
    border: none;
    background: none;
    outline: none;
    line-height: 28px;
    font-style: normal;
    color: var(--dark);
} 

/* LUPA-BOTAO com animacao de deslize (ao focar o input, a lupa desliza p/ a direita virando botao) */
.busca-input-group { position: relative; }
.busca-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    color: #000;               /* mesma cor da lupa do header (preto) */
    background: none;
    font-size: 16px;           /* mesmo tamanho da .search-icon do header */
    transition: left .35s cubic-bezier(.22,.61,.36,1);
}
.busca-icon i { font-weight: 900; }  /* fa-solid, igual ao header */
/* espaco entre o campo de busca (fixo) e o conteudo das abas */
.busca-container .busca-busca-button { margin: 4px 0 22px; }
/* input com espaco a esquerda pra lupa (estado normal) */
.busca-input-group .busca-input { padding-left: 30px; transition: padding .3s ease; }
/* ao FOCAR: a lupa (SO o icone, sem fundo/botao) desliza p/ o canto direito */
.busca-input-group:focus-within .busca-icon {
    left: calc(100% - 26px);
}
.busca-input-group:focus-within .busca-input { padding-left: 4px; padding-right: 34px; }

/* BOTÃO VER LOTES */
.busca-ver-lotes {
    background: var(--green);
    color: white;
    width: 100%;
    padding: 20px 0;
    border-radius: 10px;
    border: none;
    margin: 16px 0;
    font-weight: 600;
    cursor: pointer;
    touch-action: manipulation;
    font-size: 16px;
}

.busca-ver-lotes .badge {
    background: white;
    color: var(--green);
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 400;
}

/* GRID DE CATEGORIAS */
.dropdown‑grid-cate {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.dropdown‑grid-cate li a {
  display: flex;
  align-items: start;
  gap: 8px;
  border: 1px solid #eee;
  padding: 8px 10px;
  border-radius: 4px;
  text-decoration: none;
  color: var(--dark);
  font-size: 14px;
  flex-direction: column; 
  width: 150px;
  transition: 0.2s ease;
}

/* HOVER → borda preta e zoom leve na imagem */
.dropdown‑grid-cate li a:hover {
  border-color: var(--dark);
}

.dropdown‑grid-cate li a:hover img {
  -webkit-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Transição suave na imagem */
.dropdown‑grid-cate li a img {
  width: 42px;
  height: 42px;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.dropdown‑grid-cate li a div {
    display: flex;
    align-items: center;
    gap: 5px;
}

.dropdown‑grid-cate li a img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.dropdown‑grid-cate li a .badge {
  background: var(--gray);
  color: var(--gray-dark);
  font-size: 12px;
  font-weight: 500;
  padding: 2px 6px;
  border-radius: 6px;
  margin-left: auto;
}

.card-grid {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.card-item {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    width: 209px;
}

.card-item img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* Sobreposição com fundo escuro e transparência */
.card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 6px;
    margin: 6px;
    color: var(--white);
    background: hsla(0, 0%, 65.5%, 0.4);
    box-shadow: 0px 5.473px 43.784px 0px rgba(0, 0, 0, 0.05);
    -webkit-backdrop-filter: blur(40px);
    backdrop-filter: blur(40px);
    border-radius: 12px;
}

.card-titulo {
    font-size: 0.85rem;
    font-weight: 600;
    display: block;
    margin-bottom: 4px;
}

.card-categoria {
    font-size: 0.75rem;
    opacity: 0.9;
}

.busca-titulo {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.75rem;
    letter-spacing: 0.00937em;
    margin-bottom: 5px;
}

/* MAIS LANCES */
.lances-grid .lance-card {
    background: var(--gray);
    border-radius: 10px;
    overflow: hidden;
}

.lance-card img {
    width: 100%;
}

.lance-info {
    padding: 10px;
}

.valor-grid {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.valor-btn {
    background: var(--primary-color);
    padding: 16px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    touch-action: manipulation;
    min-width: 209px;
    height: 100px;
    color: var(--white);
    font-size: 18px;
    font-weight: 700;
    align-content: flex-end;
}

@media screen and (min-width: 599px) {
    .dropdown‑grid-cate {
      display:flex;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
    .busca-tab-wrapper {
      /* min-height: 250px; */
    }
    .busca-container {
      max-width: 1200px;   /* MAXW-1200 2026-08-04: era 1080px (pedido gestor) */
    }

}


@media (min-width: 1024px) {
    .busca-tabs {
      width: 40%;
    }
    .busca-busca-button {
      display: flex;
      gap: 15px;
      align-items: center;
    }
    .busca-input-group {
      width: 100%;
      height: fit-content;
    }
    .busca-ver-lotes {
      width: 20%;
    }
}

/* ═══════════════════════════════════════════════════════════════
   SEÇÃO DE EVENTOS / LEILÕES
═══════════════════════════════════════════════════════════════ */
.eventos-section {
  width: 100%;
  padding: 0 0 32px;
}

.evento-bloco {
  background: var(--white, #fff);
  border-radius: 14px;
  border: 1px solid #e5e7eb;              /* borda leve p/ evidenciar o card do evento */
  box-shadow: 0 2px 16px rgba(0,0,0,0.07);
  margin-bottom: 24px;
  overflow: hidden;
}

/* ── HEADER ── */
.evento-header {
  padding: 16px 16px 14px;
  border-bottom: 1px solid #f0f0f0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.evento-info-left {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.evento-data-hora {
  font-size: 0.95rem;
  font-weight: 700;
  color: #1a1a1a;
  display: flex;
  align-items: center;
  gap: 6px;
}

.evento-data-hora .ev-relogio {
  font-size: 0.82rem;
  color: #888;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 3px;
}

.evento-ver-lotes-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--green);
  color: #fff;
  font-weight: 700;
  font-size: 0.88rem;
  padding: 14px;
  border-radius: 8px;
  text-decoration: none;
  width: 100%;
  transition: opacity 0.2s;
  text-align: center;
  justify-content: center;
}
.evento-ver-lotes-btn:hover { opacity: 0.85; }
.evento-ver-lotes-btn .ev-badge {
  background: rgba(255,255,255,0.25);
  border-radius: 6px;
  padding: 2px 9px;
  font-size: 0.75rem;
  font-weight: 700;
}

.evento-info-right {
  background: var(--gray);
  border-radius: 10px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.evento-leiloeiro-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.evento-logo {
  height: 26px;
  width: auto;
  object-fit: contain;
}

.evento-nome-leilao {
  font-size: 0.82rem;
  font-weight: 700;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── COUNTDOWN ── */
.evento-countdown {
  display: flex;
  align-items: center;
  gap: 5px;
}

.cd-faltam {
  font-size: 0.7rem;
  color: #999;
  font-weight: 500;
  margin-right: 2px;
}

.cd-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  border-radius: 7px;
  padding: 5px 8px;
  min-width: 40px;
  box-shadow: 0 1px 5px rgba(0,0,0,0.08);
}

.cd-num {
  font-size: 1.05rem;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}

.cd-unit {
  font-size: 0.52rem;
  text-transform: uppercase;
  color: #aaa;
  letter-spacing: 0.06em;
  font-weight: 600;
}

.cd-sep {
  font-weight: 700;
  color: #ccc;
  font-size: 1rem;
  padding-bottom: 6px;
}

/* ── CARROSSEL ── */
.evento-lotes-wrapper {
  position: relative;
  padding: 14px 0;
}

.ev-nav-btn {
  display: none;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.15);
  cursor: pointer;
  touch-action: manipulation;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
  color: #1a1a1a;
}
.ev-nav-btn:hover {
  background: var(--lv-primaria);
  color: #fff;
  -webkit-transform: translateY(-50%) scale(1.08);
  -webkit-transform: translateY(-50%) scale(1.08);
  transform: translateY(-50%) scale(1.08);
}
.ev-nav-btn.prev { left: 8px; }
.ev-nav-btn.next { right: 8px; }

.ev-fade-left,
.ev-fade-right {
  display: none;
  position: absolute;
  top: 0; bottom: 0;
  width: 52px;
  pointer-events: none;
  z-index: 5;
}

/* Track mobile: 2 colunas */
.evento-lotes-track {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3px;
  padding: 5px 8px;
}

/* ── WRAPPER DE CADA CARD ── */
.ev-card-wrapper {
  position: relative;
}

/* Card */
.ev-lote-card {
  position: relative;
  z-index: 2;
  background: #fff;
  border-radius: 10px;
  border: none;
  box-shadow: 0 1px 6px rgba(0,0,0,0.09);
  transition: box-shadow 0.25s, transform 0.25s;
  cursor: pointer;
  touch-action: manipulation;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
}

/* Imagem */
.ev-lote-img-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
  aspect-ratio: 4/3;
  background: #e8e8e8;
}
.ev-lote-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.38s ease;
}
.ev-card-wrapper:hover .ev-lote-img-wrap img {
  -webkit-transform: scale(1.08);
  -webkit-transform: scale(1.08);
  transform: scale(1.08);
}

/* Badges */
.ev-badge-lote {
  position: absolute;
  top: 6px; left: 6px;
  background: rgba(0,0,0,0.55);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  backdrop-filter: blur(3px);
  z-index: 3;
}

.ev-badge-estado {
  position: absolute;
  top: 6px; right: 6px;
  background: rgba(255,255,255,0.93);
  color: #1a1a1a;
  font-size: 0.62rem;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 2px;
  z-index: 3;
}

.ev-badge-ano {
  position: absolute;
  top: 6px; right: 6px;
  background: rgba(255,255,255,0.93);
  color: var(--lv-primaria);
  font-size: 0.62rem;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 2px;
  z-index: 3;
}

/* Strip origem */
.ev-lote-origem {
  font-size: 0.62rem;
  color: #999;
  background: #f3f3f3;
  padding: 3px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Corpo */
.ev-lote-body {
  padding: 8px 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.ev-lote-titulo-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4px;
}

.ev-lote-titulo {
  font-size: 0.72rem;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.3;
  flex: 1;
  text-transform: uppercase;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: start;
  min-height: 2.6em;   /* reserva 2 linhas sempre -> cards alinhados, nome nao "pula" */
}

.ev-lote-fav {
  background: none;
  border: none;
  cursor: pointer;
  touch-action: manipulation;
  color: #e74c3c;
  padding: 0;
  flex-shrink: 0;
  transition: transform 0.2s;
  line-height: 1;
}
.ev-lote-fav:hover { transform: scale(1.2); }

.ev-lote-meta {
  display: flex;
  gap: 6px;
  justify-content: space-between;
}
.ev-lote-meta span {
  font-size: 0.67rem;
  color: #777;
  display: flex;
  align-items: center;
  gap: 3px;
}

.ev-lote-fotos {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: var(--gray);
  color: var(--primary-color);
  font-size: 0.73rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  width: fit-content;
}

/* FIPE */
.ev-lote-fipe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 4px 0 2px;
  padding: 3px 6px;
  background: #f0f4f8;
  border-radius: 4px;
  font-size: 0.62rem;
}
.ev-fipe-label {
  color: #6b7a8d;
  font-weight: 500;
  letter-spacing: 0.3px;
}
.ev-fipe-valor {
  color: var(--lv-primaria);
  font-weight: 700;
}

/* "X abaixo da FIPE" — sutil, verde, com setinha p/ baixo (vantagem) */
.ev-lote-abaixofipe {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 0.6rem;
  font-weight: 600;
  color: var(--lv-sucesso);
  margin: 2px 0;
  letter-spacing: .2px;
}
.ev-lote-abaixofipe svg { flex: 0 0 auto; }
/* Badge lances + visualizacoes no canto sup. direito (mesmo estilo da badge de lote) */
.ev-badge-stats {
  position: absolute;
  top: 6px; right: 6px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(0,0,0,0.55);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  backdrop-filter: blur(3px);
  z-index: 3;
}
.ev-badge-stats span { display: inline-flex; align-items: center; gap: 3px; }
.ev-badge-stats svg { opacity: .85; }

/* usuario vencendo o lance — sutil, cinza, com icone */
.ev-lote-vencedor {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.6rem;
  color: #6b7a8d;
  margin-top: 3px;
}
.ev-lote-vencedor svg { flex: 0 0 auto; opacity: .8; }

.ev-lote-preco {
  font-size: 0.95rem;
  font-weight: 700;
  color: #1a1a1a;
  margin-top: 2px;
  text-align: start;
}

.ev-lote-preco-label {
  font-size: 0.62rem;
  color: #aaa;
  margin-top: -2px;
  text-align: start;
}
.ev-lote-preco-label.arrematado {
  color: #c0392b;
  font-weight: 700;
}

.ev-lote-data-leilao {
  font-size: 0.88rem;
  color: #bbb;
  margin-top: 3px;
  border-top: 1px solid #f2f2f2;
  padding-top: 5px;
}

/* ── BOTÃO DAR LANCE ── */
.ev-dar-lance-bottom {
  position: fixed;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--lv-primaria);
  color: #fff;
  font-weight: 700;
  font-size: 0.85rem;
  text-decoration: none;
  border-radius: 0 0 10px 10px;
  height: 44px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

/* ── MOBILE: oculta cards 6–10 ── */
@media (max-width: 768px) {
  .ev-card--hide-mobile { display: none !important; }
}

/* ── TABLET: 3 colunas ── */
@media (min-width: 600px) {
  .evento-lotes-track {
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    padding: 5px 12px;
  }
}

/* ══════════════════════════════════════════════════════════
   DESKTOP (≥ 1024px) — cards maiores, 1 evento por tela
══════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {

  /* Bloco: mais largo e mais respiro entre eventos */
  .evento-bloco {
    max-width: 1200px;           /* MAXW-1200 2026-08-04: era 1080px (pedido gestor) */
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
  }

  /* Header: maior e mais arejado */
  .evento-header {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 24px 28px 22px;     /* ↑ era 20px 24px 18px */
    gap: 24px;
    min-height: 88px;            /* ↑ garante altura mínima */
  }

  .evento-info-left {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    flex-shrink: 0;
  }
  .evento-ver-lotes-btn {
    width: fit-content;
    padding: 10px 22px;          /* ↑ era 10px 20px */
  }
  .evento-info-right {
    flex: 1;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .evento-leiloeiro-row { flex-shrink: 0; }
  .evento-nome-leilao   { white-space: nowrap; font-size: 0.95rem; } /* ↑ era 0.9rem */
  .evento-countdown     { margin-left: auto; flex-wrap: nowrap; gap: 6px; }

  /* Countdown boxes maiores */
  .cd-num  { font-size: 1.2rem; }  /* ↑ era 1.1rem */
  .cd-box  { min-width: 50px; padding: 7px 12px; } /* ↑ era 44px / 5px 10px */

  /* Botões de nav maiores */
  .ev-nav-btn {
    display: flex;
    width: 42px;                 /* ↑ era 36px */
    height: 42px;
  }
  .ev-nav-btn.prev { left: 10px; }
  .ev-nav-btn.next { right: 10px; }

  .ev-fade-left,
  .ev-fade-right { display: block; }

  /* Wrapper do carrossel */
  .evento-lotes-wrapper {
    background: var(--gray);
    border-radius: 0 0 14px 14px;
    padding: 20px 0 24px;        /* ↑ era sem padding explícito */
  }

  /* Track: flex horizontal com scroll */
  .evento-lotes-track {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scrollbar-width: none;
    gap: 18px;                   /* ↑ era 14px */
    padding: 8px 58px 12px;      /* ↑ era 16px 52px 0 */
  }
  .evento-lotes-track::-webkit-scrollbar { display: none; }

  /* ── CARD: tamanho principal ──────────────────────────── */
  .ev-card-wrapper {
    flex-shrink: 0;
    width: 262px;                /* ↑ era 228px → +34px */
  }
  /* Com aspect-ratio 4/3 na imagem:
     262px × 0.75 = ~196px de altura de imagem automaticamente */

  /* Hover no wrapper */
  .ev-card-wrapper:hover .ev-lote-card {
    box-shadow: 0 6px 24px rgba(0,0,0,0.14);
    -webkit-transform: translateY(-2px);
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  .ev-card-wrapper:hover .ev-dar-lance-bottom {
    opacity: 1;
    pointer-events: auto;
  }

  /* Corpo do card: mais espaçamento */
  .ev-lote-body {
    padding: 12px 12px 14px;     /* ↑ era 8px 8px 10px */
    gap: 6px;                    /* ↑ era 4px */
  }

  /* Fontes maiores no desktop (aumento sutil 01h06) */
  .ev-lote-titulo {
    font-size: 1rem;             /* ↑ era 0.9rem */
    -webkit-line-clamp: 2;
    min-height: 2.6em;          /* 2 linhas fixas -> cards alinhados */
  }
  .ev-lote-meta span   { font-size: 0.82rem; }  /* ↑ era 0.74rem */
  .ev-lote-fotos       { font-size: 0.82rem; }
  .ev-lote-fipe        { font-size: 0.78rem; padding: 5px 9px; } /* ↑ era 0.7rem */
  .ev-lote-abaixofipe  { font-size: 0.72rem; }  /* ↑ sutil, verde */
  .ev-lote-vencedor    { font-size: 0.72rem; }  /* ↑ sutil, cinza */
  .ev-lote-preco       { font-size: 1.5rem; }   /* ↑ era 1.4rem */
  .ev-lote-preco-label { font-size: 0.76rem; }  /* ↑ era 0.7rem */
  .ev-lote-data-leilao { font-size: 0.72rem; }  /* ↑ era 0.67rem */

  /* Badge lote e ano — ligeiramente maiores */
  .ev-badge-lote {
    font-size: 0.68rem;
    padding: 3px 9px;
  }
  .ev-badge-ano {
    font-size: 0.68rem;
    padding: 3px 8px;
  }
  .ev-badge-stats {
    font-size: 0.68rem;   /* mesma fonte da badge de numero do lote */
    padding: 3px 9px;
  }

  /* Botão Dar Lance: mais alto */
  .ev-dar-lance-bottom {
    height: 48px;                /* ↑ era 44px */
    font-size: 1.3rem;           /* ↑ era 0.85rem */
  }
}

/* ── Título da seção ── */
.eventos-titulo { text-align: center; padding: 32px 20px 24px; }
.eventos-titulo-principal {
  font-size: 1.6rem;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.25;
  margin: 0 0 8px;
}
.eventos-titulo-sub { font-size: 0.88rem; color: #888; font-weight: 400; margin: 0; }
@media (min-width: 1024px) {
  .eventos-titulo-principal { font-size: 2rem; }
}


/* ═══════════════════════════════
   ANIMAÇÕES DE PISCA-PISCA
═══════════════════════════════ */
@keyframes lote-pisca-lento {
  0%, 100% { opacity: 1.0; }
  50%       { opacity: 0.35; }
}

@keyframes lote-pisca-rapido {
  0%, 100% { opacity: 1.0; }
  50%       { opacity: 0.2; }
}

/* Pagina do LOTE (mobile): remove badge AO VIVO do cabecalho e da barra de navegacao inferior */
.lv2-mob-header .lv2-badge-aovivo { display: none !important; }
.lv2-mobile-bar__center .lv2-badge-aovivo { display: none !important; }

/* Alerta/Urgente: SEM animacao no card (a sinalizacao fica so no badge AO VIVO) */
.ev-card-wrapper.lote-alerta {
  animation: none;
}
.ev-card-wrapper.lote-urgente {
  animation: none;
}

/* Encerrado — para de piscar, fica apagado */
.ev-card-wrapper.lote-encerrado {
  animation: none !important;
  opacity: 0.5;              /* mantem ofuscado (sem animacao/transition) */
  pointer-events: none;
  cursor: default;
}

/* ═══════════════════════════════
   RIBBON DIAGONAL "Encerrado"
═══════════════════════════════ */
.ev-lote-card {
  position: relative;
  overflow: hidden;
  border: 1px solid #e5e7eb;              /* borda leve p/ separar cada lote */
  border-radius: 10px;
}

.ev-lote-ribbon {
  position: absolute;
  top: 20px;
  right: -27px;
  width: 115px;
  background: var(--primary-color);
  color: #fff;
  font-size: 0.6rem;
  font-weight: 700;
  text-align: center;
  padding: 5px 0;
  -webkit-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  pointer-events: none;
  z-index: 20;
  opacity: 0;
  transition: opacity 0.5s ease 0.4s;
}

.ev-lote-ribbon.visivel {
  opacity: 1;
}

/* CTA "Ver todos os lotes em aberto" */
.ev-cta-mais-lotes {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 10px 16px 4px;
  padding: 11px 0;
  background: #eaf2ff;
  color: var(--lv-primaria);
  font-size: 0.82rem;
  font-weight: 700;
  border-radius: 8px;
  text-decoration: none;
  border: 1.5px solid #c2d8f5;
  transition: background 0.2s, color 0.2s;
  letter-spacing: 0.01em;
}
.ev-cta-mais-lotes:hover {
  background: var(--lv-primaria);
  color: #fff;
  border-color: var(--lv-primaria);
}
.ev-cta-mais-lotes svg {
  flex-shrink: 0;
  transition: stroke 0.2s;
}
.ev-cta-mais-lotes:hover svg {
  stroke: #fff;
}

@media (min-width: 1024px) {
  .ev-cta-mais-lotes {
    margin: 12px 58px 6px;
    font-size: 0.88rem;
  }
}


/* ===========================
   LEILÕES AO VIVO
   =========================== */
.leiloes-ao-vivo {
  width: 100%;
  padding: 0;
  box-sizing: border-box;
}

.lav-container {
  position: relative;
  overflow: hidden;
  background: #1a2a3f;
  border-radius: 20px;
  padding: 20px 18px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  color: #fff;
}

/* Background image (igual ao footer) */
.lav-container::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('/views/imagens/bg-footer.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.10;
  z-index: 0;
  pointer-events: none;
}

.lav-container > * { position: relative; z-index: 1; }

/* ── Lado esquerdo (ícone + texto) ── */
.lav-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 14px;
  justify-content: center;
}

.lav-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
}

.lav-icon svg {
  width: 48px;
  height: auto;
  filter: drop-shadow(0 4px 18px rgba(255,59,59,0.45));
}

.lav-texto { display: flex; flex-direction: column; gap: 4px; }

.lav-titulo {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  color: #fff;
}

.lav-subtitulo {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.65);
  line-height: 1.4;
  margin: 0;
}

/* ── Card do leilão (lado direito) ── */
.lav-leilao-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.lav-leilao-topo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  justify-content: center;
}

.lav-leilao-nome {
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #fff;
  flex: 1 1 100%;
}

.lav-badge-acontecendo {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--lv-cta);
  border: 1px solid var(--lv-cta);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  border-radius: 20px;
  padding: 3px 10px;
}

.lav-badge-acontecendo::before {
  content: "";
  width: 7px; height: 7px;
  background: #ff4455;
  border-radius: 50%;
  animation: lav-pulse 1.4s ease-in-out infinite;
}

@keyframes lav-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.4; transform: scale(0.75); }
}

.lav-badge-lotes {
  display: inline-flex;
  align-items: center;
  background: rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.75);
  font-size: 0.72rem;
  font-weight: 600;
  border-radius: 20px;
  padding: 3px 10px;
  border: 1px solid rgba(255,255,255,0.12);
}

/* ── Carrossel de lotes ── */
.lav-lotes-carousel {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  min-height: 80px;
}

/* Cada slide de lote — empilhados, apenas o ativo visível */
.lav-lote-slide {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  width: 100%;
  opacity: 0;
  position: absolute;
  top: 0; left: 0;
  transition: opacity 0.5s ease, transform 0.5s ease;
  -webkit-transform: translateX(30px);
  -webkit-transform: translateX(30px);
  transform: translateX(30px);
  pointer-events: none;
}

.lav-lote-slide.lav-active {
  opacity: 1;
  position: relative;
  -webkit-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  pointer-events: auto;
}

/* Logo circular */
.lav-lote-logo-wrap {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.lav-lote-logo {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #ff7d00;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.lav-lote-logo img {
  width: 70%;
  height: 70%;
  object-fit: contain;
}

.lav-badge-ao-vivo {
  background: #e3001b;
  color: #fff;
  font-size: 0.58rem;
  font-weight: 700;
  border-radius: 4px;
  padding: 2px 5px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

/* Foto do lote */
/* Link do lote = linha horizontal (foto + selo + info inline, estilo inspiracao) */
.lav-lote-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  width: 100%;
}

.lav-lote-foto-wrap {
  flex-shrink: 0;
  width: 88px; height: 62px;
  border-radius: 8px;
  overflow: hidden;
  background: #0d1926;
  position: relative;
}

.lav-lote-foto {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

/* selo AO VIVO sobre a foto (compacto, estilo inspiracao) */
.lav-lote-logo-wrap {
  order: -1;
  flex-shrink: 0;
}
.lav-badge-ao-vivo {
  display: inline-block;
  background: var(--lv-cta);
  color: #fff;
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: .04em;
  padding: 3px 8px;
  border-radius: 5px;
  text-transform: uppercase;
}
.lav-badge-ao-vivo.lav-badge-encerrado { background: #64748b; }

/* Info + barra de progresso */
.lav-lote-info-wrap {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.lav-lote-numero {
  font-size: 0.68rem;
  color: rgba(255,255,255,0.55);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.lav-lote-titulo {
  font-size: 0.82rem;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Barra de progresso */
.lav-progresso {
  height: 4px;
  background: rgba(255,255,255,0.12);
  border-radius: 2px;
  overflow: hidden;
}

.lav-progresso-bar {
  height: 100%;
  background: linear-gradient(90deg, #ff7d00, #ffa940);
  border-radius: 2px;
  transition: width 0.4s ease;
}

/* Indicadores de paginação */
.lav-dots {
  display: flex;
  justify-content: center;
  gap: 5px;
  margin-top: 4px;
}

.lav-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: rgba(255,255,255,0.25);
  transition: background 0.3s, transform 0.3s;
  cursor: pointer;
  touch-action: manipulation;
  border: none;
  padding: 0;
}

.lav-dot.lav-dot-active {
  background: #ff7d00;
  -webkit-transform: scale(1.3);
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}

/* ==========================================
   DESKTOP (≥ 768 px)
   ========================================== */
@media (min-width: 768px) {
  .leiloes-ao-vivo {
    max-width: 1200px;   /* mesma largura dos cards de evento */
    margin: 0 auto;
  }
  .lav-container {
    flex-direction: row;
    align-items: center;
    padding: 22px 28px;
    gap: 0;
    border-radius: 28px;
    justify-content: space-between;
  }

  /* Lado esquerdo */
  .lav-header {
    flex: 0 0 40%;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    padding-right: 28px;
    border-right: 1px solid rgba(255,255,255,0.10);
  }

  .lav-icon svg { width: 62px; }

  .lav-titulo  { font-size: 1.45rem; }
  .lav-subtitulo { font-size: 0.78rem; }

  /* DEPOIS — flex: 0 0 auto libera o width para funcionar */
.lav-leilao-card {
  flex: 0 0 auto;
  width: 420px;        /* ← ajuste este valor conforme precisar */
  max-width: 100%;     /* segurança para telas menores */
  margin-left: 28px;
  padding: 16px 20px 14px;
  border-radius: 16px;
}

  .lav-leilao-nome { font-size: 0.88rem; }

  .lav-lote-foto-wrap { width: 100px; height: 68px; }
  .lav-lote-logo { width: 52px; height: 52px; }
  .lav-lote-titulo { font-size: 0.88rem; }
}

/* ============================================
   SEÇÃO HERO CATEGORIAS (Veículos)
   ============================================ */
.secao-hero-categorias {
  width: 100%;
  background: #f4f5f7;
  padding: 28px 16px 32px;
  box-sizing: border-box;
}

.shc-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* ── Bloco título + botão ── */
.shc-titulo-bloco {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.shc-titulo {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.2;
  color: #1a1a1a;
  margin: 0;
}

.shc-titulo span {
  color: var(--primary-color);
}

.shc-btn-ver-lotes {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--lv-primaria);
  color: #fff;
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 8px;
  padding: 13px 28px;
  width: 100%;
  box-sizing: border-box;
  transition: background 0.2s, transform 0.2s;
}

.shc-btn-ver-lotes:hover {
  background: #0f2540;
  -webkit-transform: translateY(-1px);
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
}

/* ── Grid de categorias ── */
.shc-categorias-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 90px;
}

/* Card destaque (Carros) — ocupa largura total no mobile */
.shc-card-cat {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.07);
  padding: 0 16px 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: visible;
  position: relative;
  cursor: pointer;
  touch-action: manipulation;
  text-align: start !important;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.22s, transform 0.22s;
}

.shc-card-cat:hover {
  box-shadow: 0 6px 22px rgba(0,0,0,0.13);
  -webkit-transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

/* Imagem do veículo saindo para cima do card */
.shc-card-img-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: -90px; /* sai para cima */
  margin-bottom: 8px;
  pointer-events: none;
}

.shc-card-img-wrap img {
  width: 85%;
  max-width: 280px;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 8px 16px rgba(0,0,0,0.18));
  transition: transform 0.3s ease;
}

.shc-card-cat:hover .shc-card-img-wrap img {
  -webkit-transform: translateY(-4px) scale(1.02);
  -webkit-transform: translateY(-4px) scale(1.02);
  transform: translateY(-4px) scale(1.02);
}

/* Texto do card */
.shc-card-label {
  font-size: 0.72rem;
  color: #666;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-bottom: 2px;
}

.shc-card-nome {
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--primary-color);
  margin: 0 0 4px;
}

.shc-card-desc {
  font-size: 0.78rem;
  color: #555;
  margin: 0;
  line-height: 1.4;
  text-align: start;
}

/* Botão seta circular */
.shc-card-seta {
  position: absolute;
  bottom: 50px;
  right: 16px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
  flex-shrink: 0;
}

.shc-card-seta svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: #fff;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.shc-card-cat:hover .shc-card-seta {
  background: #b5001a;
  -webkit-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Sub-grid: Motos + Pesados lado a lado */
.shc-sub-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.shc-sub-grid .shc-card-cat {
  padding: 0 12px 14px;
}

.shc-sub-grid .shc-card-img-wrap {
  margin-top: -18px;
}

.shc-sub-grid .shc-card-img-wrap img {
  width: 90%;
  max-width: 160px;
}

/* SUBSTITUA o bloco .shc-banner-dark por este */
.shc-banner-dark {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start; /* ← era flex-end, agora texto vai ao topo */
  padding: 30px;
  box-sizing: border-box;
  background: #1a2a3f;
  text-decoration: none;
  cursor: pointer;
  touch-action: manipulation;
}

/* SUBSTITUA o ::before por este — gradiente de cima para baixo */
.shc-banner-dark::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,var(--lv-primaria-dark),rgba(0,48,73,0));
  z-index: 1;
}

.shc-banner-dark-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

.shc-banner-dark-content {
  position: relative;
  z-index: 2;
  text-align: start;
}

.shc-banner-dark-sub {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.70);
  line-height: 1.4;
  margin: 0 0 8px;
}

.shc-banner-dark-titulo {
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
  margin: 0;
}

.ev-badge-ipva {
  width: 135px;
    pointer-events: none;
    padding: 12px;
}

/* ============================================
   DESKTOP ≥ 768px — VERSÃO FINAL
   ============================================ */
@media (min-width: 768px) {

  .secao-hero-categorias {
    padding: 28px 28px 36px;
    background: #f4f5f7;
  }

  .shc-inner {
    display: grid;
    grid-template-columns: 1fr 280px;
    grid-template-rows: auto auto;
    grid-template-areas:
      "titulo  banner"
      "cards   banner";
    column-gap: 20px;
    row-gap: 0;
    max-width: 1200px;
    margin: 0 auto;
  }

  /* ── Linha 1: Título à esquerda + botão à direita ── */
  .shc-titulo-bloco {
    grid-area: titulo;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    padding-bottom: 24px;
  }

  .shc-titulo {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
    flex: 1;
    margin: 0;
    width: 80%;
  }

  .shc-btn-ver-lotes {
    flex-shrink: 0;
    width: 30%;
    padding: 13px 36px;
    font-size: 0.95rem;
    border-radius: 10px;
  }

  /* ── Linha 2: 3 cards em linha com imagens saindo para cima ── */
  .shc-categorias-grid {
    grid-area: cards;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 14px;
    overflow: visible;
    margin-right: -70px;
        z-index: 2;
  }

  /* Sub-grid dissolve */
  .shc-sub-grid {
    display: contents;
  }

  /* Cards: mesma largura para todos os 3 */
.shc-card-cat {
  flex: 1 1 0;           /* base 0 = mesma largura calculada */
  min-width: 0;
  overflow: visible;     /* imagens podem extravasar — comportamento intencional */
  padding: 0 16px 16px;
  box-sizing: border-box;
}

/* Wrapper: altura fixa igual em todos os cards */
.shc-card-img-wrap {
  margin-top: -80px;
  margin-bottom: 12px;
  width: 100%;
  height: 160px;         /* ← iguala a altura das 3 imagens */
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: visible;     /* permite extravasar para cima e para os lados */
}

/* Imagens: mesma altura, extravasamento livre */
.shc-card-img-wrap img {
  height: 100%;
  width: auto !important;           /* largura proporcional — cada veículo no seu tamanho natural */
  max-width: 130% !important;       /* permite extravasar levemente para os lados */
  object-fit: contain;
  filter: drop-shadow(0 8px 24px rgba(0,0,0,0.16));
  transition: transform 0.3s ease;
}

.shc-card-cat:hover .shc-card-img-wrap img {
  -webkit-transform: translateY(-6px) scale(1.03);
  -webkit-transform: translateY(-6px) scale(1.03);
  transform: translateY(-6px) scale(1.03);
}

  /* ── Coluna direita: banner cobre as 2 linhas ── */
  .shc-banner-dark {
    grid-area: banner;
    align-self: stretch;
    border-radius: 16px;
    min-height: 0;
    margin: -50px 0;
  }
}

/* ============================================
   DESKTOP LARGO ≥ 1024px
   ============================================ */
@media (min-width: 1024px) {

  .secao-hero-categorias {
    padding: 32px 40px 40px;
  }

  .shc-inner {
    grid-template-columns: 1fr 310px;
    column-gap: 24px;
  }

  .shc-titulo {
    font-size: 2.2rem;
  }

  .shc-card-img-wrap {
  height: 180px;
  margin-top: -90px !important;
}


  .shc-banner-dark {
    min-height: 0;
  }
}

/* ============================================
   SEÇÃO PRIMEIRA VEZ AQUI
   ============================================ */
.spva-secao {
  width: 100%;
  background: #fff;
  padding: 32px 16px 36px;
  box-sizing: border-box;
}

.spva-inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* ── Header ── */
.spva-header {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 24px;
}

.spva-titulo {
  font-size: 1.75rem;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0;
  line-height: 1.2;
}

.spva-subtitulo {
  font-size: 0.88rem;
  color: #666;
  margin: 0;
}

.spva-btn-como {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 14px;
  padding: 11px 28px;
  border: 1.5px solid #1a1a1a;
  border-radius: 8px;
  background: #fff;
  color: #1a1a1a;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  width: 100%;
  box-sizing: border-box;
  transition: background 0.2s, color 0.2s;
}

.spva-btn-como:hover {
  background: #1a1a1a;
  color: #fff;
}

/* ── Grid de cards ── */
.spva-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* ── Card ── */
.spva-card {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  min-height: 280px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  text-decoration: none;
  cursor: pointer;
  touch-action: manipulation;
  background: #1a1a1a;
}

/* Imagem de fundo */
.spva-card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
  transition: transform 0.45s ease, z-index 0s 0s;
}

/* ── HOVER: imagem invade o overlay ── */
.spva-card:hover .spva-card-bg {
  -webkit-transform: scale(1.08);
  -webkit-transform: scale(1.08);
  transform: scale(1.08);
  z-index: 3;                /* sobe acima do conteúdo */
  transition: transform 0.45s ease, z-index 0s 0s;
}

/* Overlay oculto */
.spva-card-overlay {
  display: none;
}

.spva-card-overlay::before {
  display: none;
}

/* ── Conteúdo: bloco vermelho que se auto-ajusta ── */
.spva-card-content {
  position: relative;
  z-index: 2;
  padding: 14px 14px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: var(--primary-color);
  border-radius: 0 16px 0 0;
  transition: padding 0.35s ease;
  height: 40%;
  text-align: start;
  justify-content: space-between;
  transition: padding 0.35s ease, gap 0.35s ease, min-height 0.35s ease;
}

/* No hover o conteúdo fica sobre a imagem que subiu */
.spva-card:hover .spva-card-content {
  z-index: 4;   
  max-height: fit-content;            /* acima da imagem (z-index: 3) */
}

/* Label — colapsa suavemente no hover */
.spva-card-label {
  font-size: 0.68rem;
  color: rgba(255, 255, 255, 0.90);
  line-height: 1.45;
  font-weight: 400;
  max-height: 60px;
  overflow: hidden;
  opacity: 1;
  transition: max-height 0.35s ease, opacity 0.25s ease;
}

.spva-card:hover .spva-card-label {
  max-height: 0;
  opacity: 0;
}

/* Título */
.spva-card-titulo {
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
  margin: 0;
  padding-right: 44px;
}

/* Botão seta circular */
.spva-card-seta {
  position: absolute;
  bottom: 14px;
  right: 14px;
  z-index: 3;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.20);
  border: 1.5px solid rgba(255, 255, 255, 0.70);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
  flex-shrink: 0;
}

.spva-card-seta svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: #fff;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.spva-card:hover .spva-card-seta {
  background: rgba(255, 255, 255, 0.35);
  -webkit-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  z-index: 5;               /* sempre visível no hover */
}

/* ============================================
   DESKTOP ≥ 768px
   ============================================ */
@media (min-width: 768px) {

  .spva-secao {
    padding: 40px 28px 44px;
  }

  .spva-header {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 28px;
    gap: 20px;
  }

  .spva-header-texto {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .spva-titulo {
    font-size: 2rem;
  }

  .spva-btn-como {
    margin-top: 0;
    width: auto;
    flex-shrink: 0;
    padding: 11px 32px;
  }

  .spva-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }

  .spva-card {
    min-height: 320px;
  }

  /* ── FONTES MAIORES no desktop para preencher o overlay ── */
  .spva-card-titulo {
    font-size: 1.35rem;       /* era 1.1rem — aumentado para preencher o bloco */
  }

  .spva-card-label {
    font-size: 0.82rem;       /* era 0.72rem */
  }
}

/* ============================================
   DESKTOP LARGO ≥ 1024px
   ============================================ */
@media (min-width: 1024px) {

  .spva-secao {
    padding: 44px 40px 48px;
  }

  .spva-titulo {
    font-size: 2.1rem;
  }

  .spva-card {
    min-height: 400px;
  }

  .spva-card-content {
    padding: 20px 18px 18px;
  }

  .spva-card-titulo {
    font-size: 1.5rem;        /* era 1.2rem — aumentado para preencher o bloco */
  }

  .spva-card-label {
    font-size: 0.86rem;
  }

  .spva-card-seta {
    width: 38px;
    height: 38px;
    bottom: 18px;
    right: 18px;
  }
}

/* ============================================
   SEÇÃO PARCEIROS
   ============================================ */
.secao-parceiros {
  width: 100%;
  background: #f4f5f7;
  padding: 32px 16px;
  box-sizing: border-box;
}

.parceiros-inner {
  max-width: 1200px;
  margin: 0 auto;
}

.parceiros-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 20px;
}

@media (min-width: 768px) {
  .secao-parceiros { padding: 40px 28px; }
}

@media (min-width: 1024px) {
  .secao-parceiros { padding: 44px 40px; }
}

.evento-encerrado {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.88rem;
  font-weight: 700;
  color: #c0392b;
  background: #fdecea;
  border: 1.5px solid #e74c3c;
  border-radius: 8px;
  padding: 8px 16px;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.evento-encerrado svg {
  stroke: #e74c3c;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

/* badge estado no carrossel ao vivo */
.lav-badge-encerrado {
  background: #7f8c8d !important;
  animation: none !important;
}

/* DEPOIS — encerrado só se aplica quando o slide está ativo */
.lav-lote-slide.lav-active.lav-lote-encerrado .lav-lote-foto {
  filter: grayscale(80%);
}

/* ═══════════════════════════════════════════════════
   DOT "AO VIVO" — bolinha pulsante no título
═══════════════════════════════════════════════════ */
@keyframes ev-live-ring {
  0%   { transform: scale(0.5); opacity: 1; }
  80%  { transform: scale(1); opacity: 0; }
  100% { transform: scale(1); opacity: 0; }
}
@keyframes ev-live-core {
  0%, 100% { transform: scale(1);   }
  50%       { transform: scale(1.2); }
}

.ev-live-dot {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 10px;
  height: 10px;
  vertical-align: middle;
  margin-right: 7px;
  flex-shrink: 0;
  padding: 12px;
}
.ev-live-dot::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #e74c3c;
  animation: ev-live-ring 1.8s ease-out infinite;
}
.ev-live-dot::after {
  content: '';
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #e74c3c;
  box-shadow: 0 0 5px rgba(231, 76, 60, 0.65);
  animation: ev-live-core 1.8s ease-in-out infinite;
}

/* alinha bolinha + texto no mesmo eixo */
.evento-nome-leilao {
  display: inline-flex;
  align-items: center;
}

/* ── Botão "Ver todos os lotes do leilão" ── */
.lav-btn-ver-lotes {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 11px 16px;
  background: rgba(255, 255, 255, 0.10);
  color: rgba(255, 255, 255, 0.90);
  font-size: .8rem;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: .05em;
  text-transform: uppercase;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0 0 12px 12px;
  transition: background .2s, color .2s;
}
.lav-btn-ver-lotes:hover {
  background: #e74c3c;
  color: #fff;
}
.lav-btn-ver-lotes svg {
  flex-shrink: 0;
  transition: transform .2s;
}
.lav-btn-ver-lotes:hover svg {
  -webkit-transform: translateX(3px);
  -webkit-transform: translateX(3px);
  transform: translateX(3px);
}
/* ── BOTÃO "DAR LANCE" — página de lotes (/lotes/) ── */
.ev-dar-lance-lista {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--lv-primaria);
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  border-radius: 0 0 10px 10px;
  height: 44px;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.2s ease;
  bottom: 10px;
  padding: 8px 0 0;
  
}

/* ── Badge AO VIVO — cards de lote ── */
.ev-badge-aovivo-card {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--lv-cta) 0%, #ef4444 50%, #f97316 100%);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  vertical-align: middle;
  animation: aovivo-pulse 1.4s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes aovivo-pulse {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.55; }
}

/* Badge AO VIVO na topbar desktop */
.lv2-topbar-aovivo {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 12px;
  background: linear-gradient(90deg, var(--lv-cta) 0%, #ef4444 60%, #f97316 100%);
  color: #fff; font-size: 11px; font-weight: 700;
  border-radius: 6px; letter-spacing: 0.5px; text-transform: uppercase;
  animation: lv2blink 1.4s ease-in-out infinite;
}
.lv2-topbar-aovivo i { font-size: 7px; }

/* Strip de status no topo do bid panel */
.lv2-bid-status-strip {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  padding: 9px 14px; font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .05em;
}
.lv2-bid-status-strip.arrematado {
  background: #f1f5f9; color: #64748b;
  border-bottom: 1px solid #e5e7eb;
}
.lv2-bid-status-strip.ao-vivo {
  background: linear-gradient(90deg, var(--lv-cta) 0%, #ef4444 60%, #f97316 100%);
  color: #fff;
  animation: lv2blink 1.4s ease-in-out infinite;
}
/* STATUS-EM-BREVE 2026-08-05: leilao ainda nao comecou (data_ini no futuro). Tom ambar/informativo,
   distinto do vermelho "ao vivo" e do cinza "arrematado". Sem piscar (nao e urgente). */
.lv2-bid-status-strip.em-breve {
  background: #fff7ed; color: #b45309;
  border-bottom: 1px solid #fed7aa;
}


/* ══════════════════════════════════════════════════════════
   CORREÇÕES MOBILE LOTES — Abril/2025
   1. IPVA badge: alinhado à esquerda (iOS fix)
   2. Galeria de lotes: 2 cards por linha no mobile (≤ 767px)
   3. Layout wrapper: largura consistente entre /lotes e /lotes/leilao
══════════════════════════════════════════════════════════ */

/* ── 1. IPVA badge: forçar alinhamento à esquerda em todos os browsers ── */
/* Sem isso, no iOS o flex-column centraliza elementos com width fixo */
.ev-badge-ipva {
  display: block;                    /* garante block layout */
  align-self: flex-start;            /* ancora à esquerda no flex-column */
  -webkit-align-self: flex-start;    /* prefixo Safari/iOS */
  margin: 0;                         /* remove qualquer margin: auto */
}

ul.lotes_list_galeria {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

/* ── 2. Galeria de lotes: 2 cards por linha no mobile ── */
@media (max-width: 767px) {

  /* A <ul> vira grid de 2 colunas */
  ul.lotes_list_galeria {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }

  /* Cada <li class="wr3"> ocupa 1 célula: cancela float e width % herdados */
  ul.lotes_list_galeria > li.wr3 {
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* <li class="clear"> do PHP: ocultar para não criar célula extra no grid */
  ul.lotes_list_galeria > li.clear {
    display: none !important;
  }

  /* ev-card-wrapper e ev-lote-card devem preencher 100% da célula */
  ul.lotes_list_galeria .ev-card-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  ul.lotes_list_galeria .ev-lote-card {
    width: 100% !important;
  }

  /* ── 3. Layout wrapper: garante largura consistente no mobile ── */
  /* O align-items: center do inline style do #lotes-layout-wrap       */
  /* em flex-direction: column faz os filhos não se esticarem.          */
  /* Substituímos por stretch para ocupar 100% em ambas as URLs.        */
  #lotes-layout-wrap {
    align-items: stretch !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    gap: 0 !important;
  }

  #lotes-content {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

}
/* FIM CORREÇÕES MOBILE LOTES */

/* ═══════════════════════════════════════════════════════════════
   BUSCA DA PÁGINA DE LOTES — lupa deslizante (igual à home)
   Sessão 2026-07-31 · aditivo · reversível
   Espelha o efeito de .busca-input-group (contexto inicio) nas
   classes .sb-* (contexto lotes). Só ESTILO. HTML intacto —
   o .sb-input-icon já é <button type="submit"> (clicar busca).
   INÍCIO-BUSCA-LOTES-DESLIZE-20260731
   ═══════════════════════════════════════════════════════════════ */
html body .sb-input-group{
  position: relative !important;
}
/* lupa vira botão flutuante posicionado (estado normal: à esquerda) */
html body .sb-input-group .sb-input-icon{
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 2 !important;
  color: #000 !important;               /* igual à lupa do header/home */
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: left .35s cubic-bezier(.22,.61,.36,1) !important;
}
html body .sb-input-group .sb-input-icon i{ font-weight: 900 !important; }

/* input com espaço à esquerda pra lupa (estado normal) */
html body .sb-input-group .sb-input{
  padding-left: 28px !important;
  transition: padding .3s ease !important;
}

/* ao FOCAR/clicar pra digitar: a lupa desliza pro canto direito (vira botão de aplicar) */
html body .sb-input-group:focus-within .sb-input-icon{
  left: calc(100% - 24px) !important;
}
html body .sb-input-group:focus-within .sb-input{
  padding-left: 4px !important;
  padding-right: 32px !important;
}
/* FIM-BUSCA-LOTES-DESLIZE-20260731 */
