/* ===========================================================
    RESET
=========================================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{

    scroll-behavior:smooth;

}

body{

    background:#F6F2EB;

    color:#2D2D2D;

    font-family:
        "Segoe UI",
        Tahoma,
        Geneva,
        Verdana,
        sans-serif;

}


/* ===========================================================
    HEADER
=========================================================== */

header{

    background:#5D2F13;

    color:white;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px 50px;

    box-shadow:

        0 8px 18px rgba(0,0,0,.15);

}

.logo h1{

    font-size:2rem;

    margin-bottom:6px;

}

#wallet_info{

    color:#FFE4C1;

    font-size:1rem;

}


/* ===========================================================
    BOTÃO DO CARRINHO
=========================================================== */

button{

    cursor:pointer;

    border:none;

    transition:.25s;

    font-weight:bold;

}

#btn_carrinho{

    background:#F35C38;

    color:white;

    padding:14px 26px;

    border-radius:12px;

    font-size:1rem;

}

#btn_carrinho:hover{

    background:#FF734F;

    transform:translateY(-2px);

}


/* ===========================================================
    HERO
=========================================================== */

.hero{

    text-align:center;

    padding:45px 20px;

}

.hero h2{

    font-size:2rem;

    color:#5D2F13;

    margin-bottom:10px;

}

.hero p{

    color:#777;

    font-size:1rem;

}


/* ===========================================================
    GRID DOS PRODUTOS
=========================================================== */

#lista{

    width:min(1400px,90%);

    margin:30px auto 60px auto;

    display:grid;

    grid-template-columns:

        repeat(auto-fit,minmax(270px,1fr));

    gap:28px;

}


/* ===========================================================
    CARD
=========================================================== */

.produto{

    background:white;

    border-radius:18px;

    overflow:hidden;

    box-shadow:

        0 10px 18px rgba(0,0,0,.08);

    transition:.25s;

    display:flex;

    flex-direction:column;

}

.produto:hover{

    transform:translateY(-6px);

    box-shadow:

        0 18px 35px rgba(0,0,0,.18);

}


/* ===========================================================
    IMAGEM
=========================================================== */

.produto img{

    width:100%;

    height:190px;

    object-fit:cover;

}


/* ===========================================================
    CONTEÚDO
=========================================================== */

.produto h3{

    margin-top:18px;

    text-align:center;

    font-size:1.6rem;

    color:#2F2F2F;

}

.produto h4{

    margin-top:10px;

    text-align:center;

    color:#E85D04;

    font-size:2rem;

}


/* ===========================================================
    QUANTIDADE
=========================================================== */

.produto .quantidade{

    margin:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

}

.produto label{

    font-weight:600;

}

.produto input{

    width:70px;

    height:38px;

    border:none;

    border-radius:20px;

    background:#00897B;

    color:white;

    text-align:center;

    font-size:1rem;

}


/* ===========================================================
    BOTÃO DO CARD
=========================================================== */

.produto button{

    margin:20px;

    margin-top:auto;

    padding:14px;

    border-radius:10px;

    background:#F35C38;

    color:white;

    font-size:1rem;

}

.produto button:hover{

    background:#FF734F;

}


/* ===========================================================
    RESPONSIVO
=========================================================== */

@media(max-width:900px){

    header{

        flex-direction:column;

        gap:20px;

        text-align:center;

        padding:30px;

    }

    .hero{

        padding:30px 15px;

    }

}

@media(max-width:600px){

    .logo h1{

        font-size:1.6rem;

    }

    .hero h2{

        font-size:1.5rem;

    }

    #lista{

        width:95%;

        grid-template-columns:1fr;

    }

}

/* ===========================================================
    CARRINHO
=========================================================== */

.cart-page{

    width:min(900px,90%);

    margin:50px auto;

}

.cart-list{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.cart-item{

    background:white;

    border-radius:14px;

    padding:20px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    box-shadow:

        0 6px 18px rgba(0,0,0,.08);

}

.cart-info h3{

    margin-bottom:8px;

}

.cart-info p{

    color:#666;

}

.cart-actions{

    display:flex;

    align-items:center;

    gap:12px;

}

.cart-actions button{

    background:#d9534f;

    color:white;

    padding:10px 18px;

    border-radius:8px;

}

.cart-actions button:hover{

    background:#c9302c;

}

.cart-total{

    margin-top:30px;

    background:white;

    border-radius:14px;

    padding:30px;

    box-shadow:

        0 6px 18px rgba(0,0,0,.08);

}

.cart-total h2{

    margin-bottom:20px;

}

.btn-pay{

    width:100%;

    padding:18px;

    background:#2E7D32;

    color:white;

    font-size:1rem;

    border-radius:12px;

}

.btn-pay:hover{

    background:#388E3C;

}

.btn-pay:disabled{

    background:#999;

    cursor:not-allowed;

}