/* InfoDesconto - CSS exclusivo da homepage do marketplace */

/* =========================================================
 * HOMEPAGE DEFINITIVA DO MARKETPLACE
 * ========================================================= */

.marketplace-home{
    background:#fff;
}

.market-hero{
    position:relative;
    overflow:hidden;
    padding:82px 0 72px;
    color:#fff;
    background:linear-gradient(125deg,#061a2f 0%,#0a2540 56%,#104a79 100%);
}

.market-hero:before{
    content:"";
    position:absolute;
    width:620px;
    height:620px;
    right:-260px;
    top:-320px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
}

.market-hero h1{
    max-width:820px;
    margin:22px 0;
    font-size:clamp(3rem,5.8vw,5rem);
    line-height:.98;
    letter-spacing:-3.8px;
    font-weight:900;
}

.market-hero h1 span{
    display:block;
    color:var(--id-green);
}

.market-search{
    max-width:760px;
}

.market-search .input-group{
    padding:6px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 40px rgba(0,0,0,.2);
}

.market-search .input-group-text{
    border:0;
    background:#fff;
    color:#8194a5;
    padding-left:16px;
}

.market-search .form-control{
    border:0;
    box-shadow:none;
    min-height:52px;
}

.market-search .btn{
    border-radius:13px!important;
}

.market-stats{
    display:flex;
    flex-wrap:wrap;
    gap:28px;
}

.market-stats div{
    display:grid;
}

.market-stats strong{
    font-size:1.35rem;
    color:var(--id-green);
}

.market-stats span{
    font-size:.78rem;
    color:rgba(255,255,255,.7);
}

.market-hero-panel{
    position:relative;
    padding:30px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:26px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    box-shadow:0 35px 70px rgba(0,0,0,.25);
}

.market-hero-panel-head{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-start;
    margin-bottom:24px;
}

.market-hero-panel-head small,
.market-seller-callout span{
    display:block;
    color:var(--id-green);
    font-size:.7rem;
    font-weight:900;
    letter-spacing:1.1px;
}

.market-hero-panel-head strong{
    display:block;
    margin-top:5px;
    font-size:1.2rem;
}

.market-hero-panel-head>i{
    font-size:2rem;
    color:var(--id-green);
}

.market-hero-point{
    display:flex;
    gap:14px;
    padding:15px 0;
    border-top:1px solid rgba(255,255,255,.08);
}

.market-hero-point>span{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:rgba(46,204,113,.12);
    color:var(--id-green);
}

.market-hero-point strong,
.market-hero-point small{
    display:block;
}

.market-hero-point small{
    margin-top:3px;
    color:rgba(255,255,255,.65);
    line-height:1.45;
}

.market-hero-panel hr{
    border-color:rgba(255,255,255,.12);
}

.market-seller-callout strong{
    display:block;
    margin:4px 0 8px;
    font-size:1.05rem;
}

.market-seller-callout a{
    color:#fff;
    font-weight:800;
    text-decoration:none;
}

.market-categories{
    padding:22px 0;
    border-bottom:1px solid var(--id-border);
    background:#fff;
}

.market-category-label{
    color:var(--id-blue);
    font-size:.82rem;
    font-weight:850;
}

.market-category-chip{
    display:inline-flex;
    gap:7px;
    align-items:center;
    padding:8px 12px;
    border:1px solid var(--id-border);
    border-radius:999px;
    color:#516a7e;
    background:#fff;
    text-decoration:none;
    font-size:.8rem;
    font-weight:750;
    transition:.2s;
}

.market-category-chip small{
    display:grid;
    place-items:center;
    min-width:22px;
    height:22px;
    border-radius:999px;
    background:#eef4f7;
    font-size:.68rem;
}

.market-category-chip:hover,
.market-category-chip.active{
    border-color:var(--id-green);
    color:#0b8f4b;
    background:#effff5;
}

.market-section-title{
    margin:6px 0 7px;
    color:var(--id-blue);
    font-size:clamp(2rem,4vw,3rem);
    font-weight:900;
    letter-spacing:-1.6px;
}

.market-section-subtitle{
    margin:0;
    color:var(--id-muted);
}

.market-product-card{
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid var(--id-border);
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 32px rgba(10,37,64,.05);
    transition:.2s;
}

.market-product-card:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 42px rgba(10,37,64,.09);
}

.market-product-image{
    display:block;
    height:220px;
    padding:16px;
    background:#f4f7fa;
}

.market-product-image img{
    width:100%;
    height:100%;
    border-radius:14px;
    object-fit:contain;
}

.market-product-body{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:20px;
}

.market-product-category{
    align-self:flex-start;
    margin-bottom:9px;
    padding:5px 8px;
    border-radius:999px;
    color:#0c8d4b;
    background:#effff5;
    font-size:.65rem;
    font-weight:850;
    letter-spacing:.4px;
    text-transform:uppercase;
}

.market-product-card h3{
    margin:0 0 8px;
    font-size:1.05rem;
    line-height:1.3;
    font-weight:900;
}

.market-product-card h3 a{
    color:var(--id-blue);
    text-decoration:none;
}

.market-product-store{
    display:inline-flex;
    gap:6px;
    align-items:center;
    color:#718497;
    text-decoration:none;
    font-size:.78rem;
}

.market-product-store:hover{
    color:var(--id-green2);
}

.market-product-price{
    margin-top:16px;
    color:var(--id-green2);
    font-size:1.3rem;
    font-weight:900;
}

.market-empty{
    padding:55px 24px;
    border:1px dashed #cddbe5;
    border-radius:22px;
    text-align:center;
    background:#fff;
}

.market-empty>i{
    font-size:2.2rem;
    color:#9aacb9;
}

.market-empty h3{
    margin:14px 0 6px;
    color:var(--id-blue);
    font-weight:850;
}

.market-empty p{
    color:var(--id-muted);
}

.market-store-card{
    display:flex;
    flex-direction:column;
    padding:25px;
    border:1px solid var(--id-border);
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 32px rgba(10,37,64,.045);
}

.market-store-top{
    display:flex;
    gap:15px;
    align-items:center;
}

.market-store-logo{
    width:66px;
    height:66px;
    flex:0 0 66px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border:1px solid var(--id-border);
    border-radius:16px;
    background:#f4f8fa;
    color:var(--id-green2);
    font-size:1.6rem;
}

.market-store-logo img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.market-store-top span{
    color:var(--id-green2);
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.7px;
    text-transform:uppercase;
}

.market-store-top h3{
    margin:3px 0 0;
    color:var(--id-blue);
    font-size:1.18rem;
    font-weight:900;
}

.market-store-card>p{
    min-height:72px;
    margin:20px 0;
    color:var(--id-muted);
    line-height:1.6;
}

.market-store-meta{
    display:grid;
    gap:8px;
    margin-bottom:20px;
    color:#62798d;
    font-size:.78rem;
}

.market-store-meta span{
    display:flex;
    gap:8px;
    align-items:flex-start;
}

.market-store-meta i{
    color:var(--id-green2);
}

.market-plan-card{
    display:flex;
    flex-direction:column;
    padding:28px;
    border:1px solid var(--id-border);
    border-radius:22px;
    background:#fff;
    box-shadow:0 13px 34px rgba(10,37,64,.05);
}

.market-plan-name{
    color:var(--id-blue);
    font-size:1.05rem;
    font-weight:900;
}

.market-plan-price{
    margin:16px 0 8px;
    color:var(--id-green2);
    font-size:2.35rem;
    font-weight:900;
}

.market-plan-price small{
    font-size:.85rem;
}

.market-plan-card p{
    min-height:48px;
    color:var(--id-muted);
}

.market-plan-card ul{
    display:grid;
    gap:10px;
    margin:8px 0 24px;
    padding:0;
    list-style:none;
    color:#526a7d;
}

.market-plan-card li{
    display:flex;
    gap:8px;
    align-items:flex-start;
}

.market-plan-card li i{
    color:var(--id-green2);
}

.market-login-box{
    padding:15px 17px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    background:rgba(255,255,255,.06);
}

.market-login-box span,
.market-login-box a{
    display:block;
}

.market-login-box span{
    color:rgba(255,255,255,.65);
    font-size:.75rem;
}

.market-login-box a{
    margin-top:3px;
    color:#fff;
    font-weight:850;
    text-decoration:none;
}

.market-commercial{
    padding:0 0 85px;
    background:#fff;
}

.market-commercial-box{
    display:flex;
    justify-content:space-between;
    gap:30px;
    align-items:center;
    padding:35px;
    border:1px solid var(--id-border);
    border-radius:24px;
    background:var(--id-bg);
}

.market-commercial-box h2{
    margin:5px 0 7px;
    color:var(--id-blue);
    font-size:1.8rem;
    font-weight:900;
}

.market-commercial-box p{
    max-width:720px;
    margin:0;
    color:var(--id-muted);
}

@media(max-width:991px){
    .market-hero{
        padding:68px 0;
    }

    .market-hero h1{
        letter-spacing:-2.6px;
    }

    .market-hero-panel{
        max-width:680px;
    }

    .market-commercial-box{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:575px){
    .market-hero{
        padding:52px 0;
    }

    .market-hero h1{
        font-size:2.7rem;
        letter-spacing:-2px;
    }

    .market-search .input-group{
        display:grid;
        grid-template-columns:auto 1fr;
    }

    .market-search .btn{
        grid-column:1/-1;
        width:100%;
        margin-top:5px;
    }

    .market-stats{
        gap:18px;
    }

    .market-product-image{
        height:240px;
    }
}


/* Fase de captação: substitui os contadores públicos enquanto a base cresce */
.market-launch-callout{
    display:flex;
    align-items:center;
    gap:14px;
    max-width:760px;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:16px;
    background:rgba(255,255,255,.06);
}

.market-launch-callout>i{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:var(--id-green);
    background:rgba(46,204,113,.12);
    font-size:1.15rem;
}

.market-launch-callout>div{
    flex:1;
}

.market-launch-callout strong,
.market-launch-callout span{
    display:block;
}

.market-launch-callout strong{
    color:#fff;
    font-size:.9rem;
}

.market-launch-callout span{
    margin-top:3px;
    color:rgba(255,255,255,.68);
    font-size:.76rem;
    line-height:1.45;
}

.market-launch-callout>a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    flex:0 0 auto;
    color:var(--id-green);
    font-size:.78rem;
    font-weight:850;
    text-decoration:none;
}

.market-launch-callout>a:hover{
    color:#fff;
}

@media(max-width:767px){
    .market-launch-callout{
        align-items:flex-start;
        flex-wrap:wrap;
    }

    .market-launch-callout>a{
        width:100%;
        padding-left:56px;
    }
}

/* ============================================================
   Busca avançada do marketplace
   ============================================================ */
.search-page{background:#f6f9fc;min-height:70vh}
.search-page-head{padding:24px;border:1px solid #e4ebf2;border-radius:22px;background:#fff;box-shadow:0 12px 35px rgba(10,37,64,.05)}
.search-filter-card{padding:20px;border:1px solid #e1e8ef;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(10,37,64,.05)}
.search-result-card{position:relative}
.search-location,.search-pickup{display:flex;align-items:center;gap:5px;font-size:.78rem;line-height:1.4;margin-top:5px}
.search-location{color:#60758a}
.search-pickup{color:#16894f;font-weight:700}
.search-result-card .market-product-category{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:991px){.search-filter-card{position:static!important}.search-page-head{padding:18px}}
